X-Git-Url: http://git.treefish.org/~alex/phys/latlib.git/blobdiff_plain/5a4132d73bb1872523e9a7fccfa38cffbd551dda..0f815d3fea69adf1ee22cff3a728a4c22cf6e466:/culooks.h diff --git a/culooks.h b/culooks.h index 1705ab5..76f0919 100644 --- a/culooks.h +++ b/culooks.h @@ -14,7 +14,12 @@ using namespace std; class culooks { + public: + + culooks (const char* name, const int& xcubes, const int& ycubes, const int& l, int *argc, char **argv); + private: + class cube { public: cube(int l); @@ -30,8 +35,7 @@ class culooks float *link; int l; }; - - public: + struct window { int layout[2]; double aspect; @@ -42,17 +46,23 @@ class culooks string name; }; - culooks (const char* name, const int& xcubes, const int& ycubes, const int& l, int *argc, char **argv); - - static vector< pair > Windows; - - struct wincontext { - GLXDrawable gDrawable; - Display *gDisplay; - GLXContext gContext; + class drawing + { + private: + static int rotcube[3]; + static culooks::window* getWin(); + static int getCubeFromPos(int x, int y); + static void motionFunc(int x, int y); + static void mouseFunc(int button, int state, int x, int y); + static void reshapeFunc(int w, int h); + static void displayFunc(); + static void initWindow(int winid); + static void idleFunc_master(); + public: + static void* glutThread(void *leer); }; - - private: + + static vector< pair > Windows; static pthread_t glThreadId; static int windowid; int mywid;