vrpn
07.35
Virtual Reality Peripheral Network
Toggle main menu visibility
Loading...
Searching...
No Matches
vrpn_Tracker_PhaseSpace.h
Go to the documentation of this file.
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
16
class
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,
21
vrpn_Connection
*c);
22
23
vrpn_Tracker_PhaseSpace
(
const
char
*name,
24
vrpn_Connection
*c,
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
vrpn_BaseClassUnique::userdata
void * userdata
Definition
vrpn_BaseClass.h:290
vrpn_BaseClass::mainloop
virtual void mainloop()=0
Called once through each main loop iteration to handle updates. Remote object mainloop() should call ...
vrpn_Button_Filter::vrpn_Button_Filter
vrpn_Button_Filter(const char *, vrpn_Connection *c=NULL)
Definition
vrpn_Button.C:129
vrpn_Clipping_Analog_Server::vrpn_Clipping_Analog_Server
vrpn_Clipping_Analog_Server(const char *name, vrpn_Connection *c, vrpn_int32 numChannels=vrpn_CHANNEL_MAX)
Definition
vrpn_Analog.C:202
vrpn_Connection
Generic connection class not specific to the transport mechanism.
Definition
vrpn_Connection.h:561
vrpn_Tracker_PhaseSpace::smgr
SensorManager * smgr
Definition
vrpn_Tracker_PhaseSpace.h:64
vrpn_Tracker_PhaseSpace::set_pose
void set_pose(const OWL::Rigid &r)
Definition
vrpn_Tracker_PhaseSpace.C:737
vrpn_Tracker_PhaseSpace::vrpn_Tracker_PhaseSpace
vrpn_Tracker_PhaseSpace(const char *name, vrpn_Connection *c)
Definition
vrpn_Tracker_PhaseSpace.C:116
vrpn_Tracker_PhaseSpace::vrpn_Tracker_PhaseSpace
vrpn_Tracker_PhaseSpace(const char *name, vrpn_Connection *c, const char *device, float frequency, int readflag, int slaveflag=0)
vrpn_Tracker_PhaseSpace::get_report
virtual int get_report(void)
Definition
vrpn_Tracker_PhaseSpace.C:865
vrpn_Tracker_PhaseSpace::InitOWL
bool InitOWL()
Definition
vrpn_Tracker_PhaseSpace.C:147
vrpn_Tracker_PhaseSpace::load
bool load(FILE *file)
Definition
vrpn_Tracker_PhaseSpace.C:618
vrpn_Tracker_PhaseSpace::debug
bool debug
Definition
vrpn_Tracker_PhaseSpace.h:33
vrpn_Tracker_PhaseSpace::create_trackers
bool create_trackers()
Definition
vrpn_Tracker_PhaseSpace.C:200
vrpn_Tracker_PhaseSpace::options
std::string options
Definition
vrpn_Tracker_PhaseSpace.h:58
vrpn_Tracker_PhaseSpace::report_marker
void report_marker(vrpn_int32 sensor, const OWL::Marker &m)
Definition
vrpn_Tracker_PhaseSpace.C:753
vrpn_Tracker_PhaseSpace::device
std::string device
Definition
vrpn_Tracker_PhaseSpace.h:57
vrpn_Tracker_PhaseSpace::report_rigid
void report_rigid(vrpn_int32 sensor, const OWL::Rigid &r, bool is_stylus=false)
Definition
vrpn_Tracker_PhaseSpace.C:780
vrpn_Tracker_PhaseSpace::drop_frames
bool drop_frames
Definition
vrpn_Tracker_PhaseSpace.h:61
vrpn_Tracker_PhaseSpace::enableStreaming
bool enableStreaming(bool enable)
Definition
vrpn_Tracker_PhaseSpace.C:719
vrpn_Tracker_PhaseSpace::send_report
virtual void send_report(void)
Definition
vrpn_Tracker_PhaseSpace.C:798
vrpn_Tracker_PhaseSpace::report_button
void report_button(vrpn_int32 sensor, int value)
Definition
vrpn_Tracker_PhaseSpace.C:813
vrpn_Tracker_PhaseSpace::report_button_analog
void report_button_analog(vrpn_int32 sensor, int value)
Definition
vrpn_Tracker_PhaseSpace.C:832
vrpn_Tracker_PhaseSpace::handle_update_rate_request
static int VRPN_CALLBACK handle_update_rate_request(void *userdata, vrpn_HANDLERPARAM p)
Definition
vrpn_Tracker_PhaseSpace.C:1003
vrpn_Tracker_PhaseSpace::context
OWL::Context context
Definition
vrpn_Tracker_PhaseSpace.h:56
vrpn_Tracker::vrpn_Tracker
vrpn_Tracker(const char *name, vrpn_Connection *c=NULL, const char *tracker_cfg_file_name=NULL)
Definition
vrpn_Tracker.C:45
vrpn_HANDLERPARAM
This structure is what is passed to a vrpn_Connection message callback.
Definition
vrpn_Connection.h:41
vrpn_Analog.h
vrpn_Button.h
vrpn_Configure.h
VRPN_API
#define VRPN_API
Definition
vrpn_Configure.h:648
VRPN_CALLBACK
#define VRPN_CALLBACK
Definition
vrpn_Configure.h:649
vrpn_Shared.h
vrpn_Tracker.h
vrpn_Tracker_PhaseSpace.h
Generated by
1.17.0