12#define DEBUG_ROOT_COCOA
16#ifdef DEBUG_ROOT_COCOA
23#include <OpenGL/OpenGL.h>
24#include <Cocoa/Cocoa.h>
38 : fCurrentDrawableID(GetRootWindowID() + 1),
96 NSLog(
@"Fatal error: requested drawable %lu is not found among currently valid drawables.",
drawableID);
115#ifdef DEBUG_ROOT_COCOA
117 NSLog(
@"Fatal error: requested non-existing drawable %lu",
windowID);
121 NSLog(
@"This window was deleted already");
123 NSLog(
@"This window not found among allocated/deleted drawables");
144 qw.fContentView.fParentView =
nil;
146 qw.contentView =
nil;
149 if (
qw.fMainWindow) {
151 qw.fMainWindow =
nil;
172 }
catch (
const std::exception &) {
Handle_t Window_t
Window handle.
Handle_t Drawable_t
Drawable handle.
ULongptr_t Handle_t
Generic resource handle.
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void SetFakeGLWindow(QuartzWindow *fakeWin)
Drawable_t RegisterDrawable(NSObject *nsObj)
handle2ctx_map fHandleToGLContext
void DeleteDrawable(Drawable_t drawableID)
Window_t GetRootWindowID() const
Handle_t GetHandleForGLContext(NSOpenGLContext *glContext)
std::map< unsigned, Util::NSStrongReference< NSObject< X11Drawable > > >::iterator drawable_iterator
Util::NSStrongReference< QuartzWindow > fFakeGLWindow
NSObject< X11Drawable > * GetDrawable(Drawable_t drawableD) const
std::map< unsigned, Util::NSStrongReference< NSObject< X11Drawable > > >::const_iterator const_drawable_iterator
ctx2handle_map fGLContextToHandle
void DeleteGLContext(Handle_t contextID)
std::vector< Drawable_t > fFreeDrawableIDs
Handle_t fFreeGLContextID
Handle_t RegisterGLContext(NSOpenGLContext *glContext)
NSObject< X11Window > * GetWindow(Window_t windowID) const
std::map< unsigned, Util::NSStrongReference< NSObject< X11Drawable > > > fDrawables
void ReplaceDrawable(Drawable_t drawableID, NSObject *nsObj)
QuartzWindow * GetFakeGLWindow()
Drawable_t fCurrentDrawableID
NSOpenGLContext * GetGLContextForHandle(Handle_t contextID)
bool IsRootWindow(Window_t windowID) const
void Reset(NSObject *object)
DerivedType * Get() const
const_iterator end() const
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...