25 #ifndef INCLUDED_SystemComponent_h_GUID_F74B8728_915D_44AE_612B_6AB934CA4ED2 26 #define INCLUDED_SystemComponent_h_GUID_F74B8728_915D_44AE_612B_6AB934CA4ED2 30 #include <osvr/Common/Export.h> 36 #include <json/value.h> 48 std::string
const &message);
50 static const char *identifier();
56 static const char *identifier();
63 static const char *identifier();
70 static const char *identifier();
79 OSVR_COMMON_EXPORT
static const char *deviceName();
84 static OSVR_COMMON_EXPORT shared_ptr<SystemComponent> create();
89 OSVR_COMMON_EXPORT
void sendRoutes(std::string
const &routes);
90 OSVR_COMMON_EXPORT
void 91 registerRoutesHandler(vrpn_MESSAGEHANDLER handler,
void *userdata);
100 OSVR_COMMON_EXPORT
void sendClientRouteUpdate(std::string
const &route);
101 OSVR_COMMON_EXPORT
void 102 registerClientRouteUpdateHandler(vrpn_MESSAGEHANDLER handler,
109 typedef std::function<void(Json::Value
const &,
111 OSVR_COMMON_EXPORT
void registerReplaceTreeHandler(JsonHandler cb);
113 OSVR_COMMON_EXPORT
void sendReplacementTree(
PathTree &tree);
117 virtual void m_parentSet();
118 static int VRPN_CALLBACK
119 m_handleReplaceTree(
void *userdata, vrpn_HANDLERPARAM p);
121 std::vector<JsonHandler> m_replaceTreeHandlers;
126 #endif // INCLUDED_SystemComponent_h_GUID_F74B8728_915D_44AE_612B_6AB934CA4ED2 Definition: SystemComponent.h:59
Handles spatial transformations.
Definition: SerializationTraitExample_Complicated.h:40
RAII class template managing a message handler callback.
Definition: MessageHandler.h:85
Definition: CommonComponent.h:44
messages::ReplacementTreeFromServer treeOut
Message from server, updating/replacing the client's configuration.
Definition: SystemComponent.h:107
A tree representation, with path/url syntax, of the known OSVR system.
Definition: PathTree.h:43
The main namespace for all C++ elements of the framework, internal and external.
Definition: namespace_osvr.dox:3
Definition: SystemComponent.cpp:79
messages::AppStartupToServer appStartup
Message from client to server, notifying of app ID.
Definition: SystemComponent.h:94
Definition: SystemComponent.h:53
Definition: SystemComponent.h:44
Definition: SystemComponent.cpp:43
Definition: DeviceComponent.h:42
messages::ClientRouteToServer routeIn
Message from client, sending a single new/updated JSON routing directive in to the server...
Definition: SystemComponent.h:98
CRTP class template wrapping message-specific data and/or logic.
Definition: MessageRegistration.h:44
messages::RoutesFromServer routesOut
Message from server to client, replacing all routes.
Definition: SystemComponent.h:87
Definition: SystemComponent.h:66
BaseDevice component, to be used only with the "OSVR" special device.
Definition: SystemComponent.h:76
Standardized, portable parallel to struct timeval for representing both absolute times and time inter...
Definition: TimeValueC.h:81
Definition: SystemComponent.cpp:63