Agora C++ API Reference for All Platforms
Public Types | Public Member Functions | List of all members
agora::rtc::IScreenCapturerEx Class Referenceabstract

Inherits agora::rtc::IScreenCapturer.

Public Types

enum  SCREEN_CAPTURER_STATE { SCREEN_CAPTURER_STARTED, SCREEN_CAPTURER_STOPPED }
 

Public Member Functions

virtual ~IScreenCapturerEx ()
 
virtual int StartCapture ()=0
 
virtual int StopCapture ()=0
 
virtual void RegisterCaptureDataCallback (std::weak_ptr<::rtc::VideoSinkInterface< webrtc::VideoFrame >> dataCallback)=0
 
virtual int CaptureMouseCursor (bool capture)=0
 
virtual int GetScreenDimensions (VideoDimensions &dimension)=0
 
virtual int SetOutputDimensions (VideoDimensions dimension)
 
virtual int SetContentType (agora::VideoContentSubType type)
 
virtual bool FocusOnSelectedSource ()=0
 
virtual void SetHighLight (bool isHighLight, unsigned int color, int width)
 
virtual int InitUsingLastRegionSetting ()
 
virtual void SetCaptureSource (bool allow_magnification_api, bool allow_directx_capturer)
 
virtual void GetCaptureSource (bool &allow_magnification_api, bool &allow_directx_capturer)
 
virtual void ForcedUsingScreenCapture (bool using_screen_capture)
 
virtual void SetExcludeWindowList (const std::vector< void * > &window_list)=0
 
virtual webrtc::DesktopCapturer::SourceId GetSourceId ()=0
 
virtual int GetCaptureType ()=0
 
virtual int registerScreenCaptureObserver (IScreenCaptureObserver *observer)
 
virtual int unregisterScreenCaptureObserver (IScreenCaptureObserver *observer)
 
virtual void * getScreenCaptureSources (int thumb_cx, int thumb_cy, int icon_cx, int icon_cy, bool include_screen)
 
virtual void deinit ()
 
virtual void attachStatsSpace (uint64_t stats_space)
 
- Public Member Functions inherited from agora::rtc::IScreenCapturer
virtual int initWithDisplayId (uint32_t displayId, const Rectangle &regionRect)=0
 
virtual int initWithScreenRect (const Rectangle &screenRect, const Rectangle &regionRect)=0
 
virtual int initWithWindowId (view_t windowId, const Rectangle &regionRect)=0
 
virtual int setContentHint (VIDEO_CONTENT_HINT contentHint)=0
 
virtual int updateScreenCaptureRegion (const Rectangle &regionRect)=0
 
virtual void setScreenOrientation (VIDEO_ORIENTATION orientation)=0
 
virtual void setFrameRate (int rate)=0
 
virtual int initWithMediaProjectionPermissionResultData (void *data, const VideoDimensions &dimensions)=0
 
- Public Member Functions inherited from agora::RefCountInterface
virtual void AddRef () const =0
 
virtual RefCountReleaseStatus Release () const =0
 
virtual bool HasOneRef () const =0
 

Additional Inherited Members

- Protected Member Functions inherited from agora::rtc::IScreenCapturer
 ~IScreenCapturer ()
 
- Protected Member Functions inherited from agora::RefCountInterface
virtual ~RefCountInterface ()
 

Member Enumeration Documentation

◆ SCREEN_CAPTURER_STATE

Enumerator
SCREEN_CAPTURER_STARTED 
SCREEN_CAPTURER_STOPPED 

Constructor & Destructor Documentation

◆ ~IScreenCapturerEx()

virtual agora::rtc::IScreenCapturerEx::~IScreenCapturerEx ( )
inlinevirtual

Member Function Documentation

◆ StartCapture()

virtual int agora::rtc::IScreenCapturerEx::StartCapture ( )
pure virtual

◆ StopCapture()

virtual int agora::rtc::IScreenCapturerEx::StopCapture ( )
pure virtual

◆ RegisterCaptureDataCallback()

virtual void agora::rtc::IScreenCapturerEx::RegisterCaptureDataCallback ( std::weak_ptr<::rtc::VideoSinkInterface< webrtc::VideoFrame >>  dataCallback)
pure virtual

◆ CaptureMouseCursor()

virtual int agora::rtc::IScreenCapturerEx::CaptureMouseCursor ( bool  capture)
pure virtual

◆ GetScreenDimensions()

virtual int agora::rtc::IScreenCapturerEx::GetScreenDimensions ( VideoDimensions dimension)
pure virtual

◆ SetOutputDimensions()

virtual int agora::rtc::IScreenCapturerEx::SetOutputDimensions ( VideoDimensions  dimension)
inlinevirtual

◆ SetContentType()

virtual int agora::rtc::IScreenCapturerEx::SetContentType ( agora::VideoContentSubType  type)
inlinevirtual

◆ FocusOnSelectedSource()

virtual bool agora::rtc::IScreenCapturerEx::FocusOnSelectedSource ( )
pure virtual

◆ SetHighLight()

virtual void agora::rtc::IScreenCapturerEx::SetHighLight ( bool  isHighLight,
unsigned int  color,
int  width 
)
inlinevirtual

◆ InitUsingLastRegionSetting()

virtual int agora::rtc::IScreenCapturerEx::InitUsingLastRegionSetting ( )
inlinevirtual

◆ SetCaptureSource()

virtual void agora::rtc::IScreenCapturerEx::SetCaptureSource ( bool  allow_magnification_api,
bool  allow_directx_capturer 
)
inlinevirtual

◆ GetCaptureSource()

virtual void agora::rtc::IScreenCapturerEx::GetCaptureSource ( bool &  allow_magnification_api,
bool &  allow_directx_capturer 
)
inlinevirtual

◆ ForcedUsingScreenCapture()

virtual void agora::rtc::IScreenCapturerEx::ForcedUsingScreenCapture ( bool  using_screen_capture)
inlinevirtual

◆ SetExcludeWindowList()

virtual void agora::rtc::IScreenCapturerEx::SetExcludeWindowList ( const std::vector< void * > &  window_list)
pure virtual

◆ GetSourceId()

virtual webrtc::DesktopCapturer::SourceId agora::rtc::IScreenCapturerEx::GetSourceId ( )
pure virtual

◆ GetCaptureType()

virtual int agora::rtc::IScreenCapturerEx::GetCaptureType ( )
pure virtual

◆ registerScreenCaptureObserver()

virtual int agora::rtc::IScreenCapturerEx::registerScreenCaptureObserver ( IScreenCaptureObserver observer)
inlinevirtual

◆ unregisterScreenCaptureObserver()

virtual int agora::rtc::IScreenCapturerEx::unregisterScreenCaptureObserver ( IScreenCaptureObserver observer)
inlinevirtual

◆ getScreenCaptureSources()

virtual void* agora::rtc::IScreenCapturerEx::getScreenCaptureSources ( int  thumb_cx,
int  thumb_cy,
int  icon_cx,
int  icon_cy,
bool  include_screen 
)
inlinevirtual

◆ deinit()

virtual void agora::rtc::IScreenCapturerEx::deinit ( )
inlinevirtual

◆ attachStatsSpace()

virtual void agora::rtc::IScreenCapturerEx::attachStatsSpace ( uint64_t  stats_space)
inlinevirtual