Medical Imaging Interaction Toolkit  2018.4.99-389bf124
Medical Imaging Interaction Toolkit
mitkUSDiPhASDevice.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 MITKUSDiPhASDevice_H_HEADER_INCLUDED_
14 #define MITKUSDiPhASDevice_H_HEADER_INCLUDED_
15 
16 #include <functional>
18 #include "mitkUSDevice.h"
22 
23 #include "Framework.IBMT.US.CWrapper.h"
24 
25 #include <Windows.h>
26 #include <iostream>
27 #include <SDKDDKVer.h>
28 #include <stdio.h>
29 #include <tchar.h>
30 
31 #include <itkObjectFactory.h>
32 
33 
34 namespace mitk {
44  class USDiPhASImageSource;
45 
46  class USDiPhASDevice : public USDevice
47  {
48  public:
50  mitkNewMacro2Param(Self, std::string, std::string);
51 
55  virtual std::string GetDeviceClass();
56 
57  virtual USControlInterfaceProbes::Pointer GetControlInterfaceProbes();
59 
66  virtual bool OnInitialization();
67 
75  virtual bool OnConnection();
76 
86  virtual bool OnDisconnection();
87 
97  virtual bool OnActivation();
98 
106  virtual bool OnDeactivation();
107 
111  virtual void OnFreeze(bool freeze);
112 
114  USImageSource::Pointer GetUSImageSource( );
115 
117  ScanModeNative& GetScanMode();
118 
121  void UpdateScanmode();
123  void MessageCallback(const char* message);
124  void SetBursts(int bursts);
125  void SetInterleaved(bool interleaved);
126  bool IsInterleaved();
127 
128  BeamformingParametersInterleaved_OA_US paramsInterleaved;
129  BeamformingParametersPlaneWaveCompound paramsPlaneWave;
130 
131  protected:
141  USDiPhASDevice(std::string manufacturer, std::string model);
142  virtual ~USDiPhASDevice();
143 
153  void InitializeScanMode();
154  void UpdateTransmitEvents();
155 
156  USDiPhASProbesControls::Pointer m_ControlsProbes;
158 
159  mitk::USDiPhASImageSource::Pointer m_ImageSource;
160 
162  ScanModeNative m_ScanMode;
166  };
167 } // namespace mitk
168 
169 #endif // MITKUSDiPhASDevice_H_HEADER_INCLUDED_
A device holds information about it&#39;s model, make and the connected probes. It is the common super cl...
Definition: mitkUSDevice.h:73
virtual bool OnActivation()
Is called during the activation process. After this method is finished, the device is generating imag...
BeamformingParametersPlaneWaveCompound paramsPlaneWave
mitk::USDiPhASImageSource::Pointer m_ImageSource
Superclass of all classes generating some kind of mitk::BaseData.
DataCollection - Class to facilitate loading/accessing structured data.
BeamformingParametersInterleaved_OA_US paramsInterleaved
Beamforming m_CurrentBeamformingAlgorithm
virtual bool OnConnection()
Is called during the connection process. Connect to the DiPhAS API.
virtual bool OnInitialization()
Is called during the initialization process. There is nothing done on the initialization of a mik::US...
USDiPhASDevice(std::string manufacturer, std::string model)
void SetInterleaved(bool interleaved)
void MessageCallback(const char *message)
virtual bool OnDeactivation()
Is called during the deactivation process. After a call to this method the device is connected...
void SetBursts(int bursts)
USDiPhASProbesControls::Pointer m_ControlsProbes
USImageSource::Pointer GetUSImageSource()
virtual USControlInterfaceProbes::Pointer GetControlInterfaceProbes()
Default getter for the probes control interface. Has to be implemented in a subclass if a probes cont...
ScanModeNative & GetScanMode()
virtual void OnFreeze(bool freeze)
Changes scan state of the device if freeze is toggeled in mitk::USDevice.
mitkClassMacro(USDiPhASDevice, mitk::USDevice)
virtual std::string GetDeviceClass()
Returns the class of the device.
virtual bool OnDisconnection()
Is called during the disconnection process. Deactivate and remove all DiPhAS API controls. A disconnect from the DiPhAS API is not possible for which reason the hardware stays in connected state even after calling this method.
virtual itk::SmartPointer< USAbstractControlInterface > GetControlInterfaceCustom()
Default getter for the custom control interface. Has to be implemented in a subclass if a custom cont...
mitkNewMacro2Param(Self, std::string, std::string)
itk::SmartPointer< USAbstractControlInterface > m_ControlInterfaceCustom