Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TVirtualPadPainter Class Referenceabstract

To make it possible to use GL for 2D graphic in a TPad/TCanvas.

TVirtualPadPainter interface must be used instead of TVirtualX. Internally, non-GL implementation should delegate all calls to gVirtualX, GL implementation will delegate part of calls to gVirtualX, and has to implement some of the calls from the scratch.

Definition at line 25 of file TVirtualPadPainter.h.

Public Types

enum  EBoxMode { kHollow , kFilled }
 
enum  ETextMode { kClear , kOpaque }
 

Public Member Functions

virtual ~TVirtualPadPainter ()
 Virtual dtor.
 
virtual void ClearDrawable ()=0
 
virtual void CopyDrawable (Int_t device, Int_t px, Int_t py)=0
 
virtual Int_t CreateDrawable (UInt_t w, UInt_t h)=0
 
virtual void DestroyDrawable (Int_t device)=0
 
virtual void DrawBox (Double_t x1, Double_t y1, Double_t x2, Double_t y2, EBoxMode mode)=0
 
virtual void DrawFillArea (Int_t n, const Double_t *x, const Double_t *y)=0
 
virtual void DrawFillArea (Int_t n, const Float_t *x, const Float_t *y)=0
 
virtual void DrawLine (Double_t x1, Double_t y1, Double_t x2, Double_t y2)=0
 
virtual void DrawLineNDC (Double_t u1, Double_t v1, Double_t u2, Double_t v2)=0
 
virtual void DrawPixels (const unsigned char *pixelData, UInt_t width, UInt_t height, Int_t dstX, Int_t dstY, Bool_t enableAlphaBlending)=0
 
virtual void DrawPolyLine (Int_t n, const Double_t *x, const Double_t *y)=0
 
virtual void DrawPolyLine (Int_t n, const Float_t *x, const Float_t *y)=0
 
virtual void DrawPolyLineNDC (Int_t n, const Double_t *u, const Double_t *v)=0
 
virtual void DrawPolyMarker (Int_t n, const Double_t *x, const Double_t *y)=0
 
virtual void DrawPolyMarker (Int_t n, const Float_t *x, const Float_t *y)=0
 
virtual void DrawSegments (Int_t n, Double_t *x, Double_t *y)
 Draw N segments on the pad Exclude segments where both points match.
 
virtual void DrawSegmentsNDC (Int_t n, Double_t *u, Double_t *v)
 Draw N segments in NDC coordinates on the pad Exclude segments where both points match.
 
virtual void DrawText (Double_t x, Double_t y, const char *text, ETextMode mode)=0
 
virtual void DrawText (Double_t x, Double_t y, const wchar_t *text, ETextMode mode)=0
 
virtual void DrawTextNDC (Double_t u, Double_t v, const char *text, ETextMode mode)=0
 
virtual void DrawTextNDC (Double_t u, Double_t v, const wchar_t *text, ETextMode mode)=0
 
virtual void DrawTextUrl (Double_t x, Double_t y, const char *text, const char *url)
 Draw text with url link By default only text is drawn.
 
virtual Color_t GetFillColor () const =0
 
virtual Style_t GetFillStyle () const =0
 
virtual Color_t GetLineColor () const =0
 
virtual Style_t GetLineStyle () const =0
 
virtual Width_t GetLineWidth () const =0
 
virtual Color_t GetMarkerColor () const
 
virtual Size_t GetMarkerSize () const
 
virtual Style_t GetMarkerStyle () const
 
virtual TVirtualPSGetPS () const
 
virtual Short_t GetTextAlign () const =0
 
virtual Float_t GetTextAngle () const =0
 
virtual Color_t GetTextColor () const =0
 
virtual Font_t GetTextFont () const =0
 
virtual Float_t GetTextMagnitude () const =0
 
virtual Float_t GetTextSize () const =0
 
virtual void InitPainter ()
 Empty definition.
 
virtual void InvalidateCS ()
 Empty definition.
 
virtual TClassIsA () const
 
virtual Bool_t IsCocoa () const
 
virtual Bool_t IsNative () const
 
virtual Bool_t IsSupportAlpha () const
 
virtual Bool_t IsTransparent () const =0
 
virtual void LockPainter ()
 Empty definition.
 
virtual void NewPage ()
 
