Agora RTC Objective-C API Reference  Refactor
NGIAgoraScreenCapturer.h
Go to the documentation of this file.
1 //
2 // Agora SDK
3 //
4 // Copyright (c) 2019 Agora.io. All rights reserved.
5 //
6 
7 #pragma once // NOLINT(build/header_guard)
8 
9 #include "AgoraBase.h"
10 #include "AgoraRefPtr.h"
11 
12 namespace agora {
13 namespace rtc {
14 class IScreenCaptureObserver;
19  public:
20 #if (defined(TARGET_OS_MAC) && !TARGET_OS_IPHONE)
21 
38  virtual int initWithDisplayId(uint32_t displayId, const Rectangle& regionRect) = 0;
39 #elif defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__))
40 
57  virtual int initWithScreenRect(const Rectangle& screenRect,
58  const Rectangle& regionRect) = 0;
59 #endif // TARGET_OS_MAC && !TARGET_OS_IPHONE
60 
78  virtual int initWithWindowId(view_t windowId, const Rectangle& regionRect) = 0;
79 
91  virtual int setContentHint(VIDEO_CONTENT_HINT contentHint) = 0;
92 
103  virtual int updateScreenCaptureRegion(const Rectangle& regionRect) = 0;
104 
109  virtual void setScreenOrientation(VIDEO_ORIENTATION orientation) = 0;
110 
111 #if defined(__ANDROID__)
112 
128  virtual int initWithMediaProjectionPermissionResultData(void* data,
129  const VideoDimensions& dimensions) = 0;
130 #endif // __ANDROID__
131 
132  protected:
134 };
135 
136 } // namespace rtc
137 } // namespace agora
agora::rtc::IScreenCapturer::updateScreenCaptureRegion
virtual int updateScreenCaptureRegion(const Rectangle &regionRect)=0
AgoraBase.h
agora::rtc::Rectangle
Definition: AgoraBase.h:2054
agora::view_t
void * view_t
Definition: AgoraBase.h:1163
agora::rtc::IScreenCapturer::initWithWindowId
virtual int initWithWindowId(view_t windowId, const Rectangle &regionRect)=0
agora::rtc::VIDEO_CONTENT_HINT
VIDEO_CONTENT_HINT
Definition: AgoraBase.h:2618
agora::rtc::IScreenCapturer::~IScreenCapturer
~IScreenCapturer()
Definition: NGIAgoraScreenCapturer.h:133
agora
Definition: AgoraAtomicOps.h:21
agora::rtc::IScreenCapturer::setScreenOrientation
virtual void setScreenOrientation(VIDEO_ORIENTATION orientation)=0
agora::rtc::IScreenCapturer
Definition: NGIAgoraScreenCapturer.h:18
agora::rtc::VIDEO_ORIENTATION
VIDEO_ORIENTATION
Definition: AgoraBase.h:1293
AgoraRefPtr.h
agora::RefCountInterface
Definition: AgoraRefPtr.h:31
agora::rtc::VideoDimensions
Definition: AgoraBase.h:1432
agora::rtc::IScreenCapturer::setContentHint
virtual int setContentHint(VIDEO_CONTENT_HINT contentHint)=0