NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxStreamerServiceProxy.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 CXSTREAMERINTERFACEPROXY_H
12 #define CXSTREAMERINTERFACEPROXY_H
13 
14 #include "cxStreamerService.h"
16 
17 namespace cx
18 {
27 class cxResource_EXPORT StreamerServiceProxy : public StreamerService
28 {
29 public:
30 
31  StreamerServiceProxy(ctkPluginContext *context, QString name);
32  virtual ~StreamerServiceProxy() {}
33  virtual QString getName();
34  virtual QString getType() const;
35  virtual void stop();
36 
37  virtual std::vector<PropertyPtr> getSettings(QDomElement root);
38  virtual StreamerPtr createStreamer(QDomElement root);
39 private:
40  void initServiceListener();
41  void onServiceAdded(StreamerService *service);
42  void onServiceRemoved(StreamerService *service);
43 
44  ctkPluginContext *mPluginContext;
45  QString mServiceName;
46  StreamerServicePtr mStreamerService;
47  boost::shared_ptr<ServiceTrackerListener<StreamerService> > mServiceListener;
48 };
49 
50 } //end namespace cx
51 
52 #endif // CXSTREAMERINTERFACEPROXY_H
cxServiceTrackerListener.h
cx::StreamerServiceProxy::~StreamerServiceProxy
virtual ~StreamerServiceProxy()
Definition: cxStreamerServiceProxy.h:32
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cxStreamerService.h
cx::StreamerServicePtr
boost::shared_ptr< class StreamerService > StreamerServicePtr
Definition: cxPlusConnectWidget.h:26
cx::StreamerServiceProxy
Proxy for StreamerServices.
Definition: cxStreamerServiceProxy.h:27
cx::StreamerService
Abstract class. Interface to Streamers.
Definition: cxStreamerService.h:42
cx::StreamerPtr
boost::shared_ptr< class Streamer > StreamerPtr
Definition: cxImageReceiverThread.h:29