#define PLAYBACKENGINE_API __declspec(dllimport)
class PLAYBACKENGINE_API CPlaybackEngine
{
public:
//First of all, caller MUST call Initialize
//in one process, this should be called only once
static int Initialize(const char *pParam);
static void UnInitialize();
//Create Playback Engine using Singleton Pattern
//Directly create is prohibited
static CPlaybackEngine *getInstance(int nIndex = 0);
static void releaseInstance(int nIndex = 0); //parameter setting
int EnableDDraw(bool bEnable, HWND hwnd);
int SetDisplayHDC(HDC hdc);
int SetDisplayRange(int x, int y, int nWidth, int nHeight);
int SetVideoAutoScale(bool bAutoScale);
int SetLantencyTime(int nMilliSeconds);
//load will enter loaded state,
//unload will return to init state
int Load();
int Unload(); int SetMode(enum MP_ENG_MODE mode);上面是C++类的头文件。C++例子中的调用代码如下:
pPlayer = CPlaybackEngine::getInstance();
pPlayer->SetMode(MP_MODE_SERV_PROXY);
pPlayer->SetCallbackFunc(myEventCallBack, this);
pPlayer->Load();
pPlayer->Start();C#应该怎么实时C++例子的那段代码?求高手指点
特别是C++代码中 pPlayer = CPlaybackEngine::getInstance();在C#中应该怎么写?
class PLAYBACKENGINE_API CPlaybackEngine
{
public:
//First of all, caller MUST call Initialize
//in one process, this should be called only once
static int Initialize(const char *pParam);
static void UnInitialize();
//Create Playback Engine using Singleton Pattern
//Directly create is prohibited
static CPlaybackEngine *getInstance(int nIndex = 0);
static void releaseInstance(int nIndex = 0); //parameter setting
int EnableDDraw(bool bEnable, HWND hwnd);
int SetDisplayHDC(HDC hdc);
int SetDisplayRange(int x, int y, int nWidth, int nHeight);
int SetVideoAutoScale(bool bAutoScale);
int SetLantencyTime(int nMilliSeconds);
//load will enter loaded state,
//unload will return to init state
int Load();
int Unload(); int SetMode(enum MP_ENG_MODE mode);上面是C++类的头文件。C++例子中的调用代码如下:
pPlayer = CPlaybackEngine::getInstance();
pPlayer->SetMode(MP_MODE_SERV_PROXY);
pPlayer->SetCallbackFunc(myEventCallBack, this);
pPlayer->Load();
pPlayer->Start();C#应该怎么实时C++例子的那段代码?求高手指点
特别是C++代码中 pPlayer = CPlaybackEngine::getInstance();在C#中应该怎么写?
实例化后可以用pPlayer ,但是在C#中只能得到一个IntPtr,在接下来 pPlayer->SetMode(MP_MODE_SERV_PROXY);又不能把这个IntPtr作为参数输入。不知道应该怎么使用了?
public static extern int yourFunction();