Drake Designer
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
ddKinectLCM.h
Go to the documentation of this file.
1 #ifndef __ddKinectLCM_h
2 #define __ddKinectLCM_h
3 
4 #include <QObject>
5 
6 #include "ddLCMThread.h"
7 #include "ddLCMSubscriber.h"
8 #include "ddAppConfigure.h"
9 
10 
11 #include <string>
12 #include <sstream>
13 
14 #include <lcm/lcm-cpp.hpp>
15 #include <bot_frames/bot_frames.h>
16 
17 #include <vtkSmartPointer.h>
18 #include <vtkPolyData.h>
19 #include <vtkPointData.h>
20 #include <vtkUnsignedCharArray.h>
21 #include <vtkFloatArray.h>
22 #include <vtkTransform.h>
23 #include <vtkMatrix4x4.h>
24 
25 #include <kinect/kinect-utils.h>
26 
27 class DD_APP_EXPORT ddKinectLCM : public QObject
28 {
29  Q_OBJECT
30 
31 public:
32 
33  ddKinectLCM(QObject* parent=NULL);
34 
35  void init(ddLCMThread* lcmThread, const QString& botConfigFile);
36  qint64 getPointCloudFromKinect(vtkPolyData* polyDataRender);
37 
38 protected slots:
39 
40  void onKinectFrame(const QByteArray& data, const QString& channel);
41 
42 
43 protected:
44 
46 
47  KinectCalibration* kcal;
48  int decimate_;
49 
50  uint8_t* rgb_buf_ ;
51 
52  vtkSmartPointer<vtkPolyData> mPolyData;
53  int64_t mUtime;
55 
56 };
57 
58 #endif
ddLCMThread * mLCM
Definition: ddKinectLCM.h:45
vtkSmartPointer< vtkPolyData > mPolyData
Definition: ddKinectLCM.h:52
KinectCalibration * kcal
Definition: ddKinectLCM.h:47
QMutex mPolyDataMutex
Definition: ddKinectLCM.h:54
uint8_t * rgb_buf_
Definition: ddKinectLCM.h:50
int64_t mUtime
Definition: ddKinectLCM.h:53
#define DD_APP_EXPORT