00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * Mike Taylor 00008 * Side Effects 00009 * 123 Front Street West, Suite 1401 00010 * Toronto, Ontario 00011 * Canada M5J 2M2 00012 * 416-504-9876 00013 * 00014 * NAME: RE_OSXVisual.h (C++) 00015 * 00016 * COMMENTS: 00017 * RE_Visual subclass for Mac OS X 00018 */ 00019 #ifndef __RE_OSXVisual__ 00020 #define __RE_OSXVisual__ 00021 00022 #include "RE_API.h" 00023 #include "RE_Types.h" 00024 #include "RE_Visual.h" 00025 #include <UT/UT_MBSDUtil.h> 00026 00027 class RE_OSXServer; 00028 class RE_Window; 00029 00030 class RE_API RE_OSXVisual : public RE_Visual 00031 { 00032 public: 00033 RE_OSXVisual(RE_Server *newserver, 00034 RE_DisplayMode newmode, 00035 int hasover=1); 00036 virtual ~RE_OSXVisual(); 00037 00038 00039 #if RE_OGL_SINGLE_CONTEXT 00040 virtual RE_OGLContext getGraphicsContext(bool &needs_initialization, 00041 RE_Window *win); 00042 virtual RE_OGLContext getAlternateContext(bool &needs_initialization, 00043 RE_Window *win); 00044 #else 00045 virtual RE_OGLContext createContext(RE_Window *win) const; 00046 virtual void deleteContext(RE_OGLContext) const; 00047 #endif 00048 00049 void *getPixelFormat() {return myPixelFormat;} 00050 00051 private: 00052 00053 UT_ObjCRef myPixelFormat; // NSOpenGLPixelFormat 00054 00055 static UT_ObjCRef theShareContext; // Shared context 00056 }; 00057 00058 #endif
1.5.9