virtual void OnPad (TVirtualPad *)
 
virtual Int_t ResizeDrawable (Int_t, UInt_t, UInt_t)
 
virtual void SaveImage (TVirtualPad *pad, const char *fileName, Int_t type) const =0
 
virtual void SelectDrawable (Int_t device)=0
 
virtual void SetAttFill (const TAttFill &att)
 Set fill attributes.
 
virtual void SetAttLine (const TAttLine &att)
 Set line attributes.
 
virtual void SetAttMarker (const TAttMarker &att)
 Set marker attributes.
 
virtual void SetAttText (const TAttText &att)
 Set text attributes.
 
virtual void SetCursor (Int_t win, ECursor cursor)
 Set cursor for specified device, redirect to gVirtualX.
 
virtual void SetDoubleBuffer (Int_t device, Int_t mode)
 Set double buffer mode for specified device, redirect to gVirtualX.
 
virtual void SetDrawMode (Int_t, Int_t)
 
virtual void SetFillColor (Color_t fcolor)=0
 
virtual void SetFillStyle (Style_t fstyle)=0
 
virtual void SetLineColor (Color_t lcolor)=0
 
virtual void SetLineStyle (Style_t lstyle)=0
 
virtual void SetLineWidth (Width_t lwidth)=0
 
virtual void SetMarkerColor (Color_t=1)
 
virtual void SetMarkerSize (Size_t=1)
 
virtual void SetMarkerStyle (Style_t=1)
 
virtual void SetOpacity (Int_t percent)=0
 
virtual void SetTextAlign (Short_t align=11)=0
 
virtual void SetTextAngle (Float_t tangle=0)=0
 
virtual void SetTextColor (Color_t tcolor=1)=0
 
virtual void SetTextFont (Font_t tfont=62)=0
 
virtual void SetTextSize (Float_t tsize=1)=0
 
virtual void SetTextSizePixels (Int_t npixels)=0
 
virtual void Streamer (TBuffer &)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void UpdateDrawable (Int_t)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static TVirtualPadPainterPadPainter (Option_t *opt="")
 Create a pad painter of specified type.
 

#include <TVirtualPadPainter.h>

Inheritance diagram for TVirtualPadPainter:
[legend]

Member Enumeration Documentation

◆ EBoxMode

Enumerator
kHollow 
kFilled 

Definition at line 27 of file TVirtualPadPainter.h.

◆ ETextMode

Enumerator
kClear 
kOpaque 

Definition at line 28 of file TVirtualPadPainter.h.

Constructor & Destructor Documentation

◆ ~TVirtualPadPainter()

TVirtualPadPainter::~TVirtualPadPainter ( )
virtual

Virtual dtor.

Definition at line 34 of file TVirtualPadPainter.cxx.

Member Function Documentation

◆ Class()

static TClass * TVirtualPadPainter::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TVirtualPadPainter::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TVirtualPadPainter::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 151 of file TVirtualPadPainter.h.

◆ ClearDrawable()

virtual void TVirtualPadPainter::ClearDrawable ( )
pure virtual

◆ CopyDrawable()

virtual void TVirtualPadPainter::CopyDrawable ( Int_t device,
Int_t px,
Int_t py )
pure virtual

◆ CreateDrawable()

virtual Int_t TVirtualPadPainter::CreateDrawable ( UInt_t w,
UInt_t h )
pure virtual

◆ DeclFileName()

static const char * TVirtualPadPainter::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 151 of file TVirtualPadPainter.h.

◆ DestroyDrawable()

virtual void TVirtualPadPainter::DestroyDrawable ( Int_t device)
pure virtual

◆ DrawBox()

virtual void TVirtualPadPainter::DrawBox ( Double_t x1,
Double_t y1,
Double_t x2,
Double_t y2,
EBoxMode mode )
pure virtual

◆ DrawFillArea() [1/2]

virtual void TVirtualPadPainter::DrawFillArea ( Int_t n,
const Double_t * x,
const Double_t * y )
pure virtual

◆ DrawFillArea() [2/2]

virtual void TVirtualPadPainter::DrawFillArea ( Int_t n,
const Float_t * x,
const Float_t * y )
pure virtual

◆ DrawLine()

virtual void TVirtualPadPainter::DrawLine ( Double_t x1,
Double_t y1,
Double_t x2,
Double_t y2 )
pure virtual

