30#include "gdk/win32/gdkwin32.h"
68 CDCGuard(
const CDCGuard &);
72 explicit CDCGuard(HDC
hDC) : fHDC(
hDC)
91 WDCGuard(
const WDCGuard &);
113 BMPGuard(
const BMPGuard &);
117 explicit BMPGuard(HBITMAP
bmp) : fBMP(
bmp)
135 WGLGuard(
const WGLGuard &);
139 explicit WGLGuard(HGLRC
glrc) : fCtx(
glrc)
204 std::deque<TGLContext>::size_type i = 0;
211 ::Warning(
"TGWin32GLManager::~TGLWin32GLManager",
"You forget to destroy gl-context %d\n", i);
232 gROOT->GetListOfSpecials()->AddLast(
this);
260 Error(
"CreateGLContext",
"GetWindowDC failed\n");
271 Error(
"CreateGLContext",
"wglCreateContext failed\n");
294 Error(
"CreateGLContext",
"SetPixelFormat failed\n");
296 Error(
"CreateGLContext",
"ChoosePixelFormat failed\n");
309 Error(
"CreateDIB",
"CreateCompatibleDC failed\n");
320 Error(
"CreateDIB",
"CreateDIBSection failed\n");
366 Error(
"ResizeOffScreenDevice",
"Error trying to create new DIB\n");
434 Error(
"Flush",
"CreateCompatibleDC failed\n");
517 return plot->PlotSelected(px, py);
524 return plot->GetPlotInfo(px, py);
Handle_t Window_t
Window 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.
const PIXELFORMATDESCRIPTOR doubleBufferDesc
const PIXELFORMATDESCRIPTOR singleScreenDesc
winID h TVirtualViewer3D TVirtualGLPainter p
winID h TVirtualViewer3D vv
winID h TVirtualViewer3D TVirtualGLPainter char TVirtualGLPainter plot
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t rect
Binding & operator=(OUT(*fun)(void))
R__EXTERN TGLManager *(* gPtr2GLManager)()
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.
static TGLManager * ProxyObject()
TGLContext * fNextFreeContext
std::deque< TGLContext > fGLContexts
void DeleteGLContext(Int_t devInd) override
Bool_t HighColorFormat(Int_t ctx) override
void ExtractViewport(Int_t devInd, Int_t *vp) override
Bool_t ResizeOffScreenDevice(Int_t devInd, Int_t x, Int_t y, UInt_t w, UInt_t h) override
Create new DIB if needed.
Int_t CreateGLContext(Int_t winInd) override
winInd is TGWin32 index, returned by previous call gGLManager->InitGLWindow returns descripto (index)...
Bool_t CreateDIB(TGLContext &ctx) const
Create DIB section to read GL buffer into.
char * GetPlotInfo(TVirtualGLPainter *plot, Int_t px, Int_t py) override
void PaintSingleObject(TVirtualGLPainter *) override
void PanObject(TVirtualGLPainter *o, Int_t x, Int_t y) override
Bool_t PlotSelected(TVirtualGLPainter *plot, Int_t px, Int_t py) override
Int_t GetVirtualXInd(Int_t devInd) override
Bool_t SelectManip(TVirtualGLManip *manip, const TGLCamera *camera, const TGLRect *rect, const TGLBoundingBox *sceneBox) override
void ReadGLBuffer(Int_t devInd) override
void Flush(Int_t ctxInd) override
Bool_t AttachOffScreenDevice(Int_t ctxInd, Int_t x, Int_t y, UInt_t w, UInt_t h) override
void PrintViewer(TVirtualViewer3D *vv) override
Int_t InitGLWindow(Window_t winID) override
void SelectOffScreenDevice(Int_t devInd) override
~TGWin32GLManager() override
Bool_t MakeCurrent(Int_t devInd) override
void MarkForDirectCopy(Int_t devInd, Bool_t) override
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void Pan(Int_t px, Int_t py)=0
Abstract 3D shapes viewer.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.
TGLContext * fNextFreeContext