OSVR-Core
VrpnMessageType.h
Go to the documentation of this file.
1 
11 // Copyright 2014 Sensics, Inc.
12 //
13 // Licensed under the Apache License, Version 2.0 (the "License");
14 // you may not use this file except in compliance with the License.
15 // You may obtain a copy of the License at
16 //
17 // http://www.apache.org/licenses/LICENSE-2.0
18 //
19 // Unless required by applicable law or agreed to in writing, software
20 // distributed under the License is distributed on an "AS IS" BASIS,
21 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 // See the License for the specific language governing permissions and
23 // limitations under the License.
24 
25 #ifndef INCLUDED_VrpnMessageType_h_GUID_ECDE1AD9_A386_4EA3_CA02_C5D95B16B2D1
26 #define INCLUDED_VrpnMessageType_h_GUID_ECDE1AD9_A386_4EA3_CA02_C5D95B16B2D1
27 
28 // Internal Includes
30 
31 // Library/third-party includes
32 #include <vrpn_ConnectionPtr.h>
33 
34 // Standard includes
35 // - none
36 
37 namespace osvr {
38 namespace connection {
39 
40  class VrpnMessageType : public MessageType {
41  public:
42  VrpnMessageType(std::string const &name, vrpn_ConnectionPtr &vrpnConn)
43  : MessageType(name) {
44  m_messageID = vrpnConn->register_message_type(name.c_str());
45  }
46  ~VrpnMessageType() {}
47 
48  vrpn_int32 getID() const { return m_messageID; }
49 
50  private:
51  vrpn_int32 m_messageID;
52  };
53 } // namespace connection
54 } // namespace osvr
55 
56 #endif // INCLUDED_VrpnMessageType_h_GUID_ECDE1AD9_A386_4EA3_CA02_C5D95B16B2D1
The main namespace for all C++ elements of the framework, internal and external.
Definition: namespace_osvr.dox:3
Definition: VrpnMessageType.h:40
Base class for connection-specific message type registration.
Definition: MessageType.h:38