TEveCalo3DGL Class Reference

#include <TEveCalo3DGL.h>

Inheritance diagram for TEveCalo3DGL:

TGLObject TGLObject TGLLogicalShape TGLLogicalShape TGLLogicalShape TGLLogicalShape List of all members.

Public Member Functions

 TEveCalo3DGL ()
virtual ~TEveCalo3DGL ()
virtual Bool_t SetModel (TObject *obj, const Option_t *opt=0)
virtual void SetBBox ()
virtual void DirectDraw (TGLRnrCtx &rnrCtx) const
virtual void DrawHighlight (TGLRnrCtx &rnrCtx, const TGLPhysicalShape *ps, Int_t lvl=-1) const
virtual Bool_t ShouldDLCache (const TGLRnrCtx &rnrCtx) const
virtual Bool_t SupportsSecondarySelect () const
virtual Bool_t AlwaysSecondarySelect () const
virtual void ProcessSelection (TGLRnrCtx &rnrCtx, TGLSelectRecord &rec)
 ClassDef (TEveCalo3DGL, 0)
 TEveCalo3DGL ()
virtual ~TEveCalo3DGL ()
virtual Bool_t SetModel (TObject *obj, const Option_t *opt=0)
virtual void SetBBox ()
virtual void DirectDraw (TGLRnrCtx &rnrCtx) const
virtual void DrawHighlight (TGLRnrCtx &rnrCtx, const TGLPhysicalShape *ps, Int_t lvl=-1) const
virtual Bool_t ShouldDLCache (const TGLRnrCtx &rnrCtx) const
virtual Bool_t SupportsSecondarySelect () const
virtual Bool_t AlwaysSecondarySelect () const
virtual void ProcessSelection (TGLRnrCtx &rnrCtx, TGLSelectRecord &rec)
 ClassDef (TEveCalo3DGL, 0)

Protected Attributes

TEveCalo3DfM
std::vector< Float_tfOffset
TEveCalo3DfM
std::vector< Float_tfOffset

Private Member Functions

 TEveCalo3DGL (const TEveCalo3DGL &)
TEveCalo3DGLoperator= (const TEveCalo3DGL &)
void CrossProduct (const Float_t a[3], const Float_t b[3], const Float_t c[3], Float_t out[3]) const
void RenderBox (const Float_t pnts[8]) const
void RenderGridEndCap () const
void RenderGridBarrel () const
void RenderGrid (TGLRnrCtx &rnrCtx) const
void RenderBarrelCell (const TEveCaloData::CellGeom_t &cell, Float_t towerH, Float_t &offset) const
void RenderEndCapCell (const TEveCaloData::CellGeom_t &cell, Float_t towerH, Float_t &offset) const
void DrawSelectedCells (TEveCaloData::vCellId_t cells) const
 TEveCalo3DGL (const TEveCalo3DGL &)
TEveCalo3DGLoperator= (const TEveCalo3DGL &)
void CrossProduct (const Float_t a[3], const Float_t b[3], const Float_t c[3], Float_t out[3]) const
void RenderBox (const Float_t pnts[8]) const
void RenderGridEndCap () const
void RenderGridBarrel () const
void RenderGrid (TGLRnrCtx &rnrCtx) const
void RenderBarrelCell (const TEveCaloData::CellGeom_t &cell, Float_t towerH, Float_t &offset) const
void RenderEndCapCell (const TEveCaloData::CellGeom_t &cell, Float_t towerH, Float_t &offset) const
void DrawSelectedCells (TEveCaloData::vCellId_t cells) const

Detailed Description

Definition at line 20 of file TEveCalo3DGL.h.


Constructor & Destructor Documentation

TEveCalo3DGL::TEveCalo3DGL ( const TEveCalo3DGL  )  [private]

TEveCalo3DGL::TEveCalo3DGL (  ) 

Definition at line 33 of file TEveCalo3DGL.cxx.

References TGLObject::fMultiColor, and kTRUE.

virtual TEveCalo3DGL::~TEveCalo3DGL (  )  [inline, virtual]

Definition at line 44 of file TEveCalo3DGL.h.

TEveCalo3DGL::TEveCalo3DGL ( const TEveCalo3DGL  )  [private]

TEveCalo3DGL::TEveCalo3DGL (  ) 

virtual TEveCalo3DGL::~TEveCalo3DGL (  )  [inline, virtual]

Definition at line 44 of file TEveCalo3DGL.h.


Member Function Documentation

TEveCalo3DGL& TEveCalo3DGL::operator= ( const TEveCalo3DGL  )  [private]

void TEveCalo3DGL::CrossProduct ( const Float_t  a[3],
const Float_t  b[3],
const Float_t  c[3],
Float_t  out[3] 
) const [inline, private]

