Medical Imaging Interaction Toolkit  2021.02.99-9e0e53e2
Medical Imaging Interaction Toolkit
mitkToFCameraMITKPlayerDevice.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 #ifndef __mitkToFCameraMITKPlayerDevice_h
13 #define __mitkToFCameraMITKPlayerDevice_h
14 
15 #include <MitkToFHardwareExports.h>
16 #include "mitkCommon.h"
17 #include "mitkToFCameraDevice.h"
19 
20 #include "itkObject.h"
21 #include "itkObjectFactory.h"
22 #include "itkMultiThreader.h"
23 #include "itkFastMutexLock.h"
24 
25 
26 namespace mitk
27 {
34  {
35  public:
36 
38 
39  itkFactorylessNewMacro(Self);
40 
41  itkCloneMacro(Self);
42 
46  bool OnConnectCamera() override;
50  bool DisconnectCamera() override;
55  void StartCamera() override;
62  void GetAmplitudes(float* amplitudeArray, int& imageSequence) override;
68  void GetIntensities(float* intensityArray, int& imageSequence) override;
74  virtual void GetRgb(unsigned char* rgbArray, int& imageSequence);
80  void GetDistances(float* distanceArray, int& imageSequence) override;
91  void GetAllImages(float* distanceArray, float* amplitudeArray, float* intensityArray, char* sourceDataArray,
92  int requiredImageSequence, int& capturedImageSequence, unsigned char* rgbDataArray=nullptr) override;
97  virtual void SetInputFileName(std::string inputFileName);
98 
102  void SetProperty( const char *propertyKey, BaseProperty* propertyValue ) override;
103 
104  protected:
105 
107 
108  ~ToFCameraMITKPlayerDevice() override;
112  void UpdateCamera() override;
116  static ITK_THREAD_RETURN_TYPE Acquire(void* pInfoStruct);
120  void CleanUpDataBuffers();
124  void AllocateDataBuffers();
125 
126  ToFCameraMITKPlayerController::Pointer m_Controller;
127  std::string m_InputFileName;
128 
129  private:
130 
131  float** m_DistanceDataBuffer;
132  float** m_AmplitudeDataBuffer;
133  float** m_IntensityDataBuffer;
134  unsigned char** m_RGBDataBuffer;
135 
136  };
137 } //END mitk namespace
138 #endif
std::string m_InputFileName
member holding the file name of the current input file
#define MITKTOFHARDWARE_EXPORT
Virtual interface and base class for all Time-of-Flight devices.
DataCollection - Class to facilitate loading/accessing structured data.
Abstract base class for properties.
Device class representing a player for MITK-ToF images.
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
ToFCameraMITKPlayerController::Pointer m_Controller
member holding the corresponding controller