6#ifndef _ZOOM_SDK_DEF_H_
7#define _ZOOM_SDK_DEF_H_
11#define TLS_KEY_DEF uint32_t
22#define TLS_KEY_DEF pthread_key_t
24#define PLATFORM_IMPORT __declspec(dllimport)
25#define PLATFORM_EXPORT __declspec(dllexport)
26#ifdef ZOOM_SDK_DLL_EXPORT
27#define SDK_API PLATFORM_EXPORT
28#elif defined ZOOM_SDK_DLL_IMPORT
29#define SDK_API PLATFORM_IMPORT
34#define ZOOM_SDK_NAMESPACE ZOOMSDK
35#define BEGIN_ZOOM_SDK_NAMESPACE namespace ZOOM_SDK_NAMESPACE {
36#define END_ZOOM_SDK_NAMESPACE };
37#define USING_ZOOM_SDK_NAMESPACE using namespace ZOOM_SDK_NAMESPACE;
180typedef struct tagWndPosition
202enum CustomizedLanguageType
205 CustomizedLanguage_None,
207 CustomizedLanguage_FilePath,
209 CustomizedLanguage_Content,
215typedef struct tagCustomizedLanguageInfo
218 const char* langName;
220 const char* langInfo;
222 CustomizedLanguageType langType;
223 tagCustomizedLanguageInfo()
227 langType = CustomizedLanguage_None;
230}CustomizedLanguageInfo;
236#define ENABLE_CUSTOMIZED_UI_FLAG (1 << 5)
237typedef struct tagConfigurableOptions
240 CustomizedLanguageInfo customizedLang;
242 int optionalFeatures;
244 tagConfigurableOptions()
246 optionalFeatures = 0;
247 sdkPathPostfix =
nullptr;
257 SDK_APP_Locale_Default,
264enum ZoomSDKVideoRenderMode
267 ZoomSDKVideoRenderMode_None = 0,
269 ZoomSDKVideoRenderMode_Auto,
271 ZoomSDKVideoRenderMode_D3D11EnableFLIP,
273 ZoomSDKVideoRenderMode_D3D11,
275 ZoomSDKVideoRenderMode_D3D9,
277 ZoomSDKVideoRenderMode_GDI,
283enum ZoomSDKRenderPostProcessing
286 ZoomSDKRenderPostProcessing_None = 0,
288 ZoomSDKRenderPostProcessing_Auto,
290 ZoomSDKRenderPostProcessing_Enable,
292 ZoomSDKRenderPostProcessing_Disable,
298enum ZoomSDKVideoCaptureMethod
301 ZoomSDKVideoCaptureMethod_None = 0,
303 ZoomSDKVideoCaptureMethod_Auto,
305 ZoomSDKVideoCaptureMethod_DirectSHow,
307 ZoomSDKVideoCaptureMethod_MediaFoundation,
313typedef struct tagZoomSDKRenderOptions
316 ZoomSDKVideoRenderMode videoRenderMode;
318 ZoomSDKRenderPostProcessing renderPostProcessing;
320 ZoomSDKVideoCaptureMethod videoCaptureMethod;
321 tagZoomSDKRenderOptions()
323 videoRenderMode = ZoomSDKVideoRenderMode_None;
324 renderPostProcessing = ZoomSDKRenderPostProcessing_Auto;
325 videoCaptureMethod = ZoomSDKVideoCaptureMethod_Auto;
327}ZoomSDKRenderOptions;
377 unsigned int uiWindowIconSmallID;
379 unsigned int uiWindowIconBigID;
381 ConfigurableOptions obConfigOpts;
383 SDK_APP_Locale locale;
385 ZoomSDKRenderOptions renderOpts;
387 bool permonitor_awareness_mode;
402 hResInstance = (
void*)-1;
403 uiWindowIconSmallID = 0;
404 uiWindowIconBigID = 0;
405 locale = SDK_APP_Locale_Default;
406 permonitor_awareness_mode =
true;
490#define SDK_NULL_AUDIO_FILE_HANDLE (0xffffffff)
491const RECT _SDK_TEST_VIDEO_INIT_RECT = {0,0,0,0};
virtual T GetItem(int index)=0
Error mechanism interface provided by the SDK. This feature is gradually improved,...
virtual LastErrorType GetErrorType() const =0
Get the last error type.
virtual ~IZoomLastError()
virtual const zchar_t * GetErrorDescription() const =0
Get the description for the last error.
virtual UINT64 GetErrorCode() const =0
Get the last error code.
Zoom SDK color. The standard RGB color model has a value range of 0-255.
Initialize the SDK Parameter.
const zchar_t * strWebDomain
RawDataOptions rawdataOpts
SDK_LANGUAGE_ID emLanguageID
const zchar_t * strBrandingName
unsigned int uiLogFileSize
const zchar_t * strSupportUrl
ZoomSDKRawDataMemoryMode videoRawdataMemoryMode
ZoomSDKRawDataMemoryMode shareRawdataMemoryMode
ZoomSDKRawDataMemoryMode audioRawdataMemoryMode
bool enableRawdataIntermediateMode
struct tagRawDataOptions RawDataOptions
Rawdata options.
FrameDataFormat
Enumeration of video frame data format.
@ FrameDataFormat_I420_FULL
@ FrameDataFormat_I420_LIMITED
struct tagInitParam InitParam
Initialize the SDK Parameter.
LastErrorType
Enumeration of the last error types of the SDK.
CannotShareReasonType
Enumeration of reasons why sharing is not allowed.
@ CannotShareReasonType_Other_WB_Sharing
@ CannotShareReasonType_Other_Screen_Sharing
@ CannotShareReasonType_Need_Grab_DOCS_Sharing
@ CannotShareReasonType_Need_Grap_WB_Sharing
@ CannotShareReasonType_Locked
@ CannotShareReasonType_UnKnown
@ CannotShareReasonType_Other_DOCS_Sharing
@ CannotShareReasonType_Need_Grab_Other_Screen_Sharing
@ CannotShareReasonType_Need_Grab_Audio_Sharing
@ CannotShareReasonType_Need_Grab_Myself_Screen_Sharing
@ CannotShareReasonType_None
@ CannotShareReasonType_Reach_Maximum
@ CannotShareReasonType_Disabled
@ CannotShareReasonType_Have_Share_From_Mainsession
#define END_ZOOM_SDK_NAMESPACE
ZoomSDKAudioChannel
Enumeration of the audio modes.
@ ZoomSDKAudioChannel_Stereo
@ ZoomSDKAudioChannel_Mono
SDK_LANGUAGE_ID
Enumeration of the text resource type used by the SDK.
@ LANGUAGE_Chinese_Traditional
@ LANGUAGE_Chinese_Simplified
#define BEGIN_ZOOM_SDK_NAMESPACE
ShareType
Enumeration of types of shared content.
@ SHARE_TYPE_COMPUTER_AUDIO
ZoomSDKRawDataMemoryMode
Enumeration of memory modes for raw data handling.
@ ZoomSDKRawDataMemoryModeStack
@ ZoomSDKRawDataMemoryModeHeap
SDKError
Enumeration of common errors of SDK.
@ SDKERR_NO_AUDIODEVICE_ISFOUND
@ SDKERR_FILETRANSFER_ERROR
@ SDKERR_SETTING_OS_DONT_SUPPORT
@ SDKERR_HARDWARE_NOT_MEET_FOR_VB
@ SDKERR_TRANSCODER_NOFOUND
@ SDKERR_SHARE_CANNOT_SUBSCRIBE_MYSELF
@ SDKERR_NO_VIDEODEVICE_ISFOUND
@ SDKERR_EMAIL_LOGIN_IS_DISABLED
@ SDKERR_DOMAIN_DONT_SUPPORT
@ SDKERR_TOO_FREQUENT_CALL
@ SDKERR_NEED_USER_CONFIRM_RECORD_DISCLAIMER
@ SDKERR_INVALID_PARAMETER
@ SDKERR_NORECORDINGINPROCESS
@ SDKERR_UNAUTHENTICATION
@ SDKERR_FAIL_ASSIGN_USER_PRIVILEGE
@ SDKERR_MEETING_VIEWTYPE_PARAMETER_IS_WRONG
@ SDKERR_MODULE_LOAD_FAILED
@ SDKERR_MEETING_REMOTE_CONTROL_IS_OFF
@ SDKERR_MEETING_NOT_SHARE_SENDER
@ SDKERR_OTHER_SDK_INSTANCE_RUNNING
@ SDKERR_MEETING_ANNOTATION_IS_OFF
@ SDKERR_HARDWARE_DONT_SUPPORT
@ SDKERR_MEETING_DONT_SUPPORT_FEATURE
@ SDKERR_MEETING_YOU_HAVE_NO_SHARE
SharingStatus
Enumeration of sharing status.
@ Sharing_Other_Share_Pure_Audio_Begin
@ Sharing_Self_Send_Begin
@ Sharing_Self_Send_Pure_Audio_End
@ Sharing_View_Other_Sharing
@ Sharing_Self_Send_Pure_Audio_Begin
@ Sharing_Other_Share_Pure_Audio_End
@ Sharing_Other_Share_Begin
@ Sharing_Other_Share_End