We need a small cross-platform C/C++ library for low-level OpenGL Context management.
The library should have functions similiar to the WGL and GLX systems and should work with every window and OpenGL Context on Windows, Linux and Mac OS X (10.7).
We managed to create the Windows and Linux part of this library, but stucked with the Mac implementation.
As far as we know, the lowest-level interface to OpenGL on Mac is CGL. Every other frameworks and libraries should based on CGL (Cocoa NSOpenGL, GLUT, GLX for Mac and the deprecated AGL).
CGL is very similiar to WGL and GLX, however we don't know how to connect a window to an OpenGL Context. We beleive it can only be done with the use of Cocoa NSOpenGL, but we have no experience with Objective C and XCode.
Our basic library (GLPlatfom) with WGL and GLX details attached
As you can see, the CGL part is missing, and the glpCreateContext function is not yet designed, because we have not yet managed to gather every info about what parameters should it have. We should support OpenGL 2.x context creation as well as the new context creation methods related to the ARB_create_context_profile extension, and also we should support sharing of GL contexts. We only want to create contexts that have the same pixel-format (or equivalent framebuffer configuraion info) as an already existing context. So, the querying of this and pass-through to our context creation function is needed.
The CGL part may probably use a C++ wrapper library around a Cocoa-based solution, but we can't see how it can be achieved.
Any help is appreciated.