RflySimSDK v3.05
RflySimSDK说明文档
载入中...
搜索中...
未找到
vrpn_Tracker_PhaseSpace.h
1#ifndef VRPN_TRACKER_PHASESPACE_H
2#define VRPN_TRACKER_PHASESPACE_H
3
4#include "vrpn_Configure.h" // IWYU pragma: keep
5
6#ifdef VRPN_INCLUDE_PHASESPACE
7#include <string>
8
9#include "vrpn_Shared.h"
10#include "vrpn_Tracker.h"
11#include "vrpn_Button.h"
12#include "vrpn_Analog.h"
13
14#include "owl.hpp"
15
16class VRPN_API vrpn_Tracker_PhaseSpace : public vrpn_Tracker, public vrpn_Button_Filter, public vrpn_Clipping_Analog_Server {
17
18 public:
19
20 vrpn_Tracker_PhaseSpace(const char *name,
22
23 vrpn_Tracker_PhaseSpace(const char *name,
25 const char* device,
26 float frequency,
27 int readflag,
28 int slaveflag=0);
29
30
31 ~vrpn_Tracker_PhaseSpace();
32
33 bool debug;
34
35 // vrpn_Tracker
36 virtual void mainloop();
37 static int VRPN_CALLBACK handle_update_rate_request(void *userdata, vrpn_HANDLERPARAM p);
38
39 // parse a tracker specification file and create PhaseSpace trackers
40 bool load(FILE* file);
41
42 // connect to the Impulse system
43 bool InitOWL();
44
45 // start streaming
46 bool enableStreaming(bool enable);
47
48 protected:
49 // vrpn_Tracker
50 virtual int get_report(void);
51 virtual void send_report(void);
52
53 protected:
54
55 // libowl2
56 OWL::Context context;
57 std::string device;
58 std::string options;
59
60 //
61 bool drop_frames;
62
63 class SensorManager;
64 SensorManager* smgr;
65
66 protected:
67
68 bool create_trackers();
69
70 void set_pose(const OWL::Rigid &r);
71 void report_marker(vrpn_int32 sensor, const OWL::Marker &m);
72 void report_rigid(vrpn_int32 sensor, const OWL::Rigid &r, bool is_stylus=false);
73 void report_button(vrpn_int32 sensor, int value);
74 void report_button_analog(vrpn_int32 sensor, int value);
75
76};
77
78#endif //VRPN_INCLUDE_PHASESPACE
79#endif //VRPN_TRACKER_PHASESPACE_H
virtual void mainloop()=0
定义 vrpn_Button.h:66
Analog server that can scale and clip its range to -1..1.
定义 vrpn_Analog.h:130
Generic connection class not specific to the transport mechanism.
定义 vrpn_Connection.h:562
定义 vrpn_Tracker.h:49
This structure is what is passed to a vrpn_Connection message callback.
定义 vrpn_Connection.h:41