代码拉取完成,页面将自动刷新
#ifndef VRPN_TRACKER_PHASESPACE_H
#define VRPN_TRACKER_PHASESPACE_H
#include "vrpn_Configure.h" // IWYU pragma: keep
#ifdef VRPN_INCLUDE_PHASESPACE
#include <string>
#include "vrpn_Shared.h"
#include "vrpn_Tracker.h"
#include "vrpn_Button.h"
#include "vrpn_Analog.h"
#include "owl.hpp"
class VRPN_API vrpn_Tracker_PhaseSpace : public vrpn_Tracker, public vrpn_Button_Filter, public vrpn_Clipping_Analog_Server {
public:
vrpn_Tracker_PhaseSpace(const char *name,
vrpn_Connection *c);
vrpn_Tracker_PhaseSpace(const char *name,
vrpn_Connection *c,
const char* device,
float frequency,
int readflag,
int slaveflag=0);
~vrpn_Tracker_PhaseSpace();
bool debug;
// vrpn_Tracker
virtual void mainloop();
static int VRPN_CALLBACK handle_update_rate_request(void *userdata, vrpn_HANDLERPARAM p);
// parse a tracker specification file and create PhaseSpace trackers
bool load(FILE* file);
// connect to the Impulse system
bool InitOWL();
// start streaming
bool enableStreaming(bool enable);
protected:
// vrpn_Tracker
virtual int get_report(void);
virtual void send_report(void);
protected:
// libowl2
OWL::Context context;
std::string device;
std::string options;
//
bool drop_frames;
class SensorManager;
SensorManager* smgr;
protected:
bool create_trackers();
void set_pose(const OWL::Rigid &r);
void report_marker(vrpn_int32 sensor, const OWL::Marker &m);
void report_rigid(vrpn_int32 sensor, const OWL::Rigid &r, bool is_stylus=false);
void report_button(vrpn_int32 sensor, int value);
void report_button_analog(vrpn_int32 sensor, int value);
};
#endif //VRPN_INCLUDE_PHASESPACE
#endif //VRPN_TRACKER_PHASESPACE_H
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。