ATLAS Offline Software
Public Types | Public Member Functions | List of all members
MuonValR4::IRootVisualizationService::ICanvasObject Struct Referenceabstract

Interface to the container class to temporarily cache the ROOT objects to be drawn on a TCanvas and then saved to disk. More...

#include <IRootVisualizationService.h>

Inheritance diagram for MuonValR4::IRootVisualizationService::ICanvasObject:
Collaboration diagram for MuonValR4::IRootVisualizationService::ICanvasObject:

Public Types

enum  AxisRanges : std::uint8_t { AxisRanges::xLow, AxisRanges::xHigh, AxisRanges::yLow, AxisRanges::yHigh }
 Enum to select the corner coordinates shown by the plot. More...
 

Public Member Functions

 ~ICanvasObject ()=default
 Default destructor. More...
 
virtual double corner (const AxisRanges r) const =0
 Retrieves a corner coordinate of the drawn canvas. More...
 
virtual void expandPad (const double x, const double y)=0
 Expands the axes of the pad such that the coordinates are guaranteed to appear at least at the Canvas edges. More...
 
virtual void setRangeScale (const double s, bool quadCan=true)=0
 To ensure that the drawn objects are not cut by the axis limits, a flat scale-factor on the drawn axis intervals can be applied. More...
 
virtual void add (PrimitivePtr_t &&drawMe, const std::string &drawOpt="")=0
 Add a TObject to the ICanvasObject for later drawing onto a TCanvas. More...
 
virtual void add (PrimitiveVec_t &&drawMe)=0
 Add a vector of TObjects to the ICanvasObject for later drawing onto a TCanvas. More...
 
virtual void setAxisTitles (const std::string &xTitle="", const std::string &yTitle="", const std::string &zTitle="")=0
 Define the titles of the Canvas axes. More...
 
virtual void trash ()=0
 If no object has been drawn mark the plot as junk. More...
 

Detailed Description

Interface to the container class to temporarily cache the ROOT objects to be drawn on a TCanvas and then saved to disk.

Definition at line 61 of file IRootVisualizationService.h.

Member Enumeration Documentation

◆ AxisRanges

enum MuonValR4::IRootVisualizationService::ICanvasObject::AxisRanges : std::uint8_t
strong

Enum to select the corner coordinates shown by the plot.

Enumerator
xLow 
xHigh 
yLow 
yHigh 

Definition at line 66 of file IRootVisualizationService.h.

66  : std::uint8_t{
67  xLow, xHigh, yLow, yHigh
68  };

Constructor & Destructor Documentation

◆ ~ICanvasObject()

MuonValR4::IRootVisualizationService::ICanvasObject::~ICanvasObject ( )
default

Default destructor.

Member Function Documentation

◆ add() [1/2]

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::add ( PrimitivePtr_t &&  drawMe,
const std::string &  drawOpt = "" 
)
pure virtual

Add a TObject to the ICanvasObject for later drawing onto a TCanvas.

Parameters
drawMeUnique_ptr to the object to be drawn
drawOptOption to be parsed to the draw command later (e.g. HIST)

Implemented in MuonValR4::detail::DrawCanvasObject.

◆ add() [2/2]

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::add ( PrimitiveVec_t &&  drawMe)
pure virtual

Add a vector of TObjects to the ICanvasObject for later drawing onto a TCanvas.

Parameters
drawMeList of unique TObject pointers

◆ corner()

virtual double MuonValR4::IRootVisualizationService::ICanvasObject::corner ( const AxisRanges  r) const
pure virtual

Retrieves a corner coordinate of the drawn canvas.

Parameters
rCoordinate to return

Implemented in MuonValR4::detail::DrawCanvasObject.

◆ expandPad()

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::expandPad ( const double  x,
const double  y 
)
pure virtual

Expands the axes of the pad such that the coordinates are guaranteed to appear at least at the Canvas edges.

Parameters
xExpansion in the width of the canvas
yExpansion in the height of the canvas

Implemented in MuonValR4::detail::DrawCanvasObject.

◆ setAxisTitles()

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::setAxisTitles ( const std::string &  xTitle = "",
const std::string &  yTitle = "",
const std::string &  zTitle = "" 
)
pure virtual

Define the titles of the Canvas axes.

Parameters
xTitleTitle pf the x-axis
yTitleTitle pf the y-axis
zTitleTitle pf the z-axis

Implemented in MuonValR4::detail::DrawCanvasObject.

◆ setRangeScale()

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::setRangeScale ( const double  s,
bool  quadCan = true 
)
pure virtual

To ensure that the drawn objects are not cut by the axis limits, a flat scale-factor on the drawn axis intervals can be applied.

Parameters
sscale-factor >1.
quadCanSwitch toggling whether the drawn intervals have an equal size

Implemented in MuonValR4::detail::DrawCanvasObject.

◆ trash()

virtual void MuonValR4::IRootVisualizationService::ICanvasObject::trash ( )
pure virtual

If no object has been drawn mark the plot as junk.

Implemented in MuonValR4::detail::DrawCanvasObject.


The documentation for this struct was generated from the following file:
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:558