PlusLib  2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
vtkPlusClarius.h
Go to the documentation of this file.
1 /*=Plus=header=begin======================================================
2  Program: Plus
3  Copyright (c) UBC Biomedical Signal and Image Computing Laboratory. All rights reserved.
4 =========================================================Plus=header=end*/
5 
6 #ifndef _VTKPLUSCLARIUS_H
7 #define _VTKPLUSCLARIUS_H
8 
9 // Local Includes
10 #include "vtkPlusConfig.h"
11 #include "vtkPlusDataCollectionExport.h"
12 #include "vtkPlusDevice.h"
13 #include "vtkPlusDataSource.h"
14 #include "vtkPlusUsDevice.h"
15 
23 class vtkPlusDataCollectionExport vtkPlusClarius : public vtkPlusUsDevice
24  /*vtkPlusCLARIUS is a subclass of vtkPlusDevice*/
25 {
26 public:
27  vtkTypeMacro(vtkPlusClarius, vtkPlusDevice);
33  static vtkPlusClarius* New();
34 
36  static vtkPlusClarius* GetInstance();
37 
38  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
39 
44  virtual PlusStatus Probe();
45 
47  virtual std::string GetSdkVersion();
48 
50  virtual PlusStatus ReadConfiguration(vtkXMLDataElement* config);
51 
53  virtual PlusStatus WriteConfiguration(vtkXMLDataElement* config);
54 
61  virtual PlusStatus NotifyConfigured();
62 
66  PlusStatus RequestLastNSecondsRawData(double lastNSeconds);
67 
72  PlusStatus RequestRawData(long long startTimestampNanoSeconds, long long endTimestampNanoSeconds);
73 
75  bool IsTracker() const { return false; }
76 
77  vtkSetMacro(FrameHeight, unsigned int);
78  vtkGetMacro(FrameHeight, unsigned int);
79 
80  vtkSetMacro(FrameWidth, unsigned int);
81  vtkGetMacro(FrameWidth, unsigned int);
82 
83  vtkSetMacro(IpAddress, std::string);
84  vtkGetMacro(IpAddress, std::string);
85 
86  vtkSetMacro(TcpPort, unsigned int);
87  vtkGetMacro(TcpPort, unsigned int);
88 
89  vtkSetMacro(ImuEnabled, bool);
90  vtkGetMacro(ImuEnabled, bool);
91 
92  vtkSetMacro(WriteImagesToDisk, bool);
93  vtkGetMacro(WriteImagesToDisk, bool);
94 
95  vtkSetMacro(ImuOutputFileName, std::string);
96  vtkGetMacro(ImuOutputFileName, std::string);
97 
101  vtkGetMacro(CompressRawData, bool);
102  vtkSetMacro(CompressRawData, bool);
103  vtkBooleanMacro(CompressRawData, bool);
104 
109  vtkSetStdStringMacro(RawDataOutputFilename);
110  vtkGetStdStringMacro(RawDataOutputFilename);
111 
112  vtkSetVector2Macro(AhrsAlgorithmGain, double);
113  vtkGetVector2Macro(AhrsAlgorithmGain, double);
114  vtkSetVector2Macro(FilteredTiltSensorAhrsAlgorithmGain, double);
115  vtkGetVector2Macro(FilteredTiltSensorAhrsAlgorithmGain, double);
116 
118  {
120  AHRS_MAHONY
121  };
122 
123 protected:
124  vtkPlusClarius();
125  ~vtkPlusClarius();
126 
127  virtual PlusStatus InternalConnect();
128  virtual PlusStatus InternalDisconnect();
129 
130 protected:
131  unsigned int TcpPort;
132  std::string IpAddress;
133 
134  std::string ImuOutputFileName;
140 
142 
144 
149  double AhrsAlgorithmGain[2];
150  double FilteredTiltSensorAhrsAlgorithmGain[2];
151 
162 
163  class vtkInternal;
164  vtkInternal* Internal;
165 };
166 
167 #endif //_VTKPLUSCLARIUS_H
Abstract interface for tracker and video devices.
Definition: vtkPlusDevice.h:60
std::string RawDataOutputFilename
virtual PlusStatus InternalConnect()
igsioStatus PlusStatus
Definition: PlusCommon.h:40
virtual std::string GetSdkVersion()
virtual PlusStatus Probe()
#define VTK_OVERRIDE
Definition: PlusCommon.h:49
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
vtkInternal * Internal
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
static vtkPlusUsDevice * New()
std::string ImuOutputFileName
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
unsigned int TcpPort
std::string IpAddress
vtkSetStdStringMacro(ImageToTransducerTransformName)
bool IsTracker() const
virtual PlusStatus NotifyConfigured()
Interface to the Clarius ultrasound scans This class talks with a Clarius Scanner over the Clarius AP...
virtual PlusStatus InternalDisconnect()
static vtkPlusClarius * Instance
Abstract interface for ultrasound video devices.
vtkGetStdStringMacro(ImageToTransducerTransformName)
int FilteredTiltSensorWestAxisIndex