Definition at line 71 of file TEveCalo3DGL.cxx.

References v1.

Referenced by RenderBox().

void TEveCalo3DGL::RenderBox ( const Float_t  pnts[8]  )  const [private]

Definition at line 302 of file TEveCalo3DGL.cxx.

References RootCsg::cross(), CrossProduct(), GL_POLYGON, glBegin(), glEnd(), glNormal3fv(), glVertex3fv(), and p.

Referenced by RenderBarrelCell(), and RenderEndCapCell().

void TEveCalo3DGL::RenderGridEndCap (  )  const [private]

Definition at line 85 of file TEveCalo3DGL.cxx.

References TMath::Abs(), TMath::Cos(), ROOT::Math::etaMax(), TEveCaloData::EtaToTheta(), fM, TEveCaloViz::GetBarrelRadius(), TAxis::GetBinLowEdge(), TAxis::GetBinUpEdge(), TEveCaloViz::GetData(), TEveCaloViz::GetEndCapPos(), TEveCaloData::GetEtaBins(), TEveCaloViz::GetEtaMax(), TEveCaloViz::GetEtaMin(), TAxis::GetNbins(), TEveCaloData::GetPhiBins(), TEveCaloViz::GetPhiMax(), TEveCaloViz::GetPhiMin(), TEveCaloViz::GetTransitionEta(), glVertex3f(), i, TEveUtil::IsU1IntervalContainedByMinMax(), j, r1, r2, TMath::Sign(), TMath::Sin(), TMath::Tan(), theta, and trans.

Referenced by RenderGrid().

void TEveCalo3DGL::RenderGridBarrel (  )  const [private]

Definition at line 181 of file TEveCalo3DGL.cxx.

References TMath::Abs(), TMath::Cos(), ROOT::Math::etaMax(), TEveCaloData::EtaToTheta(), fM, TEveCaloViz::GetBarrelRadius(), TAxis::GetBinLowEdge(), TAxis::GetBinUpEdge(), TEveCaloViz::GetData(), TEveCaloViz::GetEndCapPos(), TEveCaloData::GetEtaBins(), TEveCaloViz::GetEtaMax(), TEveCaloViz::GetEtaMin(), TAxis::GetNbins(), TEveCaloData::GetPhiBins(), TEveCaloViz::GetPhiMax(), TEveCaloViz::GetPhiMin(), TEveCaloViz::GetTransitionEta(), glVertex3f(), i, TEveUtil::IsU1IntervalContainedByMinMax(), j, TMath::Sin(), TMath::Tan(), theta, trans, x, and y.

Referenced by RenderGrid().

void TEveCalo3DGL::RenderGrid ( TGLRnrCtx rnrCtx  )  const [private]

Definition at line 255 of file TEveCalo3DGL.cxx.

References TGLUtil::ColorTransparency(), ROOT::Math::etaMax(), TEveCalo3D::fFrameColor, TEveCalo3D::fFrameTransparency, fM, TEveCaloViz::GetEtaMax(), TEveCaloViz::GetEtaMin(), TEveCalo3D::GetFrameWidth(), TEveCalo3D::GetRnrBarrelFrame(), TEveCalo3D::GetRnrEndCapFrame(), TEveCaloViz::GetTransitionEta(), GL_BLEND, GL_DEPTH_BUFFER_BIT, GL_ENABLE_BIT, GL_FALSE, GL_LIGHTING, GL_LINES, GL_ONE_MINUS_SRC_ALPHA, GL_SRC_ALPHA, glBegin(), glBlendFunc(), glDepthMask(), glEnable(), glEnd(), glPopAttrib(), glPushAttrib(), TGLRnrCtx::Highlight(), TGLRnrCtx::IsDrawPassOutlineLine(), kFALSE, TGLUtil::LineWidth(), RenderGridBarrel(), RenderGridEndCap(), TGLRnrCtx::Selection(), and trans.

Referenced by DirectDraw().

void TEveCalo3DGL::RenderBarrelCell ( const TEveCaloData::CellGeom_t cell,
Float_t  towerH,
Float_t offset 
) const [private]

Definition at line 378 of file TEveCalo3DGL.cxx.

References TMath::Cos(), fM, TEveCaloViz::GetBarrelRadius(), TEveCaloData::CellGeom_t::PhiMax(), TEveCaloData::CellGeom_t::PhiMin(), r1, r2, RenderBox(), TMath::Sin(), TMath::Tan(), TEveCaloData::CellGeom_t::ThetaMax(), and TEveCaloData::CellGeom_t::ThetaMin().

Referenced by DirectDraw(), and DrawSelectedCells().

