00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include "Interface.h"
00031
00036 class GLUTInterface : public Interface
00037 {
00038 public:
00039 virtual int start();
00040
00041 virtual void flush();
00042 virtual void repaint();
00043
00044 virtual void setIdleCallback(void (*func)(void));
00045 virtual void setPaintCallback(void (*func)(void));
00046 virtual void setKeyboardCallback(void (*func)(int key, int x, int y,
00047 bool special, bool down));
00048 virtual void addTimerCallback(void (*func)(int value), int time_ms,
00049 int val);
00050 virtual void setWindowSize(int width, int height);
00051 virtual void setFullScreen(bool fullScreen);
00052 virtual void setMouseEventCallback(void (*func)(int x, int y,
00053 MouseButtonType button, bool down));
00054 virtual void setMouseMotionCallback(void (*func)(int x, int y));
00055
00056
00057 virtual int getTime();
00058 virtual int getWindowWidth();
00059 virtual int getWindowHeight();
00060
00061 virtual const char* name() { return "GLUT"; }
00062
00063 protected:
00064 virtual int init(int argc, const char* argv[], int width, int height);
00065 };