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
28{
29 unsigned int source_id;
30 int x;
31 int y;
32
34 : source_id(0), x(0), y(0)
35 {
36 }
37};
38
39#define PLATFORM_IMPORT __declspec(dllimport)
40#define PLATFORM_EXPORT __declspec(dllexport)
41#ifdef ZOOM_SDK_DLL_EXPORT
42#define SDK_API PLATFORM_EXPORT
43#elif defined ZOOM_SDK_DLL_IMPORT
44#define SDK_API PLATFORM_IMPORT
45#else
46#define SDK_API
47#endif
48
49#define ZOOM_SDK_NAMESPACE ZOOMSDK
50#define BEGIN_ZOOM_SDK_NAMESPACE namespace ZOOM_SDK_NAMESPACE {
51#define END_ZOOM_SDK_NAMESPACE };
52#define USING_ZOOM_SDK_NAMESPACE using namespace ZOOM_SDK_NAMESPACE;
53
140
152
195
206
207#if (defined WIN32 )
211typedef struct tagWndPosition
212{
214 int left;
216 int top;
218 HWND hSelfWnd;
220 HWND hParent;
221 tagWndPosition()
222 {
223 left = 0;
224 top = 0;
225 hSelfWnd = nullptr;
226 hParent = nullptr;
227 }
228}WndPosition;
229
233enum CustomizedLanguageType
234{
236 CustomizedLanguage_None,
238 CustomizedLanguage_FilePath,
240 CustomizedLanguage_Content,
241};
242
246typedef struct tagCustomizedLanguageInfo
247{
249 const char* langName;
251 const char* langInfo;
253 CustomizedLanguageType langType;
254 tagCustomizedLanguageInfo()
255 {
256 langName = nullptr;
257 langInfo = nullptr;
258 langType = CustomizedLanguage_None;
259 }
260
261}CustomizedLanguageInfo;
262
267#define ENABLE_CUSTOMIZED_UI_FLAG (1 << 5)
268
272enum SDK_APP_Locale
273{
274 SDK_APP_Locale_Default,
275 SDK_APP_Locale_CN,
276};
277
281enum ZoomSDKVideoRenderMode
282{
284 ZoomSDKVideoRenderMode_None = 0,
286 ZoomSDKVideoRenderMode_Auto,
288 ZoomSDKVideoRenderMode_D3D11EnableFLIP,
290 ZoomSDKVideoRenderMode_D3D11,
292 ZoomSDKVideoRenderMode_D3D9,
294 ZoomSDKVideoRenderMode_GDI,
295};
296
300enum ZoomSDKRenderPostProcessing
301{
303 ZoomSDKRenderPostProcessing_None = 0,
305 ZoomSDKRenderPostProcessing_Auto,
307 ZoomSDKRenderPostProcessing_Enable,
309 ZoomSDKRenderPostProcessing_Disable,
310};
311
315enum ZoomSDKVideoCaptureMethod
316{
318 ZoomSDKVideoCaptureMethod_None = 0,
320 ZoomSDKVideoCaptureMethod_Auto,
322 ZoomSDKVideoCaptureMethod_DirectSHow,
324 ZoomSDKVideoCaptureMethod_MediaFoundation,
325};
326
330typedef struct tagZoomSDKRenderOptions
331{
333 ZoomSDKVideoRenderMode videoRenderMode;
335 ZoomSDKRenderPostProcessing renderPostProcessing;
337 ZoomSDKVideoCaptureMethod videoCaptureMethod;
338 tagZoomSDKRenderOptions()
339 {
340 videoRenderMode = ZoomSDKVideoRenderMode_None;
341 renderPostProcessing = ZoomSDKRenderPostProcessing_Auto;
342 videoCaptureMethod = ZoomSDKVideoCaptureMethod_Auto;
343 }
344}ZoomSDKRenderOptions;
345#endif
346
348{
349#if defined(WIN32)
351 CustomizedLanguageInfo customizedLang;
353 int optionalFeatures;
354#endif
361#if defined(__linux__)
362 bool create_qt_gui_application_if_needed;
363 unsigned int custom_video_device_index;
364#endif
365
367 {
368 #if defined(WIN32)
369 optionalFeatures = 0;
370 #endif
371 sdkPathPostfix = nullptr;
372#if defined(__linux__)
373 create_qt_gui_application_if_needed = false;
374 custom_video_device_index = 0;
375#endif
376 }
377
379
401
405typedef struct tagInitParam
406{
420 unsigned int uiLogFileSize;
425#if defined(WIN32)
427 void* hResInstance;
429 unsigned int uiWindowIconSmallID;
431 unsigned int uiWindowIconBigID;
433 SDK_APP_Locale locale;
435 ZoomSDKRenderOptions renderOpts;
437 bool permonitor_awareness_mode;
438#endif
441
443 {
444 strWebDomain = nullptr;
445 strBrandingName = nullptr;
446 strSupportUrl = nullptr;
448 enableGenerateDump = false;
449 enableLogByDefault = false;
450 uiLogFileSize = 5;
451 wrapperType = 0;
452#if defined(WIN32)
453 hResInstance = (void*)-1;
454 uiWindowIconSmallID = 0;
455 uiWindowIconBigID = 0;
456 locale = SDK_APP_Locale_Default;
457 permonitor_awareness_mode = true;
458#endif
459 }
461
492
509
514{
515public:
520 virtual LastErrorType GetErrorType() const = 0 ;
525 virtual UINT64 GetErrorCode() const = 0;
526
531 virtual const zchar_t* GetErrorDescription() const = 0;
532 virtual ~IZoomLastError(){};
533};
534template<class T>
535class IList
536{
537public:
538 virtual ~IList(){};
539 virtual int GetCount() = 0;
540 virtual T GetItem(int index) = 0;
541 virtual void AddItem(T item) = 0;
542};
543#if (defined WIN32)
544#define SDK_NULL_AUDIO_FILE_HANDLE (0xffffffff)
545const RECT _SDK_TEST_VIDEO_INIT_RECT = {0,0,0,0};
546#endif
547
558
569
604
633
639 unsigned int red = 0;
641 unsigned int green = 0;
643 unsigned int blue = 0;
644};
645
657
680
681#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.
ZoomSDKSessionSource
Enumeration of the meeting session a feature binds to.
@ SessionSource_CurrentSession
@ SessionSource_MainSession
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_CLIPS
@ 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_SEND_TOO_MUCH_DATA_IN_SINGLE_TIME
@ 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