Meeting SDK for Linux API Reference
Loading...
Searching...
No Matches
zoom_sdk_def.h
Go to the documentation of this file.
1
6#ifndef _ZOOM_SDK_DEF_H_
7#define _ZOOM_SDK_DEF_H_
8#if defined(WIN32)
9#include <tchar.h>
10typedef wchar_t zchar_t;
11#define TLS_KEY_DEF uint32_t
12#else
13#include <stdint.h>
14#include <unistd.h>
15#include <cstring>
16#include <float.h>
17typedef char zchar_t;
18typedef uint64_t UINT64;
19typedef int64_t INT64;
20typedef float FLOAT;
21typedef void* HWND;
22#define TLS_KEY_DEF pthread_key_t
23#endif//#if defined(WIN32)
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
30#else
31#define SDK_API
32#endif
33
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;
38
121
164
175
176#if (defined WIN32 )
180typedef struct tagWndPosition
181{
183 int left;
185 int top;
187 HWND hSelfWnd;
189 HWND hParent;
190 tagWndPosition()
191 {
192 left = 0;
193 top = 0;
194 hSelfWnd = nullptr;
195 hParent = nullptr;
196 }
197}WndPosition;
198
202enum CustomizedLanguageType
203{
205 CustomizedLanguage_None,
207 CustomizedLanguage_FilePath,
209 CustomizedLanguage_Content,
210};
211
215typedef struct tagCustomizedLanguageInfo
216{
218 const char* langName;
220 const char* langInfo;
222 CustomizedLanguageType langType;
223 tagCustomizedLanguageInfo()
224 {
225 langName = nullptr;
226 langInfo = nullptr;
227 langType = CustomizedLanguage_None;
228 }
229
230}CustomizedLanguageInfo;
231
236#define ENABLE_CUSTOMIZED_UI_FLAG (1 << 5)
237typedef struct tagConfigurableOptions
238{
240 CustomizedLanguageInfo customizedLang;
242 int optionalFeatures;
243 const zchar_t* sdkPathPostfix;
244 tagConfigurableOptions()
245 {
246 optionalFeatures = 0;
247 sdkPathPostfix = nullptr;
248 }
249
250}ConfigurableOptions;
251
255enum SDK_APP_Locale
256{
257 SDK_APP_Locale_Default,
258 SDK_APP_Locale_CN,
259};
260
264enum ZoomSDKVideoRenderMode
265{
267 ZoomSDKVideoRenderMode_None = 0,
269 ZoomSDKVideoRenderMode_Auto,
271 ZoomSDKVideoRenderMode_D3D11EnableFLIP,
273 ZoomSDKVideoRenderMode_D3D11,
275 ZoomSDKVideoRenderMode_D3D9,
277 ZoomSDKVideoRenderMode_GDI,
278};
279
283enum ZoomSDKRenderPostProcessing
284{
286 ZoomSDKRenderPostProcessing_None = 0,
288 ZoomSDKRenderPostProcessing_Auto,
290 ZoomSDKRenderPostProcessing_Enable,
292 ZoomSDKRenderPostProcessing_Disable,
293};
294
298enum ZoomSDKVideoCaptureMethod
299{
301 ZoomSDKVideoCaptureMethod_None = 0,
303 ZoomSDKVideoCaptureMethod_Auto,
305 ZoomSDKVideoCaptureMethod_DirectSHow,
307 ZoomSDKVideoCaptureMethod_MediaFoundation,
308};
309
313typedef struct tagZoomSDKRenderOptions
314{
316 ZoomSDKVideoRenderMode videoRenderMode;
318 ZoomSDKRenderPostProcessing renderPostProcessing;
320 ZoomSDKVideoCaptureMethod videoCaptureMethod;
321 tagZoomSDKRenderOptions()
322 {
323 videoRenderMode = ZoomSDKVideoRenderMode_None;
324 renderPostProcessing = ZoomSDKRenderPostProcessing_Auto;
325 videoCaptureMethod = ZoomSDKVideoCaptureMethod_Auto;
326 }
327}ZoomSDKRenderOptions;
328#endif
329
351
355typedef struct tagInitParam
356{
370 unsigned int uiLogFileSize;
373#if defined(WIN32)
375 void* hResInstance;
377 unsigned int uiWindowIconSmallID;
379 unsigned int uiWindowIconBigID;
381 ConfigurableOptions obConfigOpts;
383 SDK_APP_Locale locale;
385 ZoomSDKRenderOptions renderOpts;
387 bool permonitor_awareness_mode;
388#endif
392 {
393 strWebDomain = nullptr;
394 strBrandingName = nullptr;
395 strSupportUrl = nullptr;
397 enableGenerateDump = false;
398 enableLogByDefault = false;
399 uiLogFileSize = 5;
400 wrapperType = 0;
401#if defined(WIN32)
402 hResInstance = (void*)-1;
403 uiWindowIconSmallID = 0;
404 uiWindowIconBigID = 0;
405 locale = SDK_APP_Locale_Default;
406 permonitor_awareness_mode = true;
407#endif
408 }
410
439
456
461{
462public:
467 virtual LastErrorType GetErrorType() const = 0 ;
472 virtual UINT64 GetErrorCode() const = 0;
473
478 virtual const zchar_t* GetErrorDescription() const = 0;
479 virtual ~IZoomLastError(){};
480};
481template<class T>
482class IList
483{
484public:
485 virtual ~IList(){};
486 virtual int GetCount() = 0;
487 virtual T GetItem(int index) = 0;
488};
489#if (defined WIN32)
490#define SDK_NULL_AUDIO_FILE_HANDLE (0xffffffff)
491const RECT _SDK_TEST_VIDEO_INIT_RECT = {0,0,0,0};
492#endif
493
504
515
550
579
585 unsigned int red = 0;
587 unsigned int green = 0;
589 unsigned int blue = 0;
590};
592
593#endif
virtual int GetCount()=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
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.
unsigned int blue
unsigned int green
unsigned int red
Initialize the SDK Parameter.
const zchar_t * strWebDomain
RawDataOptions rawdataOpts
SDK_LANGUAGE_ID emLanguageID
const zchar_t * strBrandingName
bool enableGenerateDump
bool enableLogByDefault
unsigned int uiLogFileSize
const zchar_t * strSupportUrl
Rawdata options.
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
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
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_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