Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkToFCameraPMDDevice.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 mitkToFCameraPMDDevice_h
13 #define mitkToFCameraPMDDevice_h
14 
15 #include <MitkPMDExports.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 {
38  class MITKPMD_EXPORT ToFCameraPMDDevice : public ToFCameraDevice
39  {
40  public:
41 
43 
44  itkFactorylessNewMacro(Self);
45 
46  itkCloneMacro(Self);
47 
52  virtual bool OnConnectCamera();
56  virtual bool DisconnectCamera();
62  virtual void StartCamera();
67  virtual void UpdateCamera();
74  virtual void GetAmplitudes(float* amplitudeArray, int& imageSequence);
80  virtual void GetIntensities(float* intensityArray, int& imageSequence);
86  virtual void GetDistances(float* distanceArray, int& imageSequence);
97  virtual void GetAllImages(float* distanceArray, float* amplitudeArray, float* intensityArray, char* sourceDataArray,
98  int requiredImageSequence, int& capturedImageSequence, unsigned char* rgbDataArray=nullptr);
102  ToFCameraPMDController::Pointer GetController();
103 
107  virtual void SetProperty( const char *propertyKey, BaseProperty* propertyValue );
108 
109  protected:
110 
112 
114 
118  virtual void AllocateSourceData();
122  virtual void CleanUpSourceData();
123 
127  static ITK_THREAD_RETURN_TYPE Acquire(void* pInfoStruct);
131  void GetNextPos();
132 
133  ToFCameraPMDController::Pointer m_Controller;
136 
137  private:
138 
139  };
140 } //END mitk namespace
141 #endif
mitk::BaseProperty
Abstract base class for properties.
Definition: mitkBaseProperty.h:36
mitkToFCameraPMDController.h
mitk::ToFCameraPMDDevice::m_SourceDataArray
char * m_SourceDataArray
array holding the current PMD source data
Definition: mitkToFCameraPMDDevice.h:135
mitk::ToFCameraPMDDevice
Interface for all representations of PMD ToF devices. ToFCameraPMDDevice internally holds an instance...
Definition: mitkToFCameraPMDDevice.h:38
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::ToFCameraPMDDevice::m_Controller
ToFCameraPMDController::Pointer m_Controller
corresponding CameraController
Definition: mitkToFCameraPMDDevice.h:133
mitk::ToFCameraPMDDevice::m_SourceDataBuffer
char ** m_SourceDataBuffer
buffer holding the last acquired images
Definition: mitkToFCameraPMDDevice.h:134
mitkCommon.h
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::ToFCameraDevice
Virtual interface and base class for all Time-of-Flight devices.
Definition: mitkToFCameraDevice.h:37
mitkToFCameraDevice.h