◆ DrawLineNDC()

virtual void TVirtualPadPainter::DrawLineNDC ( Double_t u1,
Double_t v1,
Double_t u2,
Double_t v2 )
pure virtual

◆ DrawPixels()

virtual void TVirtualPadPainter::DrawPixels ( const unsigned char * pixelData,
UInt_t width,
UInt_t height,
Int_t dstX,
Int_t dstY,
Bool_t enableAlphaBlending )
pure virtual

◆ DrawPolyLine() [1/2]

virtual void TVirtualPadPainter::DrawPolyLine ( Int_t n,
const Double_t * x,
const Double_t * y )
pure virtual

◆ DrawPolyLine() [2/2]

virtual void TVirtualPadPainter::DrawPolyLine ( Int_t n,
const Float_t * x,
const Float_t * y )
pure virtual

◆ DrawPolyLineNDC()

virtual void TVirtualPadPainter::DrawPolyLineNDC ( Int_t n,
const Double_t * u,
const Double_t * v )
pure virtual

◆ DrawPolyMarker() [1/2]

virtual void TVirtualPadPainter::DrawPolyMarker ( Int_t n,
const Double_t * x,
const Double_t * y )
pure virtual

◆ DrawPolyMarker() [2/2]

virtual void TVirtualPadPainter::DrawPolyMarker ( Int_t n,
const Float_t * x,
const Float_t * y )
pure virtual

◆ DrawSegments()

void TVirtualPadPainter::DrawSegments ( Int_t n,
Double_t * x,
Double_t * y )
virtual

Draw N segments on the pad Exclude segments where both points match.

Reimplemented in TPadPainter, and TPadPainterPS.

Definition at line 78 of file TVirtualPadPainter.cxx.

◆ DrawSegmentsNDC()

void TVirtualPadPainter::DrawSegmentsNDC ( Int_t n,
Double_t * u,
Double_t * v )
virtual

Draw N segments in NDC coordinates on the pad Exclude segments where both points match.

Reimplemented in TPadPainter, and TPadPainterPS.

Definition at line 89 of file TVirtualPadPainter.cxx.

◆ DrawText() [1/2]

virtual void TVirtualPadPainter::DrawText ( Double_t x,
Double_t y,
const char * text,
ETextMode mode )
pure virtual

◆ DrawText() [2/2]

virtual void TVirtualPadPainter::DrawText ( Double_t x,
Double_t y,
const wchar_t * text,
ETextMode mode )
pure virtual

◆ DrawTextNDC() [1/2]

virtual void TVirtualPadPainter::DrawTextNDC ( Double_t u,
Double_t v,
const char * text,
ETextMode mode )
pure virtual

◆ DrawTextNDC() [2/2]

virtual void TVirtualPadPainter::DrawTextNDC ( Double_t u,
Double_t v,
const wchar_t * text,
ETextMode mode )
pure virtual

◆ DrawTextUrl()

void TVirtualPadPainter::DrawTextUrl ( Double_t x,
Double_t y,
const char * text,
const char * url )
virtual

Draw text with url link By default only text is drawn.

Reimplemented in TPadPainterPS, and TWebPadPainter.

Definition at line 100 of file TVirtualPadPainter.cxx.

◆ GetFillColor()

virtual Color_t TVirtualPadPainter::GetFillColor ( ) const
pure virtual

◆ GetFillStyle()

virtual Style_t TVirtualPadPainter::GetFillStyle ( ) const
pure virtual

◆ GetLineColor()

virtual Color_t TVirtualPadPainter::GetLineColor ( ) const
pure virtual

◆ GetLineStyle()

virtual Style_t TVirtualPadPainter::GetLineStyle ( ) const
pure virtual

◆ GetLineWidth()

virtual Width_t TVirtualPadPainter::GetLineWidth ( ) const
pure virtual

◆ GetMarkerColor()

virtual Color_t TVirtualPadPainter::GetMarkerColor ( ) const
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 76 of file TVirtualPadPainter.h.

◆ GetMarkerSize()

virtual Size_t TVirtualPadPainter::GetMarkerSize ( ) const
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 78 of file TVirtualPadPainter.h.

◆ GetMarkerStyle()

virtual Style_t TVirtualPadPainter::GetMarkerStyle ( ) const
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 77 of file TVirtualPadPainter.h.

