OSVR Framework (Internal Development Docs)  0.6-1962-g59773924
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
InterfaceCallbackC.cpp
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 // Internal Includes
28 
29 // Library/third-party includes
30 // - none
31 
32 // Standard includes
33 // - none
34 
35 #define OSVR_CALLBACK_METHODS(TYPE) \
36  OSVR_ReturnCode osvrRegister##TYPE##Callback(OSVR_ClientInterface iface, \
37  OSVR_##TYPE##Callback cb, \
38  void *userdata) { \
39  iface->registerCallback(cb, userdata); \
40  return OSVR_RETURN_SUCCESS; \
41  }
42 
43 OSVR_CALLBACK_METHODS(Pose)
44 OSVR_CALLBACK_METHODS(Position)
45 OSVR_CALLBACK_METHODS(Orientation)
46 OSVR_CALLBACK_METHODS(Velocity)
47 OSVR_CALLBACK_METHODS(LinearVelocity)
48 OSVR_CALLBACK_METHODS(AngularVelocity)
49 OSVR_CALLBACK_METHODS(Acceleration)
50 OSVR_CALLBACK_METHODS(LinearAcceleration)
51 OSVR_CALLBACK_METHODS(AngularAcceleration)
52 OSVR_CALLBACK_METHODS(Button)
53 OSVR_CALLBACK_METHODS(Analog)
54 OSVR_CALLBACK_METHODS(Imaging)
55 OSVR_CALLBACK_METHODS(Location2D)
56 OSVR_CALLBACK_METHODS(Direction)
57 OSVR_CALLBACK_METHODS(EyeTracker2D)
58 OSVR_CALLBACK_METHODS(EyeTracker3D)
59 OSVR_CALLBACK_METHODS(EyeTrackerBlink)
60 OSVR_CALLBACK_METHODS(NaviVelocity)
61 OSVR_CALLBACK_METHODS(NaviPosition)
62 
63 #undef OSVR_CALLBACK_METHODS