CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
CastorTopology Class Reference

#include <CastorTopology.h>

Inheritance diagram for CastorTopology:
CaloSubdetectorTopology

Public Member Functions

 CastorTopology ()
 
virtual std::vector< DetIddown (const DetId &id) const
 
virtual std::vector< DetIdeast (const DetId &id) const
 
void exclude (const HcalCastorDetId &id)
 
void exclude (int zside)
 
void exclude (int zside, HcalCastorDetId::Section section)
 
int exclude (int zside, HcalCastorDetId::Section section1, int isec1, int imod1, HcalCastorDetId::Section section2, int isec2, int imod2)
 
int firstCell (HcalCastorDetId::Section section) const
 
virtual std::vector< DetIdincModule (const DetId &id) const
 
virtual std::vector< DetIdincSector (const DetId &id) const
 
int lastCell (HcalCastorDetId::Section section) const
 
int ncells (HcalCastorDetId::Section section) const
 
virtual std::vector< DetIdnorth (const DetId &id) const
 
virtual std::vector< DetIdsouth (const DetId &id) const
 
virtual std::vector< DetIdup (const DetId &id) const
 
virtual bool valid (const HcalCastorDetId &id) const
 
virtual bool validRaw (const HcalCastorDetId &id) const
 
virtual std::vector< DetIdwest (const DetId &id) const
 
- Public Member Functions inherited from CaloSubdetectorTopology
 CaloSubdetectorTopology ()
 standard constructor More...
 
virtual DetId denseId2detId (unsigned int) const
 return a linear packed id More...
 
virtual bool denseIdConsistent (int topoVer) const
 return whether this topology is consistent with the numbering in the given topology More...
 
virtual unsigned int detId2denseId (const DetId &) const
 return a linear packed id More...
 
virtual std::vector< DetIdgetAllNeighbours (const DetId &id) const
 
virtual std::vector< DetIdgetNeighbours (const DetId &id, const CaloDirection &dir) const
 
virtual std::vector< DetIdgetWindow (const DetId &id, const int &northSouthSize, const int &eastWestSize) const
 
virtual DetId goDown (const DetId &id) const
 
virtual DetId goEast (const DetId &id) const
 
virtual DetId goNorth (const DetId &id) const
 
virtual DetId goSouth (const DetId &id) const
 
virtual DetId goUp (const DetId &id) const
 
virtual DetId goWest (const DetId &id) const
 
virtual unsigned int ncells () const
 return a count of valid cells (for dense indexing use) More...
 
virtual int topoVersion () const
 return a version which identifies the given topology More...
 
virtual bool valid (const DetId &) const
 is this detid present in the Topology? More...
 
virtual ~CaloSubdetectorTopology ()
 virtual destructor More...
 

Private Member Functions

int firstEMModule () const
 
int firstHADModule () const
 
bool isExcluded (const HcalCastorDetId &id) const
 
int lastEMModule () const
 
int lastHADModule () const
 

Private Attributes

bool excludeEM_
 
bool excludeHAD_
 
bool excludeZN_
 
bool excludeZP_
 
std::vector< HcalCastorDetIdexclusionList_
 
int firstEMModule_
 
int firstHADModule_
 
int lastEMModule_
 
int lastHADModule_
 

Additional Inherited Members

- Protected Types inherited from CaloSubdetectorTopology
typedef std::pair< int, int > Coordinate
 
- Protected Member Functions inherited from CaloSubdetectorTopology
Coordinate getNeighbourIndex (const Coordinate &coord, const CaloDirection &dir) const
 

Detailed Description

Author
P. Katsas - UoA

Definition at line 13 of file CastorTopology.h.

Constructor & Destructor Documentation

CastorTopology::CastorTopology ( )

Definition at line 9 of file CastorTopology.cc.

Member Function Documentation

std::vector< DetId > CastorTopology::down ( const DetId id) const
virtual

Get the neighbors of the given cell in down direction (inward)

Implements CaloSubdetectorTopology.

Definition at line 219 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::east ( const DetId id) const
virtual

Get the neighbors of the given cell in east direction

Implements CaloSubdetectorTopology.

Definition at line 187 of file CastorTopology.cc.

void CastorTopology::exclude ( const HcalCastorDetId id)

Exlucde a cell

