Meeting SDK for Windows API Reference
Loading...
Searching...
No Matches
zoom_sdk_def.h
Go to the documentation of this file.
1
5#ifndef _ZOOM_SDK_DEF_H_
6#define _ZOOM_SDK_DEF_H_
7#if defined(WIN32)
8#include <tchar.h>
9typedef wchar_t zchar_t;
10#define TLS_KEY_DEF uint32_t
11#else
12#include <stdint.h>
13#include <unistd.h>
14#include <cstring>
15#include <float.h>
16typedef char zchar_t;
17typedef uint64_t UINT64;
18typedef int64_t INT64;
19typedef float FLOAT;
20typedef void* HWND;
21#define TLS_KEY_DEF pthread_key_t
22#endif//#if defined(WIN32)
23#define PLATFORM_IMPORT __declspec(dllimport)
24#define PLATFORM_EXPORT __declspec(dllexport)
25#ifdef ZOOM_SDK_DLL_EXPORT
26#define SDK_API PLATFORM_EXPORT
27#elif defined ZOOM_SDK_DLL_IMPORT
28#define SDK_API PLATFORM_IMPORT
29#else
30#define SDK_API
31#endif
32
33#define ZOOM_SDK_NAMESPACE ZOOMSDK
34#define BEGIN_ZOOM_SDK_NAMESPACE namespace ZOOM_SDK_NAMESPACE {
35#define END_ZOOM_SDK_NAMESPACE };
36#define USING_ZOOM_SDK_NAMESPACE using namespace ZOOM_SDK_NAMESPACE;
37
122
165
176
177#if (defined WIN32 )
181typedef struct tagWndPosition
182{
184 int left;
186 int top;
188 HWND hSelfWnd;
190 HWND hParent;
191 tagWndPosition()
192 {
193 left = 0;
194 top = 0;
195 hSelfWnd = nullptr;
196 hParent = nullptr;
197 }
198}WndPosition;
199
203enum CustomizedLanguageType
204{
206 CustomizedLanguage_None,
208 CustomizedLanguage_FilePath,
210 CustomizedLanguage_Content,
211};
212
216typedef struct tagCustomizedLanguageInfo
217{
219 const char* langName;
221 const char* langInfo;
223 CustomizedLanguageType langType;
224 tagCustomizedLanguageInfo()
225 {
226 langName = nullptr;
227 langInfo = nullptr;
228 langType = CustomizedLanguage_None;
229 }
230
231}CustomizedLanguageInfo;
232
237#define ENABLE_CUSTOMIZED_UI_FLAG (1 << 5)
238
242enum SDK_APP_Locale
243{
244 SDK_APP_Locale_Default,
245 SDK_APP_Locale_CN,
246};
247
251enum ZoomSDKVideoRenderMode
252{
254 ZoomSDKVideoRenderMode_None = 0,
256 ZoomSDKVideoRenderMode_Auto,
258 ZoomSDKVideoRenderMode_D3D11EnableFLIP,
260 ZoomSDKVideoRenderMode_D3D11,
262 ZoomSDKVideoRenderMode_D3D9,
264 ZoomSDKVideoRenderMode_GDI,
265};
266
270enum ZoomSDKRenderPostProcessing
271{
273 ZoomSDKRenderPostProcessing_None = 0,
275 ZoomSDKRenderPostProcessing_Auto,
277 ZoomSDKRenderPostProcessing_Enable,
279 ZoomSDKRenderPostProcessing_Disable,
280};
281
285enum ZoomSDKVideoCaptureMethod
286{
288 ZoomSDKVideoCaptureMethod_None = 0,
290 ZoomSDKVideoCaptureMethod_Auto,
292 ZoomSDKVideoCaptureMethod_DirectSHow,
294 ZoomSDKVideoCaptureMethod_MediaFoundation,
295};
296
300typedef struct tagZoomSDKRenderOptions
301{
303 ZoomSDKVideoRenderMode videoRenderMode;
305 ZoomSDKRenderPostProcessing renderPostProcessing;
307 ZoomSDKVideoCaptureMethod videoCaptureMethod;
308 tagZoomSDKRenderOptions()
309 {
310 videoRenderMode = ZoomSDKVideoRenderMode_None;
311 renderPostProcessing = ZoomSDKRenderPostProcessing_Auto;
312 videoCaptureMethod = ZoomSDKVideoCaptureMethod_Auto;
313 }
314}ZoomSDKRenderOptions;
315#endif
316
318{
319#if defined(WIN32)
321 CustomizedLanguageInfo customizedLang;
323 int optionalFeatures;
324#endif
327 {
328 #if defined(WIN32)
329 optionalFeatures = 0;
330 #endif
331 sdkPathPostfix = nullptr;
332 }
333
335
357
361typedef struct tagInitParam
362{
376 unsigned int uiLogFileSize;
381#if defined(WIN32)
383 void* hResInstance;
385 unsigned int uiWindowIconSmallID;
387 unsigned int uiWindowIconBigID;
389 SDK_APP_Locale locale;
391 ZoomSDKRenderOptions renderOpts;
393 bool permonitor_awareness_mode;
394#endif
398 {
399 strWebDomain = nullptr;
400 strBrandingName = nullptr;
401 strSupportUrl = nullptr;
403 enableGenerateDump = false;
404 enableLogByDefault = false;
405 uiLogFileSize = 5;
406 wrapperType = 0;
407#if defined(WIN32)
408 hResInstance = (void*)-1;
409 uiWindowIconSmallID = 0;
410 uiWindowIconBigID = 0;
411 locale = SDK_APP_Locale_Default;
412 permonitor_awareness_mode = true;
413#endif
414 }
416
445
462
467{
468public:
473 virtual LastErrorType GetErrorType() const = 0 ;
478 virtual UINT64 GetErrorCode() const = 0;
479
484 virtual const zchar_t* GetErrorDescription() const = 0;
485 virtual ~IZoomLastError(){};
486};
487template<class T>
488class IList
489{
490public:
491 virtual ~IList(){};
492 virtual int GetCount() = 0;
493 virtual T GetItem(int index) = 0;
494 virtual void AddItem(T item) = 0;
495};
496#if (defined WIN32)
497#define SDK_NULL_AUDIO_FILE_HANDLE (0xffffffff)
498const RECT _SDK_TEST_VIDEO_INIT_RECT = {0,0,0,0};
499#endif
500
511
522
557
586
592 unsigned int red = 0;
594 unsigned int green = 0;
596 unsigned int blue = 0;
597};
598
610
633
634#endif
virtual int GetCount()=0
virtual void AddItem(T item)=0
virtual ~IList()
virtual T GetItem(int index)=0
Error mechanism interface provided by the SDK. This feature is gradually improved,...
virtual LastErrorType GetErrorType() const =0
Gets the last error type.
virtual ~IZoomLastError()
virtual const zchar_t * GetErrorDescription() const =0
Gets the description for the last error.
virtual UINT64 GetErrorCode() const =0
Gets the last error code.
Zoom SDK color. The standard RGB color model has a value range of 0-255.
unsigned int blue
unsigned int green
unsigned int red
const zchar_t * sdkPathPostfix
GrantCoOwnerAssetsType assetType
const zchar_t * strWebDomain
RawDataOptions rawdataOpts
SDK_LANGUAGE_ID emLanguageID
const zchar_t * strBrandingName
bool enableGenerateDump
bool enableLogByDefault
ConfigurableOptions obConfigOpts
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.
int64_t INT64
LastErrorType
Enumeration of the last error types of the SDK.
@ LastErrorType_Auth
@ LastErrorType_Login
@ LastErrorType_System
@ LastErrorType_Meeting
@ LastErrorType_None
GrantCoOwnerAssetsType
Enumeration of asset type.
@ GrantCoOwnerAssetsType_CloudRecording
@ GrantCoOwnerAssetsType_None
@ GrantCoOwnerAssetsType_Summary
struct tagGrantCoOwnerAssetsInfo GrantCoOwnerAssetsInfo
Asset information.
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
void * HWND
#define END_ZOOM_SDK_NAMESPACE
ZoomSDKAudioChannel
Enumeration of the audio modes.
@ ZoomSDKAudioChannel_Stereo
@ ZoomSDKAudioChannel_Mono
float FLOAT
uint64_t UINT64
SDK_LANGUAGE_ID
Enumeration of the text resource type used by the SDK.
@ LANGUAGE_Russian
@ LANGUAGE_French
@ LANGUAGE_Chinese_Traditional
@ LANGUAGE_Spanish
@ LANGUAGE_Unknown
@ LANGUAGE_Dutch
@ LANGUAGE_Japanese
@ LANGUAGE_Vietnamese
@ LANGUAGE_Polish
@ LANGUAGE_English
@ LANGUAGE_Italian
@ LANGUAGE_Swedish
@ LANGUAGE_German
@ LANGUAGE_Portuguese
@ LANGUAGE_Indonesian
@ LANGUAGE_Chinese_Simplified
@ LANGUAGE_Korean
@ LANGUAGE_Turkish
#define BEGIN_ZOOM_SDK_NAMESPACE
char zchar_t
struct tagConfigurableOptions ConfigurableOptions
ShareType
Enumeration of types of shared content.
@ SHARE_TYPE_AIRHOST
@ SHARE_TYPE_DATA
@ SHARE_TYPE_FRAME
@ SHARE_TYPE_COMPUTER_AUDIO
@ SHARE_TYPE_DS
@ SHARE_TYPE_DOCUMENT
@ SHARE_TYPE_AS
@ SHARE_TYPE_UNKNOWN
@ SHARE_TYPE_VIDEO_FILE
@ SHARE_TYPE_CAMERA
@ SHARE_TYPE_WB
ZoomSDKRawDataMemoryMode
Enumeration of memory modes for raw data handling.
@ ZoomSDKRawDataMemoryModeStack
@ ZoomSDKRawDataMemoryModeHeap
SDKError
Enumeration of common errors of SDK.
@ SDKERR_UNINITIALIZE
@ SDKERR_NO_AUDIODEVICE_ISFOUND
@ SDKERR_NOT_IN_MEETING
@ SDKERR_SUCCESS
@ SDKERR_INTERNAL_ERROR
@ SDKERR_FILETRANSFER_ERROR
@ SDKERR_VIDEO_NOTREADY
@ SDKERR_SETTING_OS_DONT_SUPPORT
@ SDKERR_HARDWARE_NOT_MEET_FOR_VB
@ SDKERR_NO_PERMISSION
@ SDKERR_TRANSCODER_NOFOUND
@ SDKERR_UNKNOWN
@ SDKERR_BREAKOUT_ROOM_NOT_CREATED
@ SDKERR_MEMORY_FAILED
@ SDKERR_SHARE_CANNOT_SUBSCRIBE_MYSELF
@ SDKERR_NO_VIDEODEVICE_ISFOUND
@ SDKERR_EMAIL_LOGIN_IS_DISABLED
@ SDKERR_DOMAIN_DONT_SUPPORT
@ SDKERR_NO_SHARE_DATA
@ SDKERR_TOO_FREQUENT_CALL
@ SDKERR_NEED_USER_CONFIRM_RECORD_DISCLAIMER
@ SDKERR_INVALID_PARAMETER
@ SDKERR_NOT_JOIN_AUDIO
@ SDKERR_NO_IMPL
@ SDKERR_NORECORDINGINPROCESS
@ SDKERR_UNAUTHENTICATION
@ SDKERR_FAIL_ASSIGN_USER_PRIVILEGE
@ SDKERR_WRONG_USAGE
@ 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_SERVICE_FAILED
@ 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_Pause
@ Sharing_Resume
@ Sharing_Self_Send_End
@ Sharing_Other_Share_Begin
@ Sharing_Other_Share_End