2 #ifndef GRAMODS_TRACK_VRPNSERVER
3 #define GRAMODS_TRACK_VRPNSERVER
5 #include <gmTrack/config.hh>
7 #ifdef gramods_ENABLE_VRPN
9 #include <gmCore/Object.hh>
10 #include <gmCore/OFactory.hh>
11 #include <gmCore/Updateable.hh>
13 #include <gmTrack/AnalogsTracker.hh>
14 #include <gmTrack/ButtonsTracker.hh>
15 #include <gmTrack/MultiPoseTracker.hh>
16 #include <gmTrack/SinglePoseTracker.hh>
18 BEGIN_NAMESPACE_GMTRACK;
42 void update(gmCore::Updateable::clock::time_point time,
43 size_t frame)
override;
48 void initialize()
override;
55 void setPort(
int port);
61 void addTrackerName(std::string name);
67 void addAnalogsTracker(std::shared_ptr<AnalogsTracker> t);
73 void addButtonsTracker(std::shared_ptr<ButtonsTracker> t);
79 void addMultiPoseTracker(std::shared_ptr<MultiPoseTracker> t);
85 void addSinglePoseTracker(std::shared_ptr<SinglePoseTracker> t);
92 void traverse(
Visitor *visitor)
override;
99 std::unique_ptr<Impl> _impl;
102 END_NAMESPACE_GMTRACK;
Base type for objects in the Gramods package for standardized handling of construction,...
Definition: Object.hh:42
The Updateable class defines an interface for objects that may be updated, for example each execution...
Definition: Updateable.hh:18
This class sets up a VRPN server that post data from AnalogsTracker, ButtonsTracker,...
Definition: VrpnServer.hh:31
The visitor of a design pattern for automatic traversal.
Definition: Object.hh:75
Definition: VrpnServer.cpp:32