Definition at line 47 of file CastorTopology.cc.

void CastorTopology::exclude ( int  zside)

Exclude a side

Definition at line 55 of file CastorTopology.cc.

void CastorTopology::exclude ( int  zside,
HcalCastorDetId::Section  section 
)

Exclude a section, in either side (+1 positive, -1 negative)

Definition at line 63 of file CastorTopology.cc.

int CastorTopology::exclude ( int  zside,
HcalCastorDetId::Section  section1,
int  isec1,
int  imod1,
HcalCastorDetId::Section  section2,
int  isec2,
int  imod2 
)

Exclude a range of channels (deph) for a given subdetector

Definition at line 76 of file CastorTopology.cc.

int CastorTopology::firstCell ( HcalCastorDetId::Section  section) const

Definition at line 236 of file CastorTopology.cc.

int CastorTopology::firstEMModule ( ) const
inlineprivate

Definition at line 63 of file CastorTopology.h.

References firstEMModule_.

63 {return firstEMModule_;}
int CastorTopology::firstHADModule ( ) const
inlineprivate

Definition at line 64 of file CastorTopology.h.

References firstHADModule_.

64 {return firstHADModule_;}
std::vector< DetId > CastorTopology::incModule ( const DetId id) const
virtual

Get the neigbors of the given cell with higher module

Definition at line 147 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::incSector ( const DetId id) const
virtual

Get the neighbors of the given cell with higher #sector

Definition at line 118 of file CastorTopology.cc.

bool CastorTopology::isExcluded ( const HcalCastorDetId id) const
private

Definition at line 28 of file CastorTopology.cc.

int CastorTopology::lastCell ( HcalCastorDetId::Section  section) const

Definition at line 246 of file CastorTopology.cc.

int CastorTopology::lastEMModule ( ) const
inlineprivate

Definition at line 65 of file CastorTopology.h.

References lastEMModule_.

65 {return lastEMModule_;}
int CastorTopology::lastHADModule ( ) const
inlineprivate

Definition at line 66 of file CastorTopology.h.

References lastHADModule_.

66 {return lastHADModule_;}
int CastorTopology::ncells ( HcalCastorDetId::Section  section) const

Definition at line 226 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::north ( const DetId id) const
virtual

Get the neighbors of the given cell in north direction

Implements CaloSubdetectorTopology.

Definition at line 201 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::south ( const DetId id) const
virtual

Get the neighbors of the given cell in south direction

Implements CaloSubdetectorTopology.

Definition at line 207 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::up ( const DetId id) const
virtual

Get the neighbors of the given cell in up direction (outward)

Implements CaloSubdetectorTopology.

Definition at line 213 of file CastorTopology.cc.

bool CastorTopology::valid ( const HcalCastorDetId id) const
virtual

Is this a valid cell id?

Definition at line 22 of file CastorTopology.cc.

bool CastorTopology::validRaw ( const HcalCastorDetId id) const
virtual

Is this a valid cell id?

Definition at line 110 of file CastorTopology.cc.

std::vector< DetId > CastorTopology::west ( const DetId id) const
virtual

Get the neighbors of the given cell in west direction

Implements CaloSubdetectorTopology.

Definition at line 194 of file CastorTopology.cc.

Member Data Documentation

bool CastorTopology::excludeEM_
private

Definition at line 57 of file CastorTopology.h.

bool CastorTopology::excludeHAD_
private

Definition at line 57 of file CastorTopology.h.

bool CastorTopology::excludeZN_
private

Definition at line 57 of file CastorTopology.h.

bool CastorTopology::excludeZP_
private

Definition at line 57 of file CastorTopology.h.

std::vector<HcalCastorDetId> CastorTopology::exclusionList_
private

Definition at line 55 of file CastorTopology.h.

int CastorTopology::firstEMModule_
private

Definition at line 59 of file CastorTopology.h.

Referenced by firstEMModule().

int CastorTopology::firstHADModule_
private

Definition at line 59 of file CastorTopology.h.

Referenced by firstHADModule().

int CastorTopology::lastEMModule_
private

Definition at line 59 of file CastorTopology.h.

Referenced by lastEMModule().

int CastorTopology::lastHADModule_
private

Definition at line 59 of file CastorTopology.h.

Referenced by lastHADModule().