Medical Imaging Interaction Toolkit  2016.11.0
Medical Imaging Interaction Toolkit
mitkKinectV2Controller.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,
6 Division of Medical and Biological Informatics.
7 All rights reserved.
8 
9 This software is distributed WITHOUT ANY WARRANTY; without
10 even the implied warranty of MERCHANTABILITY or FITNESS FOR
11 A PARTICULAR PURPOSE.
12 
13 See LICENSE.txt or http://www.mitk.org for details.
14 
15 ===================================================================*/
16 #ifndef __mitkKinectV2Controller_h
17 #define __mitkKinectV2Controller_h
18 
19 #include <MitkKinectV2Exports.h>
20 #include <mitkCommon.h>
21 #include "mitkToFConfig.h"
22 
23 #include <itkObject.h>
24 #include <itkObjectFactory.h>
25 
26 #include <vtkSmartPointer.h>
27 #include <vtkPolyData.h>
28 
29 namespace mitk
30 {
36  class MITKKINECTV2_EXPORT KinectV2Controller : public itk::Object
37  {
38  public:
39 
41 
42  itkFactorylessNewMacro(Self)
43  itkCloneMacro(Self)
44  int GetRGBCaptureWidth() const;
45  int GetRGBCaptureHeight() const;
46  int GetDepthCaptureWidth() const;
47  int GetDepthCaptureHeight() const;
48 
54  bool InitializeMultiFrameReader();
55 
60  virtual bool OpenCameraConnection();
64  virtual bool CloseCameraConnection();
69  virtual bool UpdateCamera();
74  void GetDistances(float* distances);
75  void GetAmplitudes(float* amplitudes);
76  void GetIntensities(float* intensities);
77 
78  vtkSmartPointer<vtkPolyData> GetVtkPolyData();
79 
80  void SetGenerateTriangularMesh(bool flag);
81  void SetTriangulationThreshold(double triangulationThreshold);
82 
87  void GetRgb(unsigned char* rgb);
93  void GetAllData(float* distances, float* amplitudes, unsigned char* rgb);
94 
95  protected:
96 
98 
100 
101  private:
102  class KinectV2ControllerPrivate;
103  KinectV2ControllerPrivate *d;
104 
105  };
106 } //END mitk namespace
107 #endif
DataCollection - Class to facilitate loading/accessing structured data.
#define mitkClassMacroItkParent(className, SuperClassName)
Definition: mitkCommon.h:53
Interface to the Kinect 2 camera. Currently, the Microsoft SDK is used.