Files
wnmj/IM_SDK/include/IMSDK.h

95 lines
1.9 KiB
C
Raw Normal View History

2026-02-13 14:34:15 +08:00
#ifndef _IMSDK_H__
#define _IMSDK_H__
#include "yvpacket_sdk.h"
#ifdef _MSC_VER
#ifdef _YVIM_EXPORTS
#define YVIM_API extern "C" __declspec(dllexport)
#else
#define YVIM_API /*__declspec(dllimport)*/
#endif
#else
#define YVIM_API //extern "C"
#define _stdcall
#endif
#define YV_RET_SUCC 0 //成功
#define YV_RET_FAIL -1 //失败
enum CmdChannel {
IM_LOGIN = 1,
IM_FRIEND = 2,
IM_GROUPS = 3,
IM_CHAT = 4,
IM_CLOUND = 5,
IM_CHANNEL = 6,
IM_TROOPS = 7,
IM_LBS = 8,
IM_TOOLS = 9,
IM_LIVE = 10,
IM_TROOPSU = 11,
IM_AVRECORD = 12,
};
#ifdef __cplusplus
extern "C" {
#endif
typedef void (_stdcall *YVCallBack)(enum CmdChannel type, unsigned int cmdid, YV_PARSER parser, unsigned long context);
//初始化
/*
* callback:
* context
* appid cp appid
* dbpath
* test true为测试环境
* oversea true海外版本false国内版本
* 0-1
*/
YVIM_API int YVIM_Init(YVCallBack callback, unsigned long context, unsigned int appid, const char* path, bool test, bool oversea = 0);
//释放
YVIM_API void YVIM_Release();
//发送命令
/*
* type: ID CmdChannel枚举
* cmdid
* parser
* 0-1
*/
YVIM_API int YVIM_SendCmd(enum CmdChannel type, unsigned int cmdid, YV_PARSER parser);
//设置回调方式
/*
*线
*main: true 线 false 线
*/
YVIM_API void YVIM_SetCallBackMode(bool mode);
//添加回调
YVIM_API void YVIM_SetCallBack(YVCallBack callback, unsigned long context);
//设置显示窗口
YVIM_API int YVIM_SetShowSurface(int width, int height, void* h);
//设置屏幕分辨率
YVIM_API void YVIM_SetScreenDpi(int width, int height);
#ifdef __cplusplus
}
#endif
#endif