class TEveCalo3DGL: public TGLObject


 OpenGL renderer class for TEveCalo3D.

Function Members (Methods)

public:
TEveCalo3DGL()
virtual~TEveCalo3DGL()
voidTGLLogicalShape::AddRef(TGLPhysicalShape* phys) const
const TGLBoundingBox&TGLLogicalShape::BoundingBox() const
static TClass*Class()
voidTGLLogicalShape::DestroyPhysicals()
virtual voidDirectDraw(TGLRnrCtx& rnrCtx) const
virtual voidTGLLogicalShape::DLCacheClear()
virtual voidTGLLogicalShape::DLCacheDrop()
virtual voidTGLLogicalShape::DLCachePurge()
virtual UInt_tTGLLogicalShape::DLOffset(Short_t) const
virtual voidTGLLogicalShape::Draw(TGLRnrCtx& rnrCtx) 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_tShouldDLCache(const TGLRnrCtx& rnrCtx) const
virtual voidShowMembers(TMemberInspector& insp, char* parent)
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()
protected:
voidTGLLogicalShape::PurgeDLRange(UInt_t base, Int_t size) const
voidTGLObject::SetAxisAlignedBBox(const Float_t* p)
voidTGLObject::SetAxisAlignedBBox(Float_t xmin, Float_t xmax, Float_t ymin, Float_t ymax, Float_t zmin, Float_t zmax)
Bool_tTGLObject::SetModelCheckClass(TObject* obj, TClass* cls)
private:
TEveCalo3DGL(const TEveCalo3DGL&)
voidCrossProduct(const Float_t* a, const Float_t* b, const Float_t* c, Float_t* out) const
TEveCalo3DGL&operator=(const TEveCalo3DGL&)
Float_tRenderBarrelCell(const TEveCaloData::CellData_t& cell, Float_t towerH, Float_t offset) const
voidRenderBox(const Float_t* pnts) const
Float_tRenderEndCapCell(const TEveCaloData::CellData_t& cell, Float_t towerH, Float_t offset) const
voidRenderGrid(TGLRnrCtx& rnrCtx) const
voidRenderGridBarrel() const
voidRenderGridEndCap() 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
TEveCalo3D*fMModel object.
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!)

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TEveCalo3DGL()
 Constructor.
Bool_t SetModel(TObject* obj, Option_t* opt = 0)
 Set model object.
void SetBBox()
 Set bounding box.
Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const
 Override from TGLObject.
 To account for large point-sizes we modify the projection matrix
 during selection and thus we need a direct draw.
void CrossProduct(const Float_t* a, const Float_t* b, const Float_t* c, Float_t* out) const
 Calculate cross-product.
void RenderGridEndCap() const
 Render end cap grid.
void RenderGridBarrel() const
 Render barrel grid.
void RenderGrid(TGLRnrCtx& rnrCtx) const
 Draw frame reading eta, phi axis.
void RenderBox(const Float_t* pnts) const
 Render box with given points.
Float_t RenderBarrelCell(const TEveCaloData::CellData_t& cell, Float_t towerH, Float_t offset) const
 Render barrel cell.
Float_t RenderEndCapCell(const TEveCaloData::CellData_t& cell, Float_t towerH, Float_t offset) const
 Render an endcap cell.
void DirectDraw(TGLRnrCtx& rnrCtx) const
 GL rendering.
void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec)
 Processes secondary selection from TGLViewer.
TEveCalo3DGL(const TEveCalo3DGL& )
TEveCalo3DGL& operator=(const TEveCalo3DGL& )
virtual ~TEveCalo3DGL()
{}
Bool_t SupportsSecondarySelect() const
{ return kTRUE; }

Author: Matevz Tadel 2007
Last change: root/eve:$Id: TEveCalo3DGL.h 26772 2008-12-09 19:57:49Z matevz $
Last generated: 2008-12-10 08:21
Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.