ROOT logo
ROOT » GRAF3D » EVE » TEveCaloLegoGL

class TEveCaloLegoGL: public TGLObject

 OpenGL renderer class for TEveCaloLego.

Function Members (Methods)

public:
TEveCaloLegoGL()
virtual~TEveCaloLegoGL()
voidTGLLogicalShape::AddRef(TGLPhysicalShape* phys) const
virtual Bool_tAlwaysSecondarySelect() const
const TGLBoundingBox&TGLLogicalShape::BoundingBox() const
static TClass*Class()
voidTGLLogicalShape::DestroyPhysicals()
virtual voidDirectDraw(TGLRnrCtx& rnrCtx) const
virtual voidTGLLogicalShape::DLCacheClear()
virtual voidDLCacheDrop()
virtual voidDLCachePurge()
virtual UInt_tTGLLogicalShape::DLOffset(Short_t) const
virtual voidTGLLogicalShape::Draw(TGLRnrCtx& rnrCtx) const
virtual voidDrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps, Int_t lvl = -1) const
TObject*TGLLogicalShape::GetExternal() const
const TGLPhysicalShape*TGLLogicalShape::GetFirstPhysical() const
static TClass*TGLObject::GetGLRenderer(TClass* isa)
TGLScene*TGLLogicalShape::GetScene() const
TObject*TGLLogicalShape::ID() const
virtual Bool_tTGLLogicalShape::IgnoreSizeForOfInterest() const
voidTGLLogicalShape::InvokeContextMenu(TContextMenu& menu, UInt_t x, UInt_t y) const
virtual TClass*IsA() const
virtual Bool_tTGLObject::KeepDuringSmartRefresh() const
virtual voidProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec)
virtual Short_tTGLLogicalShape::QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const
UInt_tTGLLogicalShape::Ref() const
virtual voidSetBBox()
Bool_tTGLLogicalShape::SetDLCache(Bool_t cached)
virtual Bool_tSetModel(TObject* obj, Option_t* opt = 0)
virtual Bool_tTGLObject::ShouldDLCache(const TGLRnrCtx& rnrCtx) const
virtual voidShowMembers(TMemberInspector& insp)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
voidTGLLogicalShape::StrongRef(Bool_t strong) const
voidTGLLogicalShape::SubRef(TGLPhysicalShape* phys) const
virtual TGLLogicalShape::ELODAxesTGLLogicalShape::SupportedLODAxes() const
virtual Bool_tSupportsSecondarySelect() const
UInt_tTGLLogicalShape::UnrefFirstPhysical()
virtual voidTGLObject::UpdateBoundingBox()
voidTGLLogicalShape::UpdateBoundingBoxesOfPhysicals()
private:
TEveCaloLegoGL(const TEveCaloLegoGL&)
voidDrawAxis2D(TGLRnrCtx& rnrCtx) const
voidDrawAxis3D(TGLRnrCtx& rnrCtx) const
voidDrawCells2D(TGLRnrCtx& rnrCtx, TEveCaloLegoGL::vCell2D_t& cells2D) const
voidDrawCells3D(TGLRnrCtx& rnrCtx) const
voidDrawHistBase(TGLRnrCtx& rnrCtx) const
voidDrawSelectedCells(TGLRnrCtx& rnrCtx, TEveCaloData::vCellId_t cells) const
Int_tGetGridStep(TGLRnrCtx& rnrCtx) const
voidGetScaleForMatrix(Float_t& sx, Float_t& sy, Float_t& sz) const
voidMake3DDisplayList(TEveCaloData::vCellId_t& cellList, TEveCaloLegoGL::SliceDLMap_t& map, Bool_t select) const
voidMake3DDisplayListRebin(TEveCaloData::RebinData_t& rebinData, TEveCaloLegoGL::SliceDLMap_t& map, Bool_t select) const
voidMakeQuad(Float_t x, Float_t y, Float_t z, Float_t xw, Float_t yw, Float_t zh) const
TEveCaloLegoGL&operator=(const TEveCaloLegoGL&)
voidPrepareCell2DData(TEveCaloData::vCellId_t& cellList, TEveCaloLegoGL::vCell2D_t& cells2D) const
voidPrepareCell2DDataRebin(TEveCaloData::RebinData_t& rebinData, TEveCaloLegoGL::vCell2D_t& cells2D) const
voidRebinAxis(TAxis* orig, TAxis* curr) const
voidSetAxis3DTitlePos(TGLRnrCtx& rnrCtx, Float_t x0, Float_t x1, Float_t y0, Float_t y1) const
voidWrapTwoPi(Float_t& min, Float_t& max) const

Data Members