◆ GetPS()

virtual TVirtualPS * TVirtualPadPainter::GetPS ( ) const
inlinevirtual

Reimplemented in TPadPainterPS.

Definition at line 146 of file TVirtualPadPainter.h.

◆ GetTextAlign()

virtual Short_t TVirtualPadPainter::GetTextAlign ( ) const
pure virtual

◆ GetTextAngle()

virtual Float_t TVirtualPadPainter::GetTextAngle ( ) const
pure virtual

◆ GetTextColor()

virtual Color_t TVirtualPadPainter::GetTextColor ( ) const
pure virtual

◆ GetTextFont()

virtual Font_t TVirtualPadPainter::GetTextFont ( ) const
pure virtual

◆ GetTextMagnitude()

virtual Float_t TVirtualPadPainter::GetTextMagnitude ( ) const
pure virtual

◆ GetTextSize()

virtual Float_t TVirtualPadPainter::GetTextSize ( ) const
pure virtual

◆ InitPainter()

void TVirtualPadPainter::InitPainter ( )
virtual

Empty definition.

Reimplemented in TGLPadPainter.

Definition at line 41 of file TVirtualPadPainter.cxx.

◆ InvalidateCS()

void TVirtualPadPainter::InvalidateCS ( )
virtual

Empty definition.

Reimplemented in TGLPadPainter.

Definition at line 48 of file TVirtualPadPainter.cxx.

◆ IsA()

virtual TClass * TVirtualPadPainter::IsA ( ) const
inlinevirtual
Returns
TClass describing current object

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 151 of file TVirtualPadPainter.h.

◆ IsCocoa()

virtual Bool_t TVirtualPadPainter::IsCocoa ( ) const
inlinevirtual

Reimplemented in TPadPainter, and TGLPadPainter.

Definition at line 145 of file TVirtualPadPainter.h.

◆ IsNative()

virtual Bool_t TVirtualPadPainter::IsNative ( ) const
inlinevirtual

Reimplemented in TPadPainter, and TGLPadPainter.

Definition at line 144 of file TVirtualPadPainter.h.

◆ IsSupportAlpha()

virtual Bool_t TVirtualPadPainter::IsSupportAlpha ( ) const
inlinevirtual

Reimplemented in TPadPainter, TGLPadPainter, and TWebPadPainter.

Definition at line 147 of file TVirtualPadPainter.h.

◆ IsTransparent()

virtual Bool_t TVirtualPadPainter::IsTransparent ( ) const
pure virtual

◆ LockPainter()

void TVirtualPadPainter::LockPainter ( )
virtual

Empty definition.

Reimplemented in TGLPadPainter.

Definition at line 55 of file TVirtualPadPainter.cxx.

◆ NewPage()

virtual void TVirtualPadPainter::NewPage ( )
inlinevirtual

Reimplemented in TPadPainterPS.

Definition at line 111 of file TVirtualPadPainter.h.

◆ OnPad()

virtual void TVirtualPadPainter::OnPad ( TVirtualPad * )
inlinevirtual

Reimplemented in TPadPainterPS.

Definition at line 142 of file TVirtualPadPainter.h.

◆ PadPainter()

TVirtualPadPainter * TVirtualPadPainter::PadPainter ( Option_t * opt = "")
static

Create a pad painter of specified type.

Definition at line 62 of file TVirtualPadPainter.cxx.

◆ ResizeDrawable()

virtual Int_t TVirtualPadPainter::ResizeDrawable ( Int_t ,
UInt_t ,
UInt_t  )
inlinevirtual

Reimplemented in TPadPainter, and TGLPadPainter.

Definition at line 93 of file TVirtualPadPainter.h.

◆ SaveImage()

virtual void TVirtualPadPainter::SaveImage ( TVirtualPad * pad,
const char * fileName,
Int_t type ) const
pure virtual

◆ SelectDrawable()

virtual void TVirtualPadPainter::SelectDrawable ( Int_t device)
pure virtual

◆ SetAttFill()

void TVirtualPadPainter::SetAttFill ( const TAttFill & att)
virtual

Set fill attributes.

Reimplemented in TPadPainter.

Definition at line 108 of file TVirtualPadPainter.cxx.

◆ SetAttLine()

