1 #ifndef __L1Trigger_L1THGCal_HGCalTriggerGeometryBase_h__ 2 #define __L1Trigger_L1THGCal_HGCalTriggerGeometryBase_h__ 5 #include <unordered_set> 6 #include <unordered_map> 25 typedef std::unordered_map<unsigned,unsigned>
geom_map;
49 <<
"bhGeometry cannot be used with the V9 geometry";
59 <<
"hscGeometry cannot be used with the V7 and V8 geometries";
95 virtual unsigned triggerLayer(
const unsigned id)
const = 0;
HGCalTriggerGeometryBase(const edm::ParameterSet &conf)
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
virtual geom_ordered_set getOrderedTriggerCellsFromModule(const unsigned trigger_cell_det_id) const =0
virtual geom_set getCellsFromTriggerCell(const unsigned cell_det_id) const =0
std::unordered_map< unsigned, unsigned > geom_map
edmplugin::PluginFactory< HGCalTriggerGeometryBase *(const edm::ParameterSet &) > HGCalTriggerGeometryFactory
virtual geom_set getCellsFromModule(const unsigned cell_det_id) const =0
virtual GlobalPoint getModulePosition(const unsigned module_det_id) const =0
const HGCalGeometry * eeGeometry() const
const HGCalTopology & eeTopology() const
virtual geom_set getNeighborsFromTriggerCell(const unsigned trigger_cell_det_id) const =0
virtual ~HGCalTriggerGeometryBase()
const HGCalTopology & hsiTopology() const
void setEEGeometry(const edm::ESHandle< HGCalGeometry > &geom)
const HcalTopology & topology() const
virtual geom_set getTriggerCellsFromModule(const unsigned trigger_cell_det_id) const =0
const HGCalGeometry * fhGeometry() const
edm::ESHandle< HGCalGeometry > hgc_hsc_geometry_
const HcalTopology & bhTopology() const
const HGCalTopology & topology() const
virtual unsigned triggerLayer(const unsigned id) const =0
void setCaloGeometry(const edm::ESHandle< CaloGeometry > &geom)
const HcalGeometry * bhGeometry() const
const HGCalGeometry * hsiGeometry() const
virtual bool disconnectedModule(const unsigned module_id) const =0
virtual unsigned getModuleFromCell(const unsigned cell_det_id) const =0
virtual unsigned getModuleFromTriggerCell(const unsigned trigger_cell_det_id) const =0
const HGCalGeometry * hscGeometry() const
const HGCalTopology & hscTopology() const
virtual geom_ordered_set getOrderedCellsFromModule(const unsigned cell_det_id) const =0
bool isV9Geometry() const
std::set< unsigned > geom_ordered_set
virtual bool validTriggerCell(const unsigned trigger_cell_id) const =0
void setHScGeometry(const edm::ESHandle< HGCalGeometry > &geom)
edm::ESHandle< CaloGeometry > calo_geometry_
std::unordered_set< unsigned > geom_set
const std::string & name() const
T const * product() const
virtual void initialize(const edm::ESHandle< CaloGeometry > &)=0
edm::ESHandle< HGCalGeometry > hgc_hsi_geometry_
edm::ESHandle< HGCalGeometry > hgc_ee_geometry_
virtual unsigned getTriggerCellFromCell(const unsigned cell_det_id) const =0
void setHSiGeometry(const edm::ESHandle< HGCalGeometry > &geom)
const HGCalTopology & fhTopology() const
virtual GlobalPoint getTriggerCellPosition(const unsigned trigger_cell_det_id) const =0
const edm::ESHandle< CaloGeometry > & caloGeometry() const