23 #ifndef SRC_VISUALIZATION_OPENGL_WINDOWMANAGER_HPP_
24 #define SRC_VISUALIZATION_OPENGL_WINDOWMANAGER_HPP_
26 #include <boost/atomic.hpp>
27 #include <boost/thread/mutex.hpp>
34 namespace visualization {
43 typedef std::pair<unsigned int, mic::opengl::visualization::Window*>
id_win_pair_t;
50 typedef std::map<unsigned int, mic::opengl::visualization::Window*>::iterator
id_win_it_t;
91 static void mouseHandler(
int button,
int state,
int x,
int y);
111 static void idle(
void);
159 #define VGL_MANAGER mic::opengl::visualization::WindowManager::getInstance()
std::map< unsigned int, mic::opengl::visualization::Window * >::iterator id_win_it_t
Type used in iterating/searching for windows in registry.
std::pair< unsigned int, mic::opengl::visualization::Window * > id_win_pair_t
Type used in adding windows to registry.
void terminateWindows(void)
static void reshapeHandler(int width_, int height_)
void registerWindow(mic::opengl::visualization::Window *window_)
static void keyboardHandler(unsigned char key_, int x_, int y_)
std::map< unsigned int, mic::opengl::visualization::Window * > window_registry
static void initializeGLUT(int argc, char *argv[])
mic::opengl::visualization::Window * findWindow(unsigned int id_)
void startVisualizationLoop()
Runs the main GL loop.
static boost::atomic< WindowManager * > instance_
Class responsible for management of all OpenGL windows - defined in the form of a singleton...
static boost::mutex instantiation_mutex
Parent class of all OpenGL-based windows (abstract).
static void displayHandler(void)
static void mouseHandler(int button, int state, int x, int y)
static WindowManager * getInstance()