CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Protected Member Functions | Private Attributes
HGCalTriggerGeometryBase Class Referenceabstract

#include <HGCalTriggerGeometryBase.h>

Inheritance diagram for HGCalTriggerGeometryBase:
HGCalTriggerGeometryGenericMapping HGCalTriggerGeometryHexImp2 HGCalTriggerGeometryHexLayerBasedImp1 HGCalTriggerGeometryV9Imp1 HGCalTriggerGeometryHexImp1 HGCalTriggerGeometryImp1 NullGeometry TrivialGeometry

Public Types

typedef std::unordered_map< unsigned, unsigned > geom_map
 
typedef std::set< unsigned > geom_ordered_set
 
typedef std::unordered_set< unsigned > geom_set
 

Public Member Functions

const HcalGeometrybhGeometry () const
 
const HcalTopologybhTopology () const
 
const edm::ESHandle< CaloGeometry > & caloGeometry () const
 
virtual bool disconnectedModule (const unsigned module_id) const =0
 
const HGCalGeometryeeGeometry () const
 
const HGCalTopologyeeTopology () const
 
const HGCalGeometryfhGeometry () const
 
const HGCalTopologyfhTopology () const
 
virtual geom_set getCellsFromModule (const unsigned cell_det_id) const =0
 
virtual geom_set getCellsFromTriggerCell (const unsigned cell_det_id) const =0
 
virtual unsigned getModuleFromCell (const unsigned cell_det_id) const =0
 
virtual unsigned getModuleFromTriggerCell (const unsigned trigger_cell_det_id) const =0
 
virtual GlobalPoint getModulePosition (const unsigned module_det_id) const =0
 
virtual geom_set getNeighborsFromTriggerCell (const unsigned trigger_cell_det_id) const =0
 
virtual geom_ordered_set getOrderedCellsFromModule (const unsigned cell_det_id) const =0
 
virtual geom_ordered_set getOrderedTriggerCellsFromModule (const unsigned trigger_cell_det_id) const =0
 
virtual unsigned getTriggerCellFromCell (const unsigned cell_det_id) const =0
 
virtual GlobalPoint getTriggerCellPosition (const unsigned trigger_cell_det_id) const =0
 
virtual geom_set getTriggerCellsFromModule (const unsigned trigger_cell_det_id) const =0
 
 HGCalTriggerGeometryBase (const edm::ParameterSet &conf)
 
const HGCalGeometryhscGeometry () const
 
const HGCalTopologyhscTopology () const
 
const HGCalGeometryhsiGeometry () const
 
const HGCalTopologyhsiTopology () const
 
virtual void initialize (const edm::ESHandle< CaloGeometry > &)=0
 
virtual void initialize (const edm::ESHandle< HGCalGeometry > &, const edm::ESHandle< HGCalGeometry > &, const edm::ESHandle< HGCalGeometry > &)=0
 
bool isV9Geometry () const
 
const std::string & name () const
 
virtual void reset ()
 
virtual unsigned triggerLayer (const unsigned id) const =0
 
virtual bool validTriggerCell (const unsigned trigger_cell_id) const =0
 
virtual ~HGCalTriggerGeometryBase ()
 

Protected Member Functions

void setCaloGeometry (const edm::ESHandle< CaloGeometry > &geom)
 
void setEEGeometry (const edm::ESHandle< HGCalGeometry > &geom)
 
void setHScGeometry (const edm::ESHandle< HGCalGeometry > &geom)
 
void setHSiGeometry (const edm::ESHandle< HGCalGeometry > &geom)
 

Private Attributes

edm::ESHandle< CaloGeometrycalo_geometry_
 
edm::ESHandle< HGCalGeometryhgc_ee_geometry_
 
edm::ESHandle< HGCalGeometryhgc_hsc_geometry_
 
edm::ESHandle< HGCalGeometryhgc_hsi_geometry_
 
const std::string name_
 

Detailed Description

Definition at line 22 of file HGCalTriggerGeometryBase.h.

Member Typedef Documentation

typedef std::unordered_map<unsigned,unsigned> HGCalTriggerGeometryBase::geom_map

Definition at line 25 of file HGCalTriggerGeometryBase.h.

typedef std::set<unsigned> HGCalTriggerGeometryBase::geom_ordered_set

Definition at line 27 of file HGCalTriggerGeometryBase.h.

typedef std::unordered_set<unsigned> HGCalTriggerGeometryBase::geom_set

Definition at line 26 of file HGCalTriggerGeometryBase.h.

Constructor & Destructor Documentation

HGCalTriggerGeometryBase::HGCalTriggerGeometryBase ( const edm::ParameterSet conf)

Definition at line 6 of file HGCalTriggerGeometryBase.cc.

6  :
7  name_(conf.getParameter<std::string>("TriggerGeometryName"))
8 {
9 }
T getParameter(std::string const &) const
virtual HGCalTriggerGeometryBase::~HGCalTriggerGeometryBase ( )
inlinevirtual

Definition at line 30 of file HGCalTriggerGeometryBase.h.

30 {}

Member Function Documentation

const HcalGeometry* HGCalTriggerGeometryBase::bhGeometry ( ) const
inline

Definition at line 44 of file HGCalTriggerGeometryBase.h.

References calo_geometry_, Exception, CaloGeometry::getSubdetectorGeometry(), DetId::Hcal, HcalEndcap, hgc_hsc_geometry_, and edm::ESHandleBase::isValid().

Referenced by bhTopology(), HGCalTriggerNtupleHGCDigis::fill(), HGCalTriggerGeometryHexLayerBasedImp1::getModulePosition(), and HGCalTriggerGeometryHexLayerBasedImp1::getTriggerCellPosition().

45  {
47  {
48  throw cms::Exception("HGCalTriggerGeometry")
49  << "bhGeometry cannot be used with the V9 geometry";
50  }
51  return (static_cast<const HcalGeometry*>(calo_geometry_->getSubdetectorGeometry(DetId::Hcal,HcalEndcap)));
52  }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:49
edm::ESHandle< HGCalGeometry > hgc_hsc_geometry_
edm::ESHandle< CaloGeometry > calo_geometry_
bool isValid() const
Definition: ESHandle.h:45
const HcalTopology& HGCalTriggerGeometryBase::bhTopology ( ) const
inline
const edm::ESHandle<CaloGeometry>& HGCalTriggerGeometryBase::caloGeometry ( ) const
inline

Definition at line 35 of file HGCalTriggerGeometryBase.h.

References calo_geometry_.

35 {return calo_geometry_;}
edm::ESHandle< CaloGeometry > calo_geometry_
virtual bool HGCalTriggerGeometryBase::disconnectedModule ( const unsigned  module_id) const
pure virtual
const HGCalGeometry* HGCalTriggerGeometryBase::eeGeometry ( ) const
inline

Definition at line 36 of file HGCalTriggerGeometryBase.h.

References calo_geometry_, DetId::Forward, CaloGeometry::getSubdetectorGeometry(), hgc_ee_geometry_, HGCEE, edm::ESHandleBase::isValid(), and edm::ESHandle< T >::product().

Referenced by HGCalTriggerGeometryImp1::buildMaps(), HGCalTriggerGeometryHexImp1::buildTriggerCellsAndModules(), eeTopology(), HGCalTriggerNtupleHGCDigis::fill(), HGCalTriggerGeometryHexImp1::fillMaps(), HGCalTriggerGeometryHexImp2::getModulePosition(), HGCalTriggerGeometryHexLayerBasedImp1::getModulePosition(), HGCalTriggerGeometryV9Imp1::getModulePosition(), HGCalTriggerGeometryHexImp2::getTriggerCellPosition(), HGCalTriggerGeometryV9Imp1::getTriggerCellPosition(), and HGCalTriggerGeometryHexLayerBasedImp1::getTriggerCellPosition().

37  {
39  }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:49
edm::ESHandle< CaloGeometry > calo_geometry_
bool isValid() const
Definition: ESHandle.h:45
T const * product() const
Definition: ESHandle.h:84
edm::ESHandle< HGCalGeometry > hgc_ee_geometry_
const HGCalTopology& HGCalTriggerGeometryBase::eeTopology ( ) const
inline
const HGCalGeometry* HGCalTriggerGeometryBase::fhGeometry ( ) const
inline

Definition at line 40 of file HGCalTriggerGeometryBase.h.

References calo_geometry_, DetId::Forward, CaloGeometry::getSubdetectorGeometry(), hgc_hsi_geometry_, HGCHEF, edm::ESHandleBase::isValid(), and edm::ESHandle< T >::product().

Referenced by HGCalTriggerGeometryHexImp1::buildTriggerCellsAndModules(), fhTopology(), HGCalTriggerNtupleHGCDigis::fill(), HGCalTriggerGeometryHexImp1::fillMaps(), HGCalTriggerGeometryHexImp2::getModulePosition(), HGCalTriggerGeometryHexLayerBasedImp1::getModulePosition(), HGCalTriggerGeometryHexImp2::getTriggerCellPosition(), HGCalTriggerGeometryHexLayerBasedImp1::getTriggerCellPosition(), and hsiGeometry().

41  {
43  }
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:49
edm::ESHandle< CaloGeometry > calo_geometry_
bool isValid() const
Definition: ESHandle.h:45
T const * product() const
Definition: ESHandle.h:84
edm::ESHandle< HGCalGeometry > hgc_hsi_geometry_
const HGCalTopology& HGCalTriggerGeometryBase::fhTopology ( ) const
inline
virtual geom_set HGCalTriggerGeometryBase::getCellsFromModule ( const unsigned  cell_det_id) const
pure virtual
virtual geom_set HGCalTriggerGeometryBase::getCellsFromTriggerCell ( const unsigned  cell_det_id) const
pure virtual
virtual unsigned HGCalTriggerGeometryBase::getModuleFromCell ( const unsigned  cell_det_id) const
pure virtual
virtual unsigned HGCalTriggerGeometryBase::getModuleFromTriggerCell ( const unsigned  trigger_cell_det_id) const
pure virtual
virtual GlobalPoint HGCalTriggerGeometryBase::getModulePosition ( const unsigned  module_det_id) const
pure virtual
virtual geom_set HGCalTriggerGeometryBase::getNeighborsFromTriggerCell ( const unsigned  trigger_cell_det_id) const
pure virtual
virtual geom_ordered_set HGCalTriggerGeometryBase::getOrderedCellsFromModule ( const unsigned  cell_det_id) const
pure virtual
virtual geom_ordered_set HGCalTriggerGeometryBase::getOrderedTriggerCellsFromModule ( const unsigned  trigger_cell_det_id) const
pure virtual
virtual unsigned HGCalTriggerGeometryBase::getTriggerCellFromCell ( const unsigned  cell_det_id) const
pure virtual
virtual GlobalPoint HGCalTriggerGeometryBase::getTriggerCellPosition ( const unsigned  trigger_cell_det_id) const
pure virtual
virtual geom_set HGCalTriggerGeometryBase::getTriggerCellsFromModule ( const unsigned  trigger_cell_det_id) const
pure virtual
const HGCalGeometry* HGCalTriggerGeometryBase::hscGeometry ( ) const
inline

Definition at line 54 of file HGCalTriggerGeometryBase.h.

References Exception, hgc_hsc_geometry_, edm::ESHandleBase::isValid(), and edm::ESHandle< T >::product().

Referenced by HGCalTriggerGeometryV9Imp1::getModulePosition(), HGCalTriggerGeometryV9Imp1::getTriggerCellPosition(), and hscTopology().

55  {
57  {
58  throw cms::Exception("HGCalTriggerGeometry")
59  << "hscGeometry cannot be used with the V7 and V8 geometries";
60  }
61  return hgc_hsc_geometry_.product();
62  }
edm::ESHandle< HGCalGeometry > hgc_hsc_geometry_
bool isValid() const
Definition: ESHandle.h:45
T const * product() const
Definition: ESHandle.h:84
const HGCalTopology& HGCalTriggerGeometryBase::hscTopology ( ) const
inline
const HGCalGeometry* HGCalTriggerGeometryBase::hsiGeometry ( ) const
inline
const HGCalTopology& HGCalTriggerGeometryBase::hsiTopology ( ) const
inline
virtual void HGCalTriggerGeometryBase::initialize ( const edm::ESHandle< CaloGeometry > &  )
pure virtual
virtual void HGCalTriggerGeometryBase::initialize ( const edm::ESHandle< HGCalGeometry > &  ,
const edm::ESHandle< HGCalGeometry > &  ,
const edm::ESHandle< HGCalGeometry > &   
)
pure virtual
bool HGCalTriggerGeometryBase::isV9Geometry ( ) const
inline
const std::string& HGCalTriggerGeometryBase::name ( void  ) const
inline
void HGCalTriggerGeometryBase::reset ( void  )
virtual
void HGCalTriggerGeometryBase::setCaloGeometry ( const edm::ESHandle< CaloGeometry > &  geom)
inlineprotected
void HGCalTriggerGeometryBase::setEEGeometry ( const edm::ESHandle< HGCalGeometry > &  geom)
inlineprotected
void HGCalTriggerGeometryBase::setHScGeometry ( const edm::ESHandle< HGCalGeometry > &  geom)
inlineprotected
void HGCalTriggerGeometryBase::setHSiGeometry ( const edm::ESHandle< HGCalGeometry > &  geom)
inlineprotected
virtual unsigned HGCalTriggerGeometryBase::triggerLayer ( const unsigned  id) const
pure virtual
virtual bool HGCalTriggerGeometryBase::validTriggerCell ( const unsigned  trigger_cell_id) const
pure virtual

Member Data Documentation

edm::ESHandle<CaloGeometry> HGCalTriggerGeometryBase::calo_geometry_
private
edm::ESHandle<HGCalGeometry> HGCalTriggerGeometryBase::hgc_ee_geometry_
private

Definition at line 108 of file HGCalTriggerGeometryBase.h.

Referenced by eeGeometry(), and setEEGeometry().

edm::ESHandle<HGCalGeometry> HGCalTriggerGeometryBase::hgc_hsc_geometry_
private

Definition at line 110 of file HGCalTriggerGeometryBase.h.

Referenced by bhGeometry(), hscGeometry(), and setHScGeometry().

edm::ESHandle<HGCalGeometry> HGCalTriggerGeometryBase::hgc_hsi_geometry_
private

Definition at line 109 of file HGCalTriggerGeometryBase.h.

Referenced by fhGeometry(), and setHSiGeometry().

const std::string HGCalTriggerGeometryBase::name_
private

Definition at line 105 of file HGCalTriggerGeometryBase.h.

Referenced by name().