fast-yolo4/fast/PlayApi.h
2024-09-25 09:43:03 +08:00

84 lines
2.4 KiB
C++

#ifndef _PLAYAPI_HEAD_
#define _PLAYAPI_HEAD_
//////////////////////////////////////////////////////////////////////////
// PlaySDK API
/*
PLAY_OpenStream()
PLAY_SetIVSCallBack()
PLAY_RigisterDrawFun()
PLAY_Play()
PLAY_InputData()
PLAY_QueryInfo()
PLAY_Stop()
PLAY_CloseStream()
PLAY_API_GetLastError()
*/
typedef void (__stdcall *GetIVSInfoCallbackFunc)(char* buf, long type, long len, long reallen, void* reserved, void* nUser);
typedef void (CALLBACK *DrawFun)(long nPort,HDC hDc,LONG nUser);
typedef BOOL (__stdcall *PLAY_API_OPENSTREAM)(LONG nPort, PBYTE pFileHeadBuf, DWORD nSize, DWORD nBufPoolSize);
typedef BOOL (__stdcall *PLAY_API_SETIVSCALLBACK)(LONG nPort, GetIVSInfoCallbackFunc pFunc, void* pUserData);
typedef BOOL (__stdcall *PLAY_API_RIGISTERDRAWFUN)(LONG nPort, DrawFun DrawFuncb, void* pUserData);
typedef BOOL (__stdcall *PLAY_API_PLAY)(LONG nPort, HWND hWnd);
typedef BOOL (__stdcall *PLAY_API_INPUTDATA)(LONG nPort, PBYTE pBuf, DWORD nSize);
typedef BOOL (__stdcall *PLAY_API_QUERYINFO)(LONG nPort , int cmdType, char* buf, int buflen, int* returnlen);
typedef BOOL (__stdcall *PLAY_API_STOP)(LONG nPort);
typedef BOOL (__stdcall *PLAY_API_CLOSESTREAM)(LONG nPort);
typedef BOOL (__stdcall *PLAY_API_GetLastError)(LONG nPort);
class CPlayAPI
{
public:
CPlayAPI();
virtual ~CPlayAPI();
public:
void LoadPlayDll();
// PLAY_OpenStream
BOOL PLAY_OpenStream(LONG nPort, PBYTE pFileHeadBuf, DWORD nSize, DWORD nBufPoolSize);
// PLAY_SetIVSCallBack
BOOL PLAY_SetIVSCallBack(LONG nPort, GetIVSInfoCallbackFunc pFunc, void* pUserData);
// PLAY_RigisterDrawFun
BOOL PLAY_RigisterDrawFun(LONG nPort, DrawFun DrawFuncb, void* pUserData);
// PLAY_Play
BOOL PLAY_Play(LONG nPort, HWND hWnd);
// PLAY_InputData
BOOL PLAY_InputData(LONG nPort, PBYTE pBuf, DWORD nSize);
// PLAY_QueryInfo
BOOL PLAY_QueryInfo(LONG nPort , int cmdType, char* buf, int buflen, int* returnlen);
// PLAY_Stop
BOOL PLAY_Stop(LONG nPort);
// PLAY_CloseStream
BOOL PLAY_CloseStream(LONG nPort);
// PLAY_GetLastError
DWORD PLAY_GetLastError(LONG nPort);
private:
HMODULE m_hModule;
PLAY_API_OPENSTREAM m_APIOpenStream;
PLAY_API_SETIVSCALLBACK m_APISetDisplayCallBack;
PLAY_API_RIGISTERDRAWFUN m_APIRigisterDrawFun;
PLAY_API_PLAY m_APIPlay;
PLAY_API_INPUTDATA m_APIInputData;
PLAY_API_QUERYINFO m_APIQueryInfo;
PLAY_API_STOP m_APIStop;
PLAY_API_CLOSESTREAM m_APICloseStream;
PLAY_API_GetLastError m_APIGetLastError;
};
#endif