-
Notifications
You must be signed in to change notification settings - Fork 71
/
MainGazeTracker.h
61 lines (50 loc) · 1.3 KB
/
MainGazeTracker.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
49
50
51
52
53
54
55
56
57
58
59
60
61
#pragma once
#include "utils.h"
#include "TrackingSystem.h"
//#include "Alert.h"
#include "Calibrator.h"
#include <opencv/highgui.h>
#include <gtkmm.h>
struct CommandLineArguments {
vector<char*> parameters;
vector<char*> options;
CommandLineArguments(int argc, char **argv);
bool isoption(const char* option);
};
class VideoInput {
CvCapture* capture;
public:
int framecount;
const IplImage* frame;
const CvSize size;
VideoInput();
VideoInput(const char* avifile);
~VideoInput();
void updateFrame();
};
class VideoWriter;
/* class FileInput; */
class MainGazeTracker {
scoped_ptr<VideoWriter> video;
int framestoreload;
vector<shared_ptr<AbstractStore> > stores;
int framecount;
bool autoreload;
// StateMachine<void> statemachine;
public:
shared_ptr<TrackingSystem> tracking;
FrameProcessing framefunctions;
scoped_ptr<IplImage> canvas;
scoped_ptr<VideoInput> videoinput;
MainGazeTracker(int argc, char** argv,
const vector<shared_ptr<AbstractStore> > &stores);
void doprocessing(void);
~MainGazeTracker(void);
void addTracker(Point point);
void addExemplar(Point exemplar);
void startCalibration();
void startTesting();
void savepoints();
void loadpoints();
void clearpoints();
};