HOG2
Common.h
Go to the documentation of this file.
1 /*
2  * $Id: common.h
3  * hog2
4  *
5  * Created by Nathan Sturtevant on 11/02/06.
6  * Modified by Nathan Sturtevant on 02/29/20.
7  *
8  * This file is part of HOG2. See https://github.com/nathansttt/hog2 for licensing information.
9  *
10  */
11 
12 #include "GLUtil.h"
13 #include "Graphics.h"
14 #include <stdio.h>
15 #include <cstring>
16 #include <cinttypes>
17 
18 #ifndef COMMON_H
19 #define COMMON_H
20 
21 #define main hog_main
22 
23 const int MAXPORTS = 6;
24 
25 typedef struct {
26  GLfloat worldRotation[4];
27  GLfloat cameraRotation[4];
28 } recRotation;
29 
30 typedef struct {
31  GLdouble left, right, top, bottom, near, far;
32 } recFrustum;
33 
34 typedef struct {
35  recVec viewPos; // View position
36 
38 
39  // third-person (?) camera that can be programatically controlled using gluLookAt
40  recVec viewDir; // View direction vector
41  recVec viewUp; // View up direction
42  recRotation rotations; // object/camera rotations
43 
44  // Other settings
45  recFrustum frust; // set in updateProjection
46  GLdouble aperture; // camera aperture
47  GLint viewWidth,viewHeight; // current window/screen height and width
48  GLfloat viewOriginX, viewOriginY; // always 0
49 } recCamera;
50 
54 };
55 
56 struct viewport {
60  bool active; // Is this viewport valid
61 };
62 
63 // per view data
64 struct recContext
65 {
66  // camera handling
67  recCamera globalCamera; // has full screen size; see resizeGL()
68 
70 
75 
76  char message[256]; // buffer for message output
77  float msgTime; // message posting time for expiration
78 
80  unsigned long windowID;
81 };
82 typedef struct recContext recContext;
83 typedef struct recContext * pRecContext;
84 
85 // single set of interaction flags and states
86 extern GLfloat gTrackBallRotation [4];
88 
89 void updateProjection(pRecContext pContextInfo, int viewPort = -1);
91 
92 bool DoKeyboardCommand(pRecContext pContextInfo, unsigned char keyHit, bool shift, bool cntrl, bool alt);
94 void resetCamera(recCamera * pCamera);
95 
96 void ProcessCommandLineArgs(int argc, char *argv[]);
97 
98 extern char gDefaultMap[1024];
99 
100 /* Window Viewports */
101 void SetNumPorts(unsigned long windowID, int count);
102 int GetNumPorts(unsigned long windowID);
103 
104 /* Not currently functional, but purposes is to mark a
105  * viewport as the one that is receiving input
106  */
107 void SetActivePort(unsigned long windowID, int which);
108 int GetActivePort(unsigned long windowID);
109 
110 
111 /* Removes all active viewports and adds this one as the first.
112  * rect coordinates are in HOG coordinates.
113  */
114 void ReinitViewports(unsigned long windowID, const Graphics::rect &r, viewportType v);
115 /* Adds a new viewport to the existing viewports and
116  * returns the new viewport numbers
117  */
118 int AddViewport(unsigned long windowID, const Graphics::rect &r, viewportType v);
119 int AddViewport(unsigned long windowID, const Graphics::rect &initial, const Graphics::rect &fin, viewportType v);
120 void MoveViewport(unsigned long windowID, int viewport, const Graphics::rect &newLocation);
121 
125 float ViewportToGlobalHOGX(float x, int v);
129 float GlobalHOGToViewportX(float x, int v);
130 
131 const char kLeftArrow = 0x11;
132 const char kRightArrow = 0x12;
133 const char kUpArrow = 0x13;
134 const char kDownArrow = 0x14;
135 
141  kAltDown // option on the mac
142 };
143 
147  kMiddleButton, // option on the mac
149 };
150 
151 enum tMouseEventType : int {
152  kMouseDown = 0x1,
153  kMouseUp = 0x2,
154  kMouseDrag = 0x4, // option on the mac
156 };
157 
161 };
162 
170 typedef void (*FrameCallback)(unsigned long windowID, unsigned int viewport, void*);
171 
175 typedef void (*WindowCallback)(unsigned long windowID, tWindowEventType);
176 
180 typedef void (*JoystickCallback)(unsigned long windowID, double offsetX, double offsetY, void*);
181 
186 typedef bool (*MouseCallback)(unsigned long windowID, int x, int y, point3d loc, tButtonType, tMouseEventType);
191 typedef bool (*MouseCallback2)(unsigned long windowID, int viewport, int x, int y, point3d loc, tButtonType, tMouseEventType);
192 
198 typedef void (*KeyboardCallback)(unsigned long windowID, tKeyboardModifier, char);
206 typedef int (*CommandLineCallback)(char**, int);
207 
209 // * A data callback handler is called when new data is available from the GUI.
210 // * The handler can then read as much data as it wants.
211 // *
212 // * Implementation postponed for now:
213 // * in some situations can use the text buffer for this purpose
214 // */
215 //typedef int (*DataCallback)(char**, int);
216 
218 public:
219  commandLineCallbackData(CommandLineCallback _CLC, const char *_argument,
220  const char *_param, const char *_desc)
221  :CLC(_CLC), argument(_argument), param(_param), desc(_desc) {}
222 
223  void Print()
224  { printf("%s : %s\n %s\n", argument, param, desc); }
225 
227  const char *argument;
228  const char *param;
229  const char *desc;
230 };
231 
233 public:
234  keyboardCallbackData(KeyboardCallback kc, const char *_title, const char *_desc,
235  tKeyboardModifier _mod, keyboardCallbackData *_next = 0)
236  :call(kc), title(_title), desc(_desc), mod(_mod), next(_next) {}
237 
239  const char *title;
240  const char *desc;
243 };
244 
246 public:
248  :jC(_jC)
249  { userData = _userData; }
250 
252  void *userData;
253 };
254 
256 public:
258  :mC(_mC), which(_which)
259  {}
262 };
263 
265 public:
267  :mC(_mC), which(_which)
268  {}
271 };
272 
274 public:
276  :wC(_wC)
277  {}
279 };
280 
282 public:
283  frameCallbackData(FrameCallback _glCall, unsigned long _windowID, void *_userData)
284  :glCall(_glCall)
285  { windowID = _windowID;
286  userData = _userData; }
287 
289  unsigned long windowID;
290  void *userData;
291 };
292 
293 //class dataCallbackData {
294 //public:
295 // dataCallbackData(DataCallback _dC)
296 // :dC(_dC)
297 // {}
298 // DataCallback dC;
299 //};
300 
301 void InstallFrameHandler(FrameCallback jC, unsigned long windowID, void *userdata);
302 void RemoveFrameHandler(FrameCallback jC, unsigned long windowID, void *userdata);
304 
305 void InstallJoystickHandler(JoystickCallback jC, void *userdata);
306 void RemoveJoystickHandler(JoystickCallback jC, void *userdata);
307 void HandleJoystickMovement(pRecContext pContextInfo, double panX, double panY);
308 
314 bool HandleMouse(pRecContext pContextInfo, int xWindow, int yWindow, point3d where, tButtonType button, tMouseEventType mouse);
317 
321 
322 //void InstallDataHandler(DataCallback wC);
323 //void RemoveDataHandler(DataCallback wC);
324 
325 void InstallKeyboardHandler(KeyboardCallback kf, const char *title, const char *description,
326  tKeyboardModifier mod, unsigned char firstKey, unsigned char lastKey = 0);
327 void GetKeyAssignments(std::vector<char> &keys);
328 void GetKeyAssignmentDescriptions(std::vector<std::string> &keys);
330 void InstallCommandLineHandler(CommandLineCallback, const char *, const char *, const char *);
332 
333 void ProcessCommandLineArgs(int argc, char *argv[]);
334 
335 void RunHOGGUI(int argc, char* argv[], int windowDimension = 1000);
336 void RunHOGGUI(int argc, char* argv[], int xDimension, int yDimension);
337 
338 void SaveScreenshot(unsigned long windowID, const char *filename);
339 void SetZoom(int windowID, float amount);
340 
341 void submitTextToBuffer(const char *val);
342 void appendTextToBuffer(const char *);
343 const char *getTextBuffer();
344 void setTextBufferVisibility(bool);
347 pRecContext GetContext(unsigned long windowID);
348 void updateModelView(pRecContext pContextInfo, int currPort);
349 void cameraLookAt(GLfloat, GLfloat, GLfloat, float cameraSpeed = 0.1, int port = -1);
350 recVec cameraLookingAt(int port = -1);
351 void cameraMoveTo(GLfloat x, GLfloat y, GLfloat z, float cameraSpeed = 0.1, int port = -1);
352 void cameraOffset(GLfloat x, GLfloat y, GLfloat z, float cameraSpeed = 0.1, int port = -1);
353 void resetCamera();
354 
355 //point3d GetOGLPos(pRecContext pContextInfo, int x, int y);
356 recVec GetHeading(unsigned long windowID, int which);
357 void GetHeading(unsigned long windowID, int which, GLdouble &hx, GLdouble &hy, GLdouble &hz);
358 
359 void setPortCamera(pRecContext pContextInfo, int currPort);
360 void setViewport(pRecContext pContextInfo, int currPort);
361 //void rotateObject();
362 
363 
364 #endif
PrintCommandLineArguments
void PrintCommandLineArguments()
Definition: Common.cpp:213
joystickCallbackData
Definition: Common.h:245
Graphics::point
Definition: Graphics.h:32
mouseCallbackData2::mouseCallbackData2
mouseCallbackData2(MouseCallback2 _mC, tMouseEventType _which)
Definition: Common.h:266
mouseCallbackData::mouseCallbackData
mouseCallbackData(MouseCallback _mC, tMouseEventType _which)
Definition: Common.h:257
recContext::globalCamera
recCamera globalCamera
Definition: Common.h:67
RemoveJoystickHandler
void RemoveJoystickHandler(JoystickCallback jC, void *userdata)
Definition: Common.cpp:184
kWindowCreated
@ kWindowCreated
Definition: Common.h:159
gTrackBallRotation
GLfloat gTrackBallRotation[4]
Definition: GLUThog.cpp:33
recVec
A generic vector (essentially the same as a point, but offers normalization)
Definition: GLUtil.h:78
GlobalHOGToViewportX
float GlobalHOGToViewportX(float x, int v)
Definition: Common.cpp:347
recFrustum
Definition: Common.h:30
recRotation
Definition: Common.h:25
keyboardCallbackData
Definition: Common.h:232
RemoveFrameHandler
void RemoveFrameHandler(FrameCallback jC, unsigned long windowID, void *userdata)
Definition: Common.cpp:148
recContext::windowWidth
int windowWidth
Definition: Common.h:74
commandLineCallbackData::argument
const char * argument
Definition: Common.h:227
kDownArrow
const char kDownArrow
Definition: Common.h:134
windowCallbackData::windowCallbackData
windowCallbackData(WindowCallback _wC)
Definition: Common.h:275
tKeyboardModifier
tKeyboardModifier
Definition: Common.h:136
kUpArrow
const char kUpArrow
Definition: Common.h:133
updateProjection
void updateProjection(pRecContext pContextInfo, int viewPort=-1)
Update the projection matrix based on camera and view info.
Definition: GLUThog.cpp:560
keyboardCallbackData::title
const char * title
Definition: Common.h:239
updateModelView
void updateModelView(pRecContext pContextInfo, int currPort)
Updates the viewpoint of the model.
Definition: GLUThog.cpp:598
recCamera::frust
recFrustum frust
Definition: Common.h:45
JoystickCallback
void(* JoystickCallback)(unsigned long windowID, double offsetX, double offsetY, void *)
a joystaick callback handler is passed the same data passed in when it was installed
Definition: Common.h:180
kNoModifier
@ kNoModifier
Definition: Common.h:137
recContext::viewports
viewport viewports[MAXPORTS]
Definition: Common.h:73
recContext::camera
recCamera camera[MAXPORTS]
Definition: Common.h:69
kShiftDown
@ kShiftDown
Definition: Common.h:139
keyboardCallbackData::keyboardCallbackData
keyboardCallbackData(KeyboardCallback kc, const char *_title, const char *_desc, tKeyboardModifier _mod, keyboardCallbackData *_next=0)
Definition: Common.h:234
Graphics::rect
Definition: Graphics.h:94
frameCallbackData::frameCallbackData
frameCallbackData(FrameCallback _glCall, unsigned long _windowID, void *_userData)
Definition: Common.h:283
MouseCallback
bool(* MouseCallback)(unsigned long windowID, int x, int y, point3d loc, tButtonType, tMouseEventType)
a mouse callback handler passes the absolute and local mouse coordinates of the click returns true if...
Definition: Common.h:186
GetActivePort
int GetActivePort(unsigned long windowID)
Definition: Common.cpp:929
InstallKeyboardHandler
void InstallKeyboardHandler(KeyboardCallback kf, const char *title, const char *description, tKeyboardModifier mod, unsigned char firstKey, unsigned char lastKey=0)
Definition: Common.cpp:73
kControlDown
@ kControlDown
Definition: Common.h:140
kScaleToFill
@ kScaleToFill
Definition: Common.h:53
recContext::windowID
unsigned long windowID
Definition: Common.h:80
ViewportToGlobalHOG
Graphics::point ViewportToGlobalHOG(Graphics::point where, int viewport)
Definition: Common.cpp:387
recCamera::viewOriginY
GLfloat viewOriginY
Definition: Common.h:48
recContext::message
char message[256]
Definition: Common.h:76
frameCallbackData
Definition: Common.h:281
commandLineCallbackData::commandLineCallbackData
commandLineCallbackData(CommandLineCallback _CLC, const char *_argument, const char *_param, const char *_desc)
Definition: Common.h:219
viewport::type
viewportType type
Definition: Common.h:59
joystickCallbackData::jC
JoystickCallback jC
Definition: Common.h:251
viewportType
viewportType
Definition: Common.h:51
MoveViewport
void MoveViewport(unsigned long windowID, int viewport, const Graphics::rect &newLocation)
Definition: Common.cpp:341
recContext::display
Graphics::Display display
Definition: Common.h:79
viewport
Definition: Common.h:56
mouseCallbackData2::mC
MouseCallback2 mC
Definition: Common.h:269
commandLineCallbackData::param
const char * param
Definition: Common.h:228
getCurrentContext
pRecContext getCurrentContext()
Definition: GLUThog.cpp:49
InstallWindowHandler
void InstallWindowHandler(WindowCallback wC)
Definition: Common.cpp:634
ProcessCommandLineArgs
void ProcessCommandLineArgs(int argc, char *argv[])
Definition: Common.cpp:222
InstallFrameHandler
void InstallFrameHandler(FrameCallback jC, unsigned long windowID, void *userdata)
Definition: Common.cpp:143
recCamera::viewDir
recVec viewDir
Definition: Common.h:40
frameCallbackData::userData
void * userData
Definition: Common.h:290
commandLineCallbackData
‍**
Definition: Common.h:217
MouseCallback2
bool(* MouseCallback2)(unsigned long windowID, int viewport, int x, int y, point3d loc, tButtonType, tMouseEventType)
the new callback handler also passes the viewport frame in which the click occured.
Definition: Common.h:191
keyboardCallbackData::next
keyboardCallbackData * next
Definition: Common.h:242
kLeftArrow
const char kLeftArrow
Definition: Common.h:131
drawGL
void drawGL(pRecContext pContextInfo, bool swap)
commandLineCallbackData::Print
void Print()
Definition: Common.h:223
mouseCallbackData2::which
tMouseEventType which
Definition: Common.h:270
FrameCallback
void(* FrameCallback)(unsigned long windowID, unsigned int viewport, void *)
install a FrameCallback to be called once per frame and viewport This is where you should do any draw...
Definition: Common.h:170
loc
Definition: MapGenerators.cpp:296
SetActivePort
void SetActivePort(unsigned long windowID, int which)
Definition: Common.cpp:935
gTrackingContextInfo
pRecContext gTrackingContextInfo
Definition: GLUThog.cpp:37
kMiddleButton
@ kMiddleButton
Definition: Common.h:147
submitTextToBuffer
void submitTextToBuffer(const char *val)
Definition: GLUThog.cpp:704
pRecContext
struct recContext * pRecContext
Definition: Common.h:83
mouseCallbackData::mC
MouseCallback mC
Definition: Common.h:260
tWindowEventType
tWindowEventType
Definition: Common.h:158
kMouseDrag
@ kMouseDrag
Definition: Common.h:154
appendTextToBuffer
void appendTextToBuffer(const char *)
Definition: GLUThog.cpp:691
point3d
#define point3d
Definition: GLUtil.h:123
resetCamera
void resetCamera(recCamera *pCamera)
Definition: Common.cpp:748
Graphics::Display
Definition: Graphics.h:146
kAnyModifier
@ kAnyModifier
Definition: Common.h:138
kRightArrow
const char kRightArrow
Definition: Common.h:132
recContext
Definition: Common.h:64
kMouseDown
@ kMouseDown
Definition: Common.h:152
mouseCallbackData
Definition: Common.h:255
recContext::windowHeight
int windowHeight
Definition: Common.h:74
InstallCommandLineHandler
void InstallCommandLineHandler(CommandLineCallback, const char *, const char *, const char *)
Definition: Common.cpp:207
WindowCallback
void(* WindowCallback)(unsigned long windowID, tWindowEventType)
a window callback handler called when a window is created or destroyed
Definition: Common.h:175
recCamera::rotations
recRotation rotations
Definition: Common.h:42
GetKeyAssignments
void GetKeyAssignments(std::vector< char > &keys)
Definition: Common.cpp:84
recContext::currPort
int currPort
Definition: Common.h:71
SetZoom
void SetZoom(int windowID, float amount)
Definition: Common.cpp:1012
cameraLookingAt
recVec cameraLookingAt(int port=-1)
Definition: Common.cpp:766
GetKeyAssignmentDescriptions
void GetKeyAssignmentDescriptions(std::vector< std::string > &keys)
Definition: Common.cpp:97
mouseCallbackData2
Definition: Common.h:264
kRightButton
@ kRightButton
Definition: Common.h:146
kLeftButton
@ kLeftButton
Definition: Common.h:145
HandleMouseClick
bool HandleMouseClick(pRecContext pContextInfo, int x, int y, point3d where, tButtonType, tMouseEventType)
Definition: Common.cpp:619
kScaleToSquare
@ kScaleToSquare
Definition: Common.h:52
DoKeyboardCommand
bool DoKeyboardCommand(pRecContext pContextInfo, unsigned char keyHit, bool shift, bool cntrl, bool alt)
Definition: Common.cpp:703
MAXPORTS
const int MAXPORTS
Definition: Common.h:23
RemoveWindowHandler
void RemoveWindowHandler(WindowCallback wC)
Definition: Common.cpp:639
recCamera::thirdPerson
bool thirdPerson
Definition: Common.h:37
windowCallbackData
Definition: Common.h:273
InstallMouseClickHandler
void InstallMouseClickHandler(MouseCallback mC, tMouseEventType which=static_cast< tMouseEventType >(kMouseDown|kMouseUp|kMouseDrag))
Definition: Common.cpp:255
recCamera::viewWidth
GLint viewWidth
Definition: Common.h:47
GetNumPorts
int GetNumPorts(unsigned long windowID)
Definition: Common.cpp:923
keyboardCallbackData::call
KeyboardCallback call
Definition: Common.h:238
kNoButton
@ kNoButton
Definition: Common.h:148
SetNumPorts
void SetNumPorts(unsigned long windowID, int count)
Definition: Common.cpp:903
recContext::msgTime
float msgTime
Definition: Common.h:77
setViewport
void setViewport(pRecContext pContextInfo, int currPort)
Definition: Common.cpp:846
GLUtil.h
Graphics.h
cameraMoveTo
void cameraMoveTo(GLfloat x, GLfloat y, GLfloat z, float cameraSpeed=0.1, int port=-1)
Definition: Common.cpp:792
kWindowDestroyed
@ kWindowDestroyed
Definition: Common.h:160
setTextBufferVisibility
void setTextBufferVisibility(bool)
Definition: SFML_HOG.cpp:791
tMouseEventType
tMouseEventType
Definition: Common.h:151
getTextBuffer
const char * getTextBuffer()
keyboardCallbackData::desc
const char * desc
Definition: Common.h:240
setPortCamera
void setPortCamera(pRecContext pContextInfo, int currPort)
Definition: Common.cpp:823
gDefaultMap
char gDefaultMap[1024]
Definition: Common.cpp:29
RunHOGGUI
void RunHOGGUI(int argc, char *argv[], int windowDimension=1000)
viewport::bounds
Graphics::rect bounds
Definition: Common.h:57
AddViewport
int AddViewport(unsigned long windowID, const Graphics::rect &r, viewportType v)
Definition: Common.cpp:306
KeyboardCallback
void(* KeyboardCallback)(unsigned long windowID, tKeyboardModifier, char)
a keyboard callback handler is passed the current unit simulation, the key that was hit,...
Definition: Common.h:198
kAltDown
@ kAltDown
Definition: Common.h:141
kMouseMove
@ kMouseMove
Definition: Common.h:155
recContext::numPorts
int numPorts
Definition: Common.h:71
ReinitViewports
void ReinitViewports(unsigned long windowID, const Graphics::rect &r, viewportType v)
Definition: Common.cpp:291
CommandLineCallback
int(* CommandLineCallback)(char **, int)
A command-line callback handler takes in a char** which points to the argument which matches the argu...
Definition: Common.h:206
initialConditions
void initialConditions(pRecContext pContextInfo)
Definition: Common.cpp:680
joystickCallbackData::userData
void * userData
Definition: Common.h:252
mouseCallbackData::which
tMouseEventType which
Definition: Common.h:261
recFrustum::top
GLdouble top
Definition: Common.h:31
frameCallbackData::glCall
FrameCallback glCall
Definition: Common.h:288
PrintKeyboardAssignments
void PrintKeyboardAssignments()
Definition: Common.cpp:109
HandleJoystickMovement
void HandleJoystickMovement(pRecContext pContextInfo, double panX, double panY)
Definition: Common.cpp:198
joystickCallbackData::joystickCallbackData
joystickCallbackData(JoystickCallback _jC, void *_userData)
Definition: Common.h:247
SaveScreenshot
void SaveScreenshot(unsigned long windowID, const char *filename)
Definition: Common.cpp:970
kMouseUp
@ kMouseUp
Definition: Common.h:153
swap
void swap(uint64_t &state, int loc1, int loc2)
Definition: RubiksCube7Edges.cpp:359
HandleMouse
bool HandleMouse(pRecContext pContextInfo, point3d where, tButtonType button, tMouseEventType mouse)
Definition: Common.cpp:582
viewport::finalBound
Graphics::rect finalBound
Definition: Common.h:58
recCamera::aperture
GLdouble aperture
Definition: Common.h:46
tButtonType
tButtonType
Definition: Common.h:144
windowCallbackData::wC
WindowCallback wC
Definition: Common.h:278
GetHeading
recVec GetHeading(unsigned long windowID, int which)
Definition: Common.cpp:1036
RemoveMouseClickHandler
void RemoveMouseClickHandler(MouseCallback mC)
Definition: Common.cpp:265
cameraOffset
void cameraOffset(GLfloat x, GLfloat y, GLfloat z, float cameraSpeed=0.1, int port=-1)
Definition: Common.cpp:808
viewport::active
bool active
Definition: Common.h:60
keyboardCallbackData::mod
tKeyboardModifier mod
Definition: Common.h:241
cameraLookAt
void cameraLookAt(GLfloat, GLfloat, GLfloat, float cameraSpeed=0.1, int port=-1)
Definition: Common.cpp:775
recCamera::viewUp
recVec viewUp
Definition: Common.h:41
commandLineCallbackData::CLC
CommandLineCallback CLC
Definition: Common.h:226
GlobalHOGToViewport
Graphics::point GlobalHOGToViewport(pRecContext pContextInfo, const viewport &v, Graphics::point where)
Definition: Common.cpp:407
InstallJoystickHandler
void InstallJoystickHandler(JoystickCallback jC, void *userdata)
Definition: Common.cpp:179
ViewportToGlobalHOGX
float ViewportToGlobalHOGX(float x, int v)
Definition: Common.cpp:358
frameCallbackData::windowID
unsigned long windowID
Definition: Common.h:289
GetContext
pRecContext GetContext(unsigned long windowID)
Definition: GLUThog.cpp:44
HandleWindowEvent
void HandleWindowEvent(pRecContext pContextInfo, tWindowEventType)
Definition: Common.cpp:652
recContext::moveAllPortsTogether
bool moveAllPortsTogether
Definition: Common.h:72
recCamera
Definition: Common.h:34
recCamera::viewPos
recVec viewPos
Definition: Common.h:35
getTextBufferVisibility
bool getTextBufferVisibility()
Definition: SFML_HOG.cpp:810
commandLineCallbackData::desc
const char * desc
Definition: Common.h:229
pContextInfo
pRecContext pContextInfo
Definition: GLUThog.cpp:31
HandleFrame
void HandleFrame(pRecContext pContextInfo, int viewport)
Definition: Common.cpp:163