Meeting SDK for Linux 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
120
163
174
175#if (defined WIN32 )
179typedef struct tagWndPosition
180{
182 int left;
184 int top;
186 HWND hSelfWnd;
188 HWND hParent;
189 tagWndPosition()
190 {
191 left = 0;
192 top = 0;
193 hSelfWnd = nullptr;
194 hParent = nullptr;
195 }
196}WndPosition;
197
201enum CustomizedLanguageType
202{
204 CustomizedLanguage_None,
206 CustomizedLanguage_FilePath,
208 CustomizedLanguage_Content,
209};
210
214typedef struct tagCustomizedLanguageInfo
215{
217 const char* langName;
219 const char* langInfo;
221 CustomizedLanguageType langType;
222 tagCustomizedLanguageInfo()
223 {
224 langName = nullptr;
225 langInfo = nullptr;
226 langType = CustomizedLanguage_None;
227 }
228
229}CustomizedLanguageInfo;
230
235#define ENABLE_CUSTOMIZED_UI_FLAG (1 << 5)
236
240enum SDK_APP_Locale
241{
242 SDK_APP_Locale_Default,
243 SDK_APP_Locale_CN,
244};
245
249enum ZoomSDKVideoRenderMode
250{
252 ZoomSDKVideoRenderMode_None = 0,
254 ZoomSDKVideoRenderMode_Auto,
256 ZoomSDKVideoRenderMode_D3D11EnableFLIP,
258 ZoomSDKVideoRenderMode_D3D11,
260 ZoomSDKVideoRenderMode_D3D9,
262 ZoomSDKVideoRenderMode_GDI,
263};
264
268enum ZoomSDKRenderPostProcessing
269{
271 ZoomSDKRenderPostProcessing_None = 0,
273 ZoomSDKRenderPostProcessing_Auto,
275 ZoomSDKRenderPostProcessing_Enable,
277 ZoomSDKRenderPostProcessing_Disable,
278};
279
283enum ZoomSDKVideoCaptureMethod
284{
286 ZoomSDKVideoCaptureMethod_None = 0,
288 ZoomSDKVideoCaptureMethod_Auto,
290 ZoomSDKVideoCaptureMethod_DirectSHow,
292 ZoomSDKVideoCaptureMethod_MediaFoundation,
293};
294
298typedef struct tagZoomSDKRenderOptions
299{
301 ZoomSDKVideoRenderMode videoRenderMode;
303 ZoomSDKRenderPostProcessing renderPostProcessing;
305 ZoomSDKVideoCaptureMethod videoCaptureMethod;
306 tagZoomSDKRenderOptions()
307 {
308 videoRenderMode = ZoomSDKVideoRenderMode_None;
309 renderPostProcessing = ZoomSDKRenderPostProcessing_Auto;
310 videoCaptureMethod = ZoomSDKVideoCaptureMethod_Auto;
311 }
312}ZoomSDKRenderOptions;
313#endif
314
316{
317#if defined(WIN32)
319 CustomizedLanguageInfo customizedLang;
321 int optionalFeatures;
322#endif
325 {
326 #if defined(WIN32)
327 optionalFeatures = 0;
328 #endif
329 sdkPathPostfix = nullptr;
330 }
331
333
355
359typedef struct tagInitParam
360{
374 unsigned int uiLogFileSize;
379#if defined(WIN32)
381 void* hResInstance;
383 unsigned int uiWindowIconSmallID;
385 unsigned int uiWindowIconBigID;
387 SDK_APP_Locale locale;
389 ZoomSDKRenderOptions renderOpts;
391 bool permonitor_awareness_mode;
392#endif
396 {
397 strWebDomain = nullptr;
398 strBrandingName = nullptr;
399 strSupportUrl = nullptr;
401 enableGenerateDump = false;
402 enableLogByDefault = false;
403 uiLogFileSize = 5;
404 wrapperType = 0;
405#if defined(WIN32)
406 hResInstance = (void*)-1;
407 uiWindowIconSmallID = 0;
408 uiWindowIconBigID = 0;
409 locale = SDK_APP_Locale_Default;
410 permonitor_awareness_mode = true;
411#endif
412 }
414
443
460
465{
466public:
471 virtual LastErrorType GetErrorType() const = 0 ;
476 virtual UINT64 GetErrorCode() const = 0;
477
482 virtual const zchar_t* GetErrorDescription() const = 0;
483 virtual ~IZoomLastError(){};
484};
485template<class T>
486class IList
487{
488public:
489 virtual ~IList(){};
490 virtual int GetCount() = 0;
491 virtual T GetItem(int index) = 0;
492 virtual void AddItem(T item) = 0;
493};
494#if (defined WIN32)
495#define SDK_NULL_AUDIO_FILE_HANDLE (0xffffffff)
496const RECT _SDK_TEST_VIDEO_INIT_RECT = {0,0,0,0};
497#endif
498
509
520
555
584
590 unsigned int red = 0;
592 unsigned int green = 0;
594 unsigned int blue = 0;
595};
596
608
631
632#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
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
const zchar_t * sdkPathPostfix
Asset information.
GrantCoOwnerAssetsType assetType
Initialize the SDK Parameter.
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
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
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_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