PlusLib  2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
vtkPlusPhilips3DProbeVideoSource.h
Go to the documentation of this file.
1 /*=Plus=header=begin======================================================
2 Program: Plus
3 Copyright (c) Laboratory for Percutaneous Surgery. All rights reserved.
4 See License.txt for details.
5 =========================================================Plus=header=end*/
6 
7 #ifndef __vtkPlusPhilips3DProbeVideoSource_h
8 #define __vtkPlusPhilips3DProbeVideoSource_h
9 
10 #include "vtkPlusDataCollectionExport.h"
11 
12 #include "vtkPlusDevice.h"
13 #include "StreamMgr.h"
14 
15 class vtkPlusIEEListener;
16 
22 class vtkPlusDataCollectionExport vtkPlusPhilips3DProbeVideoSource : public vtkPlusDevice
23 {
24 public:
27  virtual void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
28 
30  virtual PlusStatus ReadConfiguration(vtkXMLDataElement* config);
32  virtual PlusStatus WriteConfiguration(vtkXMLDataElement* config);
33 
35  virtual bool IsTracker() const;
36 
38  virtual PlusStatus NotifyConfigured();
39 
40  vtkGetMacro(Port, int);
41  vtkSetMacro(Port, int);
42 
43  vtkGetStringMacro(IPAddress);
44  vtkSetStringMacro(IPAddress);
45 
46  vtkSetMacro(ForceZQuantize, bool);
47  vtkGetMacro(ForceZQuantize, bool);
48 
49  vtkSetMacro(ResolutionFactor, double);
50  vtkGetMacro(ResolutionFactor, double);
51 
52  vtkSetMacro(IntegerZ, bool);
53  vtkGetMacro(IntegerZ, bool);
54 
55  vtkSetMacro(Isotropic, bool);
56  vtkGetMacro(Isotropic, bool);
57 
58  vtkSetMacro(QuantizeDim, bool);
59  vtkGetMacro(QuantizeDim, bool);
60 
61  vtkSetMacro(ZDecimation, int);
62  vtkGetMacro(ZDecimation, int);
63 
64  vtkSetMacro(Set4PtFIR, bool);
65  vtkGetMacro(Set4PtFIR, bool);
66 
67  vtkSetMacro(LatAndElevSmoothingIndex, int);
68  vtkGetMacro(LatAndElevSmoothingIndex, int);
69 
70 protected:
75 
77  void CallbackAddFrame(vtkImageData* imageData);
78 
80  virtual PlusStatus InternalConnect();
81 
84 
90  virtual PlusStatus InternalUpdate();
91 
92 protected:
93 
96 
98  unsigned long FrameNumber;
99 
101  char* IPAddress;
102 
104  int Port;
105 
111  bool IntegerZ;
113  bool Isotropic;
119  bool Set4PtFIR;
122 
123 private:
125  void operator=(const vtkPlusPhilips3DProbeVideoSource&); // Not implemented.
126  static vtkPlusPhilips3DProbeVideoSource* ActiveDevice;
127  static bool StreamCallback(_int64 id, SClient3DArray* ed, SClient3DArray* cd);
128 };
129 
130 #endif
virtual void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
Abstract interface for tracker and video devices.
Definition: vtkPlusDevice.h:60
virtual PlusStatus InternalConnect()
igsioStatus PlusStatus
Definition: PlusCommon.h:40
virtual bool IsTracker() const
#define VTK_OVERRIDE
Definition: PlusCommon.h:49
Class for providing VTK video input interface from Philips ie33 3D ultrasound probe.
virtual PlusStatus ReadConfiguration(vtkXMLDataElement *)
virtual PlusStatus WriteConfiguration(vtkXMLDataElement *)
virtual PlusStatus NotifyConfigured()
virtual PlusStatus InternalDisconnect()
virtual PlusStatus InternalUpdate()
static vtkPlusDevice * New()