C++SDK  1.0.0
mannotation.h
浏览该文件的文档.
1 #ifndef RT_Annotation_H_
2 #define RT_Annotation_H_
3 
4 #include "common.h"
5 #include "room.h"
6 #include "annotationobject.h"
7 
8 namespace rtcimp {
9  class AnnotationObject;
10 }
11 namespace cricket {
12  class VideoCapturer;
13 }
14 
15 namespace tee3 {
16  namespace avd {
17  class IVideoRender;
18  class IMAnnotation;
20  public:
21  static IToolbar* create();
22  virtual Result setAnnotation(IMAnnotation* atn) = 0;
23  virtual Result getExcludeWindows(WindowIds& windowFilter) = 0;
24  virtual Result setPosition(int x, int y) = 0;
25  };
26 
28  public:
29 
30  static IMAnnotation* create(bool defaultToolbar = true,bool isboardCreator = true);
31  static void destoryAnnotaion(IMAnnotation* annotaion);
32  static bool isSupported(AnnotationToolType type);
33  //virtual bool SetAnnotationCapture(IAnnotationCapture* capture) = 0;
34  virtual void SetBoardId(const String& boradId) = 0;
35  virtual BoardId GetBoarId() = 0;
36  virtual Result start() = 0;
37  virtual Result stop() = 0;
38  virtual WindowId CreateWhiteBoardWnd(int x, int y, int w, int h, WindowId parentId) = 0;
39  virtual void SetBkground(rtcimp::Color color) = 0;
40  virtual Result setApplicationWindow(const WindowId& id, bool isWhiteboard) = 0;
41  virtual Result setZoomMode(bool isZoom = false) = 0;
42  virtual Result setDesktop(const DesktopId& id) = 0;
43  virtual Result setCurrentType(AnnotationToolType type) = 0;
44  virtual Result setLineWidth(int width) = 0;
45  virtual Result setLineArrow(LineArrowType arrow) = 0;
46  virtual Result setLineColor(uint8 r, uint8 g, uint8 b, uint8 a) = 0;
47  virtual Result setFillColor(uint8 r, uint8 g, uint8 b, uint8 a) = 0;
48  virtual Result undo() = 0;
49  virtual Result redo() = 0;
50  virtual Result save() = 0;
51  virtual Result clear(ClearType type) = 0;
52 
53  //infos
54  virtual AnnotationId annotationId() = 0;
55  virtual void setAnnotationId(const AnnotationId& id) = 0;
56  virtual UserId ownerUserId() = 0;
57  virtual void setOwnerUserId(const UserId& id) = 0;
58  virtual bool isMine() = 0;
59 
60  //rect
61  virtual void setAnnotationSize(int width, int height) = 0;
62  virtual void setVideoRender(IVideoRender* render) = 0;
63  virtual Result OnWhiteBoardClosed() = 0;
64  virtual void OnSaveBmpResult(Result ret, std::string msg) = 0;
65  //window
66  //virtual void messgeWindowId() = 0;
67  //virtual void displayWindowId() = 0;
68  //virtual void drawWindowId() = 0;
69  virtual Result getMessageWindowId(WindowId& winId) = 0;
70  virtual Result getDisplayWindowId(WindowId& winId) = 0;
71  virtual IToolbar* getToolbar() = 0;
72  virtual ~IMAnnotation() {}
73 
74 
75  };
76 
77  }
78 }
79 #endif
Definition: mannotation.h:11
DeviceId AnnotationId
Definition: common.h:17
std::vector< WindowId > WindowIds
Definition: common.h:439
String BoardId
Definition: common.h:18
NAMESPACE_TEE3_BEGIN typedef std::string String
Definition: common.h:10
String UserId
Definition: common.h:13
int Result
Definition: combase.h:13
#define RT_API_EXPORT
Definition: defines.h:188
Definition: mannotation.h:19
Definition: room.h:366
virtual ~IMAnnotation()
Definition: mannotation.h:72
Definition: videorender.h:85
ClearType
Definition: common.h:506
Definition: annotationbasedefines.h:41
Definition: annotationbasedefines.h:7
Definition: common.h:399
Definition: common.h:440
LineArrowType
Definition: common.h:499
unsigned char uint8
Definition: defines.h:397
Definition: audiocapture.h:5
AnnotationToolType
Definition: common.h:482
Definition: mannotation.h:27