NorMIT-nav  18.04
An IGT application
cxRemoteAPI.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXREMOTEAPI_H
12 #define CXREMOTEAPI_H
13 
14 #include <QObject>
15 #include "cxVisServices.h"
16 
17 #include "org_custusx_webserver_Export.h"
18 
19 namespace cx
20 {
21 typedef boost::shared_ptr<class RemoteAPI> RemoteAPIPtr;
22 typedef boost::shared_ptr<class LayoutVideoSource> LayoutVideoSourcePtr;
24 
29 class org_custusx_webserver_EXPORT RemoteAPI : public QObject
30 {
31  Q_OBJECT
32 public:
33  explicit RemoteAPI(VisServicesPtr services);
34 
35  QStringList getAvailableLayouts() const;
36  void createLayoutWidget(QSize size, QString layout);
37  void closeLayoutWidget();
38  LayoutVideoSourcePtr startStreaming();
39  QImage grabLayout();
40  QImage grabScreen();
41 
42  VisServicesPtr getServices() { return mServices; }
43 
44 private:
45  VisServicesPtr mServices;
46  ScreenVideoProvider* mScreenVideo;
47 };
48 
49 } // namespace cx
50 
51 
52 #endif // CXREMOTEAPI_H
boost::shared_ptr< class VisServices > VisServicesPtr
Definition: cxMainWindow.h:40
VisServicesPtr getServices()
Definition: cxRemoteAPI.h:42
boost::shared_ptr< class RemoteAPI > RemoteAPIPtr
boost::shared_ptr< class LayoutVideoSource > LayoutVideoSourcePtr
Definition: cxRemoteAPI.h:22
Namespace for all CustusX production code.