15 #ifndef niftkIGIDataSource_h
16 #define niftkIGIDataSource_h
18 #include <niftkIGIDataSourcesExports.h>
24 #include <mitkDataStorage.h>
25 #include <mitkServiceInterface.h>
26 #include <usServiceRegistration.h>
56 virtual QString GetName()
const override;
61 virtual QString GetFactoryName()
const override;
66 virtual QString GetStatus()
const override;
71 QString GetDescription()
const override;
76 virtual bool GetShouldUpdate()
const override;
81 virtual void SetShouldUpdate(
bool shouldUpdate)
override;
92 virtual void StopPlayback()
override;
97 virtual void StartRecording()
override;
102 virtual void StopRecording()
override;
107 virtual void SetRecordingLocation(
const QString& pathName)
override;
112 virtual QString GetRecordingLocation()
const override;
117 virtual void SetPlaybackSourceName(
const QString& sourceName)
override;
122 virtual QString GetPlaybackSourceName()
const override;
127 QString GetPlaybackDirectory()
const;
132 QString GetRecordingDirectory()
const;
134 itkGetConstMacro(IsRecording,
bool);
135 itkGetConstMacro(IsPlayingBack,
bool);
144 mitk::DataStorage::Pointer dataStorage);
158 mitk::DataNode::Pointer GetDataNode(
const QString& name=QString(),
const bool& addToDataStorage=
true);
178 mitk::DataStorage::Pointer GetDataStorage()
const;
185 itkSetMacro(IsRecording,
bool);
186 itkSetMacro(IsPlayingBack,
bool);
188 void SetStatus(
const QString& status);
189 void SetDescription(
const QString& description);
194 mitk::DataStorage::Pointer m_DataStorage;
195 std::set<mitk::DataNode::Pointer> m_DataNodes;
196 us::ServiceRegistration<Self> m_MicroServiceRegistration;
198 QString m_FactoryName;
200 QString m_Description;
201 QString m_RecordingLocation;
202 QString m_PlaybackSourceName;
206 bool m_IsPlayingBack;
Interface for an IGI Data Source (e.g. video feed, ultrasound feed, tracker feed).
Definition: niftkIGIDataSourceI.h:70
SystemTimeServiceI::TimeType IGITimeType
Definition: niftkIGIDataType.h:39
RAII object to retrieve the system time via a SystemTimeServiceI implementation.
Definition: niftkSystemTimeServiceRAII.h:33
Abstract base class for IGI DataSources, such as objects that produce tracking data, video frames or ultrasound frames.
Definition: niftkIGIDataSource.h:47
MITK_DECLARE_SERVICE_INTERFACE(niftk::IGIDataSourceFactoryServiceI,"uk.ac.ucl.cmic.IGIDataSourceFactoryServiceI")
GLuint const GLchar * name
Definition: glew.h:1798
Definition: niftkExceptionObject.h:21
GLsizei const GLcharARB ** string
Definition: glew.h:5194