void TEveCalo3DGL::RenderEndCapCell ( const TEveCaloData::CellGeom_t cell,
Float_t  towerH,
Float_t offset 
) const [private]

Definition at line 448 of file TEveCalo3DGL.cxx.

References TMath::Cos(), TEveCaloData::CellGeom_t::EtaMin(), TEveCaloViz::fEndCapPos, fM, TEveCaloData::CellGeom_t::PhiMax(), TEveCaloData::CellGeom_t::PhiMin(), RenderBox(), TMath::Sign(), TMath::Sin(), TMath::Tan(), TEveCaloData::CellGeom_t::ThetaMax(), and TEveCaloData::CellGeom_t::ThetaMin().

Referenced by DirectDraw(), and DrawSelectedCells().

void TEveCalo3DGL::DrawSelectedCells ( TEveCaloData::vCellId_t  cells  )  const [private]

Definition at line 618 of file TEveCalo3DGL.cxx.

References TMath::Abs(), TEveCaloViz::CellInEtaPhiRng(), TEveCaloData::CellGeom_t::Eta(), TEveCalo3D::fCellList, TEveCaloViz::fData, fM, fOffset, TEveCaloViz::fPlotEt, TEveCaloData::GetCellData(), TEveCaloViz::GetTransitionEta(), i, j, RenderBarrelCell(), RenderEndCapCell(), TEveCaloViz::SetupColorHeight(), and TEveCaloData::CellData_t::Value().

Referenced by DrawHighlight().

Bool_t TEveCalo3DGL::SetModel ( TObject obj,
const Option_t opt = 0 
) [virtual]

Implements TGLObject.

Definition at line 42 of file TEveCalo3DGL.cxx.

References fM, and kTRUE.

void TEveCalo3DGL::SetBBox (  )  [virtual]

Implements TGLObject.

Definition at line 51 of file TEveCalo3DGL.cxx.

References TGLLogicalShape::fExternalObj, and TGLObject::SetAxisAlignedBBox().

void TEveCalo3DGL::DirectDraw ( TGLRnrCtx rnrCtx  )  const [virtual]

Implements TGLLogicalShape.

Definition at line 522 of file TEveCalo3DGL.cxx.

References TEveCaloViz::AssertPalette(), TEveCalo3D::BuildCellIdCache(), TEveCaloData::CellGeom_t::Eta(), TEveCaloViz::fCellIdCacheOK, TEveCalo3D::fCellList, TEveCaloViz::fData, fM, fOffset, TEveCaloViz::fPlotEt, TEveCaloData::GetCellData(), TEveCaloViz::GetTransitionEta(), TEveCaloViz::GetValueIsColor(), GL_BLEND, GL_ENABLE_BIT, GL_LIGHTING, GL_LINE_BIT, GL_NORMALIZE, GL_ONE_MINUS_SRC_ALPHA, GL_POLYGON_BIT, GL_SRC_ALPHA, glBlendFunc(), glEnable(), glLoadName(), glPopAttrib(), glPopName(), glPushAttrib(), glPushName(), i, kFALSE, RenderBarrelCell(), RenderEndCapCell(), RenderGrid(), TGLRnrCtx::SecSelection(), TEveCaloViz::SetupColorHeight(), and TEveCaloData::CellData_t::Value().

void TEveCalo3DGL::DrawHighlight ( TGLRnrCtx rnrCtx,
const TGLPhysicalShape ps,
Int_t  lvl = -1 
) const [virtual]

Reimplemented from TGLLogicalShape.

Definition at line 582 of file TEveCalo3DGL.cxx.

References TGLColor::CArr(), TGLRnrCtx::ColorSet(), dr, DrawSelectedCells(), TEveCaloViz::fData, fM, TEveCaloData::GetCellsHighlighted(), TEveCaloData::GetCellsSelected(), GL_CULL_FACE, GL_DEPTH_RANGE, GL_ENABLE_BIT, GL_FRONT_AND_BACK, GL_LIGHTING, GL_LINE, GL_LINE_BIT, GL_POLYGON_BIT, glColor4ubv(), glDepthRange(), glDisable(), glGetFloatv(), glPolygonMode(), glPopAttrib(), glPushAttrib(), TGLUtil::LineWidth(), TGLUtil::LockColor(), TGLColorSet::Selection(), and TGLUtil::UnlockColor().

Bool_t TEveCalo3DGL::ShouldDLCache ( const TGLRnrCtx rnrCtx  )  const [virtual]

Reimplemented from TGLObject.

Definition at line 60 of file TEveCalo3DGL.cxx.

References TGLRnrCtx::Highlight(), kFALSE, TGLRnrCtx::Selection(), and TGLObject::ShouldDLCache().

