16 #ifndef OSGVIEWER_PIXELBUFFERCARBON
17 #define OSGVIEWER_PIXELBUFFERCARBON 1
19 #if defined (__APPLE__) && (!__LP64__)
21 #include <osg/GraphicsContext>
22 #include <osgViewer/api/Carbon/GraphicsHandleCarbon>
46 getState()->setGraphicsContext(
this);
48 if (_traits.valid() && _traits->sharedContext.valid())
50 getState()->setContextID( _traits->sharedContext->getState()->getContextID() );
51 incrementContextIDUsageCount( getState()->getContextID() );
61 virtual bool isSameKindAs(
const Object*
object)
const {
return dynamic_cast<const PixelBufferCarbon*
>(object)!=0; }
62 virtual const char* libraryName()
const {
return "osgViewer"; }
63 virtual const char* className()
const {
return "PixelBufferCarbon"; }
65 virtual bool valid()
const {
return _valid; }
68 virtual bool realizeImplementation();
71 virtual bool isRealizedImplementation()
const {
return _realized; }
74 virtual void closeImplementation();
77 virtual bool makeCurrentImplementation();
83 virtual bool releaseContextImplementation();
86 virtual void bindPBufferToTextureImplementation( GLenum buffer );
89 virtual void swapBuffersImplementation();
100 ~PixelBufferCarbon();
108 AGLPixelFormat _pixelformat;
static unsigned int createNewContextID()