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
mitkKinectDevice.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 mitkKinectDevice_h
13 #define mitkKinectDevice_h
14 
15 #include <MitkKinectExports.h>
16 #include "mitkCommon.h"
17 #include "mitkToFCameraDevice.h"
18 #include "mitkKinectController.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 MITKKINECT_EXPORT KinectDevice : 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();
66  virtual void StopCamera();
71  virtual void UpdateCamera();
75  virtual bool IsCameraActive();
82  virtual void GetAmplitudes(float* amplitudeArray, int& imageSequence);
88  virtual void GetIntensities(float* intensityArray, int& imageSequence);
94  virtual void GetDistances(float* distanceArray, int& imageSequence);
105  virtual void GetAllImages(float* distanceArray, float* amplitudeArray, float* intensityArray, char* sourceDataArray,
106  int requiredImageSequence, int& capturedImageSequence, unsigned char* rgbDataArray=nullptr);
110  KinectController::Pointer GetController();
111 
115  virtual void SetProperty( const char *propertyKey, BaseProperty* propertyValue );
119  int GetRGBCaptureWidth();
123  int GetRGBCaptureHeight();
124 
125  protected:
126 
127  KinectDevice();
128 
129  ~KinectDevice();
130 
134  static ITK_THREAD_RETURN_TYPE Acquire(void* pInfoStruct);
138  void GetNextPos();
139  KinectController::Pointer m_Controller;
140 
143  unsigned char** m_RGBDataBuffer;
144 
145  private:
146 
147  };
148 } //END mitk namespace
149 #endif
mitk::KinectDevice::m_Controller
KinectController::Pointer m_Controller
corresponding CameraController
Definition: mitkKinectDevice.h:139
mitk::BaseProperty
Abstract base class for properties.
Definition: mitkBaseProperty.h:36
mitk::KinectDevice
Interface for all representations of Kinect devices. KinectDevice internally holds an instance of Kin...
Definition: mitkKinectDevice.h:38
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::KinectDevice::m_RGBDataBuffer
unsigned char ** m_RGBDataBuffer
buffer holding the last RGB image
Definition: mitkKinectDevice.h:143
mitk::KinectDevice::m_DistanceDataBuffer
float ** m_DistanceDataBuffer
buffer holding the last distance images
Definition: mitkKinectDevice.h:141
mitkKinectController.h
mitkCommon.h
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::KinectDevice::m_AmplitudeDataBuffer
float ** m_AmplitudeDataBuffer
buffer holding the last infra-red (IR) images
Definition: mitkKinectDevice.h:142
mitk::ToFCameraDevice
Virtual interface and base class for all Time-of-Flight devices.
Definition: mitkToFCameraDevice.h:37
mitkToFCameraDevice.h