-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathSLTrackerWorker.h
48 lines (39 loc) · 1 KB
/
SLTrackerWorker.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/*
*
SLStudio - Platform for Real-Time Structured Light
(c) 2013 -- 2014 Jakob Wilm, DTU, Kgs.Lyngby, Denmark
*
*/
#ifndef SLTRACKERWORKER_H
#define SLTRACKERWORKER_H
#include <QObject>
#include <QTime>
#include <fstream>
#include "Tracker.h"
#ifndef Q_MOC_RUN
#include <Eigen/Eigen>
#endif
class SLTrackerWorker : public QObject {
Q_OBJECT
public:
SLTrackerWorker() : busy(false), tracker(NULL), referenceSet(false), writeToDisk(false){}
~SLTrackerWorker();
public slots:
void setup();
void trackPointCloud(PointCloudConstPtr pointCloud);
void setReference(PointCloudConstPtr referencePointCloud);
signals:
void newPoseEstimate(Eigen::Affine3f T);
void error(QString err);
private:
bool busy;
Tracker *tracker;
QTime performanceTime;
QTime trackingTime;
bool referenceSet;
bool writeToDisk;
std::ofstream *ofStream;
public:
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
};
#endif