void TVirtualPadPainter::SetAttLine ( const TAttLine & att)
virtual

Set line attributes.

Reimplemented in TPadPainter.

Definition at line 117 of file TVirtualPadPainter.cxx.

◆ SetAttMarker()

void TVirtualPadPainter::SetAttMarker ( const TAttMarker & att)
virtual

Set marker attributes.

Reimplemented in TPadPainter.

Definition at line 127 of file TVirtualPadPainter.cxx.

◆ SetAttText()

void TVirtualPadPainter::SetAttText ( const TAttText & att)
virtual

Set text attributes.

Reimplemented in TPadPainter.

Definition at line 137 of file TVirtualPadPainter.cxx.

◆ SetCursor()

void TVirtualPadPainter::SetCursor ( Int_t win,
ECursor cursor )
virtual

Set cursor for specified device, redirect to gVirtualX.

Definition at line 159 of file TVirtualPadPainter.cxx.

◆ SetDoubleBuffer()

void TVirtualPadPainter::SetDoubleBuffer ( Int_t device,
Int_t mode )
virtual

Set double buffer mode for specified device, redirect to gVirtualX.

Definition at line 149 of file TVirtualPadPainter.cxx.

◆ SetDrawMode()

virtual void TVirtualPadPainter::SetDrawMode ( Int_t ,
Int_t  )
inlinevirtual

Reimplemented in TPadPainter, and TGLPadPainter.

Definition at line 98 of file TVirtualPadPainter.h.

◆ SetFillColor()

virtual void TVirtualPadPainter::SetFillColor ( Color_t fcolor)
pure virtual

◆ SetFillStyle()

virtual void TVirtualPadPainter::SetFillStyle ( Style_t fstyle)
pure virtual

◆ SetLineColor()

virtual void TVirtualPadPainter::SetLineColor ( Color_t lcolor)
pure virtual

◆ SetLineStyle()

virtual void TVirtualPadPainter::SetLineStyle ( Style_t lstyle)
pure virtual

◆ SetLineWidth()

virtual void TVirtualPadPainter::SetLineWidth ( Width_t lwidth)
pure virtual

◆ SetMarkerColor()

virtual void TVirtualPadPainter::SetMarkerColor ( Color_t = 1)
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 80 of file TVirtualPadPainter.h.

◆ SetMarkerSize()

virtual void TVirtualPadPainter::SetMarkerSize ( Size_t = 1)
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 82 of file TVirtualPadPainter.h.

◆ SetMarkerStyle()

virtual void TVirtualPadPainter::SetMarkerStyle ( Style_t = 1)
inlinevirtual

Reimplemented in TPadPainter, TPadPainterPS, TGLPadPainter, and TWebPadPainter.

Definition at line 81 of file TVirtualPadPainter.h.

◆ SetOpacity()

virtual void TVirtualPadPainter::SetOpacity ( Int_t percent)
pure virtual

◆ SetTextAlign()

virtual void TVirtualPadPainter::SetTextAlign ( Short_t align = 11)
pure virtual

◆ SetTextAngle()

virtual void TVirtualPadPainter::SetTextAngle ( Float_t tangle = 0)
pure virtual

◆ SetTextColor()

virtual void TVirtualPadPainter::SetTextColor ( Color_t tcolor = 1)
pure virtual

◆ SetTextFont()

virtual void TVirtualPadPainter::SetTextFont ( Font_t tfont = 62)
pure virtual

◆ SetTextSize()

virtual void TVirtualPadPainter::SetTextSize ( Float_t tsize = 1)
pure virtual

◆ SetTextSizePixels()

virtual void TVirtualPadPainter::SetTextSizePixels ( Int_t npixels)
pure virtual

◆ Streamer()

virtual void TVirtualPadPainter::Streamer ( TBuffer & )
virtual

◆ StreamerNVirtual()

void TVirtualPadPainter::StreamerNVirtual ( TBuffer & ClassDef_StreamerNVirtual_b)
inline

Definition at line 151 of file TVirtualPadPainter.h.

◆ UpdateDrawable()

virtual void TVirtualPadPainter::UpdateDrawable ( Int_t )
inlinevirtual

Reimplemented in TPadPainter, and TGLPadPainter.

Definition at line 97 of file TVirtualPadPainter.h.


The documentation for this class was generated from the following files: