12 #ifndef ROOT_TEveCaloLegoGL 13 #define ROOT_TEveCaloLegoGL 44 fX0 = fX1 = fY0 = fY1 = 0;
void DrawSelectedCells(TGLRnrCtx &rnrCtx, TEveCaloData::vCellId_t cells) const
Draw selected cells in highlight mode.
TEveCaloData * GetData() const
void Make3DDisplayListRebin(TEveCaloData::RebinData_t &rebinData, SliceDLMap_t &map, Bool_t select) const
Create display-list that draws histogram bars for rebinned data.
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Bool_t GetWrapTwoPi() const
virtual ~TEveCaloLegoGL()
Destructor.
void PrepareCell2DDataRebin(TEveCaloData::RebinData_t &rebinData, vCell2D_t &cells2D) const
Prepare cells 2D rebinned data for drawing.
constexpr Double_t TwoPi()
virtual void DLCachePurge()
Unregister all display-lists.
OpenGL renderer class for TEveCaloLego.
void MakeQuad(Float_t x, Float_t y, Float_t z, Float_t xw, Float_t yw, Float_t zh) const
Draw an axis-aligned box using quads.
void DrawCells3D(TGLRnrCtx &rnrCtx) const
Render the calo lego-plot with OpenGL.
Float_t GetPhiMax() const
TEveCaloLegoGL()
Constructor.
static constexpr double ps
Short_t Min(Short_t a, Short_t b)
std::vector< Cell2D_t >::iterator vCell2D_i
TGLAxisPainter fAxisPainter
void DrawHistBase(TGLRnrCtx &rnrCtx) const
Draw basic histogram components: x-y grid.
Concrete physical shape - a GL drawable.
void PrepareCell2DData(TEveCaloData::vCellId_t &cellList, vCell2D_t &cells2D) const
Prepare cells 2D data non-rebinned for drawing.
void Make3DDisplayList(TEveCaloData::vCellId_t &cellList, SliceDLMap_t &map, Bool_t select) const
Create display-list that draws histogram bars for non-rebinned data.
void RebinAxis(TAxis *orig, TAxis *curr) const
Rebin eta, phi axis.
#define ClassDef(name, id)
virtual Bool_t SupportsSecondarySelect() const
Int_t fCurrentPixelsPerBin
Float_t GetPhiMin() const
TEveVector fXAxisTitlePos
void DrawCells2D(TGLRnrCtx &rnrCtx, vCell2D_t &cells2D) const
Draw cells in top view.
void DrawAxis2D(TGLRnrCtx &rnrCtx) const
Draw XY axis.
Base-class for direct OpenGL renderers.
TEveVector fYAxisTitlePos
std::vector< CellId_t > vCellId_t
void GetScaleForMatrix(Float_t &sx, Float_t &sy, Float_t &sz) const
Get scale for matrix.
TEveCaloData::RebinData_t fRebinData
TEveVector fBackPlaneYConst[2]
void DrawAxis3D(TGLRnrCtx &rnrCtx) const
Draw z-axis and z-box at the appropriate grid corner-point including tick-marks and labels...
void SetAxis3DTitlePos(TGLRnrCtx &rnrCtx, Float_t x0, Float_t x1, Float_t y0, Float_t y1) const
Set the axis 3D title position.
virtual void DLCacheDrop()
Drop all display-list definitions.
Class to manage histogram axis.
Standard selection record including information about containing scene and details ob out selected ob...
void WrapTwoPi(Float_t &min, Float_t &max) const
void SetGeom(Float_t x0, Float_t x1, Float_t y0, Float_t y1)
std::map< Int_t, UInt_t > SliceDLMap_t
virtual void DrawHighlight(TGLRnrCtx &rnrCtx, const TGLPhysicalShape *ps, Int_t lvl=-1) const
Draw highligted cells.
TEveCaloLegoGL & operator=(const TEveCaloLegoGL &)
virtual void SetBBox()
Set bounding box.
std::vector< Cell2D_t > vCell2D_t
Visualization of calorimeter data as eta/phi histogram.
static const double x1[5]
virtual Bool_t AlwaysSecondarySelect() const
std::map< Int_t, UInt_t >::iterator SliceDLMap_i
Mother of all ROOT objects.
virtual Bool_t SetModel(TObject *obj, const Option_t *opt=0)
Set model object.
you should not use this method at all Int_t Int_t z
virtual void ProcessSelection(TGLRnrCtx &rnrCtx, TGLSelectRecord &rec)
Processes tower selection from TGLViewer.
Int_t GetGridStep(TGLRnrCtx &rnrCtx) const
Calculate view-dependent grid density.
TEveVector fBackPlaneXConst[2]
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const
Draw the object.
TEveVector fZAxisTitlePos
GL-overlay control GUI for TEveCaloLego.
Cell2D_t(Int_t id, Float_t sumVal, Int_t maxSlice)