5#include <Foundation/Foundation.h>
26 assert(
gGLManager == 0 &&
"TGOSXGLManager, gGLManager is initialized");
30 gROOT->GetListOfSpecials()->Add(
this);
40 gROOT->GetListOfSpecials()->Remove(
this);
47 typedef std::pair<UInt_t, Int_t> component_type;
49 std::vector<component_type> format;
56 const Int_t nSamples =
gEnv->GetValue(
"OpenGL.Framebuffer.Multisample", 0);
57 if (nSamples > 0 && nSamples <= 8)
63 UInt_t width = 0, height = 0;
64 gVirtualX->GetWindowSize(parentID,
x,
y, width, height);
66 const Window_t glWin =
gVirtualX->CreateOpenGLWindow(parentID, width, height, format);
102 "MakeCurrent, window not found for a given context");
171 assert(manip != 0 &&
"SelectManip, parameter 'manip' is null");
172 assert(camera != 0 &&
"SelectManip, parameter 'camera' is null");
173 assert(rect != 0 &&
"SelectManip, parameter 'rect' is null");
174 assert(sceneBox != 0 &&
"SelectManip, parameter 'sceneBox' is null");
177 return manip->
Select(*camera, *rect, *sceneBox);
184 assert(plot != 0 &&
"PlotSelected, parameter 'plot' is null");
193 assert(plot != 0 &&
"GetPlotInfo, parameter 'plot' is null");
202 assert(p != 0 &&
"PaintSingleObject, parameter 'p' is null");
211 assert(
object != 0 &&
"PanObject, parameter 'object' is null");
213 return object->Pan(
x,
y);
220 assert(vv != 0 &&
"PrintViewer, parameter 'vv' is null");
Handle_t Window_t
Window handle.
ULongptr_t Handle_t
Generic resource handle.
int Int_t
Signed integer 4 bytes (int).
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
Concrete class describing an orientated (free) or axis aligned box of 8 vertices.
Abstract base camera class - concrete classes for orthographic and perspective cameras derive from it...
Viewport (pixel base) 2D rectangle class.
~TGOSXGLManager() override
Bool_t SelectManip(TVirtualGLManip *manip, const TGLCamera *camera, const TGLRect *rect, const TGLBoundingBox *sceneBox) override
void PanObject(TVirtualGLPainter *o, Int_t x, Int_t y) override
CtxToWindowMap_t fCtxToWin
Bool_t PlotSelected(TVirtualGLPainter *plot, Int_t px, Int_t py) override
void ExtractViewport(Int_t devInd, Int_t *vp) override
void SelectOffScreenDevice(Int_t devInd) override
Int_t CreateGLContext(Int_t winInd) override
Int_t GetVirtualXInd(Int_t devInd) override
char * GetPlotInfo(TVirtualGLPainter *plot, Int_t px, Int_t py) override
void ReadGLBuffer(Int_t devInd) override
void DeleteGLContext(Int_t devInd) override
void Flush(Int_t ctxInd) override
Bool_t MakeCurrent(Int_t devInd) override
void PaintSingleObject(TVirtualGLPainter *) override
Bool_t ResizeOffScreenDevice(Int_t devInd, Int_t x, Int_t y, UInt_t w, UInt_t h) override
Bool_t AttachOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h) override
void MarkForDirectCopy(Int_t devInd, Bool_t) override
Int_t InitGLWindow(Window_t winID) override
void PrintViewer(TVirtualViewer3D *vv) override
virtual Bool_t Select(const TGLCamera &camera, const TGLRect &rect, const TGLBoundingBox &sceneBox)=0
virtual Bool_t PlotSelected(Int_t px, Int_t py)=0
virtual char * GetPlotInfo(Int_t px, Int_t py)=0
Abstract 3D shapes viewer.
virtual void PrintObjects()