virtual Bool_t TEveCalo3DGL::SupportsSecondarySelect (  )  const [inline, virtual]

Reimplemented from TGLLogicalShape.

Definition at line 53 of file TEveCalo3DGL.h.

References kTRUE.

virtual Bool_t TEveCalo3DGL::AlwaysSecondarySelect (  )  const [inline, virtual]

Reimplemented from TGLLogicalShape.

Definition at line 54 of file TEveCalo3DGL.h.

References kTRUE.

void TEveCalo3DGL::ProcessSelection ( TGLRnrCtx rnrCtx,
TGLSelectRecord rec 
) [virtual]

Reimplemented from TGLLogicalShape.

Definition at line 650 of file TEveCalo3DGL.cxx.

References TEveCalo3D::fCellList, TEveCaloViz::fData, fM, TGLSelectRecordBase::GetItem(), TGLSelectRecordBase::GetN(), TEveCaloData::ProcessSelection(), and sel.

TEveCalo3DGL::ClassDef ( TEveCalo3DGL  ,
 
)

TEveCalo3DGL& TEveCalo3DGL::operator= ( const TEveCalo3DGL  )  [private]

void TEveCalo3DGL::CrossProduct ( const Float_t  a[3],
const Float_t  b[3],
const Float_t  c[3],
Float_t  out[3] 
) const [private]

void TEveCalo3DGL::RenderBox ( const Float_t  pnts[8]  )  const [private]

void TEveCalo3DGL::RenderGridEndCap (  )  const [private]

void TEveCalo3DGL::RenderGridBarrel (  )  const [private]

void TEveCalo3DGL::RenderGrid ( TGLRnrCtx rnrCtx  )  const [private]

void TEveCalo3DGL::RenderBarrelCell ( const TEveCaloData::CellGeom_t cell,
Float_t  towerH,
Float_t offset 
) const [private]

void TEveCalo3DGL::RenderEndCapCell ( const TEveCaloData::CellGeom_t cell,
Float_t  towerH,
Float_t offset 
) const [private]

void TEveCalo3DGL::DrawSelectedCells ( TEveCaloData::vCellId_t  cells  )  const [private]

virtual Bool_t TEveCalo3DGL::SetModel ( TObject obj,
const Option_t opt = 0 
) [virtual]

Implements TGLObject.

virtual void TEveCalo3DGL::SetBBox (  )  [virtual]

Implements TGLObject.

virtual void TEveCalo3DGL::DirectDraw ( TGLRnrCtx rnrCtx  )  const [virtual]

Implements TGLLogicalShape.

virtual void TEveCalo3DGL::DrawHighlight ( TGLRnrCtx rnrCtx,
const TGLPhysicalShape ps,
Int_t  lvl = -1 
) const [virtual]

Reimplemented from TGLLogicalShape.

virtual Bool_t TEveCalo3DGL::ShouldDLCache ( const TGLRnrCtx rnrCtx  )  const [virtual]

Reimplemented from TGLObject.

virtual Bool_t TEveCalo3DGL::SupportsSecondarySelect (  )  const [inline, virtual]

Reimplemented from TGLLogicalShape.

Definition at line 53 of file TEveCalo3DGL.h.

References kTRUE.

virtual Bool_t TEveCalo3DGL::AlwaysSecondarySelect (  )  const [inline, virtual]

Reimplemented from TGLLogicalShape.

Definition at line 54 of file TEveCalo3DGL.h.

References kTRUE.

virtual void TEveCalo3DGL::ProcessSelection ( TGLRnrCtx rnrCtx,
TGLSelectRecord rec 
) [virtual]

Reimplemented from TGLLogicalShape.

TEveCalo3DGL::ClassDef ( TEveCalo3DGL  ,
 
)


Member Data Documentation

TEveCalo3D* TEveCalo3DGL::fM [protected]

Definition at line 38 of file TEveCalo3DGL.h.

Referenced by DirectDraw(), DrawHighlight(), DrawSelectedCells(), ProcessSelection(), RenderBarrelCell(), RenderEndCapCell(), RenderGrid(), RenderGridBarrel(), RenderGridEndCap(), and SetModel().

std::vector<Float_t> TEveCalo3DGL::fOffset [mutable, protected]

Definition at line 40 of file TEveCalo3DGL.h.

Referenced by DirectDraw(), and DrawSelectedCells().

TEveCalo3D* TEveCalo3DGL::fM [protected]

Definition at line 38 of file TEveCalo3DGL.h.

std::vector<Float_t> TEveCalo3DGL::fOffset [mutable, protected]

Definition at line 40 of file TEveCalo3DGL.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:36:35 2011 for ROOT_528-00b_version by  doxygen 1.5.1