public:
enum TGLLogicalShape::ELODAxes { kLODAxesNone
kLODAxesX
kLODAxesY
kLODAxesZ
kLODAxesAll
};
protected:
TGLBoundingBoxTGLLogicalShape::fBoundingBox! Shape's bounding box.
UInt_tTGLLogicalShape::fDLBase! display-list id base
Bool_tTGLLogicalShape::fDLCache! use display list caching
Int_tTGLLogicalShape::fDLSize! display-list size for different LODs
UShort_tTGLLogicalShape::fDLValid! display-list validity bit-field
TObject*TGLLogicalShape::fExternalObj! Also plays the role of ID.
TGLPhysicalShape*TGLLogicalShape::fFirstPhysical! first replica
Bool_tTGLObject::fMultiColorAre multiple colors used for object rendering.
Bool_tTGLLogicalShape::fOwnExtObj! External object is a fake
UInt_tTGLLogicalShape::fRef! physical instance ref counting
Bool_tTGLLogicalShape::fRefStrong! Strong ref (delete on 0 ref); not in scene
TGLScene*TGLLogicalShape::fScene! scene where object is stored (can be zero!)
private:
TGLAxisPainterfAxisPainter
TEveVectorfBackPlaneXConst[2]
TEveVectorfBackPlaneYConst[2]
Int_tfBinStep
vector<TEveCaloLegoGL::Cell2D_t,allocator<TEveCaloLegoGL::Cell2D_t> >fCells2D
Bool_tfCells3D
Int_tfCurrentPixelsPerBin
Bool_tfDLCacheOK
map<int,unsigned int>fDLMap
TAxis*fEtaAxis
Color_tfFontColor
Color_tfGridColor
TEveCaloLego*fM
Float_tfMaxVal
TAxis*fPhiAxis
TEveCaloData::RebinData_tfRebinData
Float_tfValToPixeltop logaritmic viewview
TEveVectorfXAxisTitlePos
TEveVectorfYAxisTitlePos
TAxis*fZAxis
TEveVectorfZAxisTitlePos

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TEveCaloLegoGL()
 Constructor.
~TEveCaloLegoGL()
 Destructor.
Bool_t SetModel(TObject* obj, Option_t* opt = 0)
 Set model object.
void SetBBox()
 Set bounding box.
void DLCacheDrop()
 Drop all display-list definitions.
void DLCachePurge()
 Unregister all display-lists.
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 Make3DDisplayList(TEveCaloData::vCellId_t& cellList, TEveCaloLegoGL::SliceDLMap_t& map, Bool_t select) const
 Create display-list that draws histogram bars for non-rebinned data.
 It is used for filled and outline passes.
void Make3DDisplayListRebin(TEveCaloData::RebinData_t& rebinData, TEveCaloLegoGL::SliceDLMap_t& map, Bool_t select) const
 Create display-list that draws histogram bars for rebinned data.
 It is used for filled and outline passes.
void SetAxis3DTitlePos(TGLRnrCtx& rnrCtx, Float_t x0, Float_t x1, Float_t y0, Float_t y1) const
void DrawAxis3D(TGLRnrCtx& rnrCtx) const
 Draw z-axis and z-box at the appropriate grid corner-point including
 tick-marks and labels.
void GetScaleForMatrix(Float_t& sx, Float_t& sy, Float_t& sz) const
void DrawAxis2D(TGLRnrCtx& rnrCtx) const
 Draw XY axis.
Int_t GetGridStep(TGLRnrCtx& rnrCtx) const
 Calculate view-dependent grid density.
void RebinAxis(TAxis* orig, TAxis* curr) const
 Rebin eta, phi axis.
void DrawHistBase(TGLRnrCtx& rnrCtx) const
 Draw basic histogram components: x-y grid
void DrawCells3D(TGLRnrCtx& rnrCtx) const
 Render the calo lego-plot with OpenGL.
void PrepareCell2DData(TEveCaloData::vCellId_t& cellList, TEveCaloLegoGL::vCell2D_t& cells2D) const
 Prepare cells 2D data non-rebinned for drawing.
void PrepareCell2DDataRebin(TEveCaloData::RebinData_t& rebinData, TEveCaloLegoGL::vCell2D_t& cells2D) const
 Prepare cells 2D rebinned data for drawing.
void DrawCells2D(TGLRnrCtx& rnrCtx, TEveCaloLegoGL::vCell2D_t& cells2D) const
 Draw cells in top view.
void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps, Int_t lvl = -1) const
 Draw highligted cells.
void DrawSelectedCells(TGLRnrCtx& rnrCtx, TEveCaloData::vCellId_t cells) const
 Draw selected cells in highlight mode.
void DirectDraw(TGLRnrCtx& rnrCtx) const
 Draw the object.
void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec)
 Processes tower selection from TGLViewer.
void WrapTwoPi(Float_t& min, Float_t& max) const
TEveCaloLegoGL(const TEveCaloLegoGL& )
TEveCaloLegoGL& operator=(const TEveCaloLegoGL& )
Bool_t SupportsSecondarySelect() const
{ return kTRUE; }
Bool_t AlwaysSecondarySelect() const
{ return kTRUE; }