Medical Imaging Interaction Toolkit  2018.4.99-389bf124
Medical Imaging Interaction Toolkit
mitkUSDiPhASDeviceCustomControls.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef MITKUSDiPhASDeviceCustomControls_H_HEADER_INCLUDED_
14 #define MITKUSDiPhASDeviceCustomControls_H_HEADER_INCLUDED_
15 
17 #include "mitkUSImageVideoSource.h"
18 #include "mitkUSDevice.h"
19 
20 #include <itkObjectFactory.h>
21 
22 #include <functional>
23 #include <qstring.h>
24 
25 namespace mitk {
30 {
31 public:
34 
39  void SetIsActive( bool isActive ) override;
40 
41  enum DataType { Image_uChar, Beamformed_Short };
42 
44  {
45  bool saveRaw;
47  };
51  bool GetIsActive( ) override;
52 
53  virtual void SetCompensateEnergy(bool compensate);
54  virtual void SetUseBModeFilter(bool isSet);
55  virtual void SetVerticalSpacing(float mm);
56  virtual void SetRecord(bool record);
57  virtual void SetScatteringCoefficient(float coeff);
58  virtual void SetCompensateScattering(bool compensate);
59  virtual void SetSavingSettings(SavingSettings settings);
60 
61  //Transmit
62  virtual void SetTransmitPhaseLength(double us);
63  virtual void SetExcitationFrequency(double MHz);
64  virtual void SetTransmitEvents(int events);
65  virtual void SetVoltage(int voltage);
66  virtual void SetMode(bool interleaved);
67 
68  //Receive
69  virtual void SetScanDepth(double mm);
70  virtual void SetAveragingCount(int count);
71  virtual void SetTGCMin(int min);
72  virtual void SetTGCMax(int max);
73  virtual void SetDataType(DataType type);
74 
75  //Beamforming
76  virtual void SetPitch(double mm);
77  virtual void SetReconstructedSamples(int samples);
78  virtual void SetReconstructedLines(int lines);
79  virtual void SetSpeedOfSound(int mps);
80 
81  //Bandpass
82  virtual void SetBandpassEnabled(bool bandpass);
83  virtual void SetLowCut(double MHz);
84  virtual void SetHighCut(double MHz);
85 
86  virtual void passGUIOut(std::function<void(QString)> /*callback*/);
87  virtual void SetSilentUpdate(bool silent);
88  virtual bool GetSilentUpdate();
89 
90 
91 
92 protected:
97  ~USDiPhASDeviceCustomControls( ) override;
98 
99  bool m_IsActive;
100  USImageVideoSource::Pointer m_ImageSource;
102 
105  virtual void OnSetCompensateEnergy(bool /*compensate*/);
106  virtual void OnSetSavingSettings(SavingSettings /*settings*/);
107  virtual void OnSetUseBModeFilter(bool /*isSet*/);
108  virtual void OnSetRecord(bool /*record*/);
109  virtual void OnSetVerticalSpacing(float /*mm*/);
110  virtual void OnSetScatteringCoefficient(float /*coeff*/);
111  virtual void OnSetCompensateScattering(bool /*compensate*/);
112  //Transmit
113  virtual void OnSetTransmitPhaseLength(double /*us*/);
114  virtual void OnSetExcitationFrequency(double /*MHz*/);
115  virtual void OnSetTransmitEvents(int /*events*/);
116  virtual void OnSetVoltage(int /*voltage*/);
117  virtual void OnSetMode(bool /*interleaved*/);
118 
119  //Receive
120  virtual void OnSetScanDepth(double /*mm*/);
121  virtual void OnSetAveragingCount(int /*count*/);
122  virtual void OnSetTGCMin(int /*min*/);
123  virtual void OnSetTGCMax(int /*max*/);
124  virtual void OnSetDataType(DataType /*type*/);
125 
126  //Beamforming
127  virtual void OnSetPitch(double /*mm*/);
128  virtual void OnSetReconstructedSamples(int /*samples*/);
129  virtual void OnSetReconstructedLines(int /*lines*/);
130  virtual void OnSetSpeedOfSound(int /*mps*/);
131 
132  //Bandpass
133  virtual void OnSetBandpassEnabled(bool /*bandpass*/);
134  virtual void OnSetLowCut(double /*MHz*/);
135  virtual void OnSetHighCut(double /*MHz*/);
136 
137 };
138 } // namespace mitk
139 
140 #endif // MITKUSDiPhASDeviceCustomControls_H_HEADER_INCLUDED_
Superclass for all ultrasound device control interfaces. Defines an interface for activating and deac...
#define mitkNewMacro1Param(classname, type)
Definition: mitkCommon.h:72
DataCollection - Class to facilitate loading/accessing structured data.
Custom controls for mitk::USDiPhASDevice.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:40
static T max(T x, T y)
Definition: svm.cpp:56
static T min(T x, T y)
Definition: svm.cpp:53