1 #ifndef __L1Trigger_L1THGCal_HGCalTriggerGeometryBase_h__
2 #define __L1Trigger_L1THGCal_HGCalTriggerGeometryBase_h__
5 #include <unordered_map>
6 #include <unordered_set>
18 typedef std::unordered_map<unsigned, unsigned>
geom_map;
75 virtual unsigned getModuleSize(
const unsigned module_id)
const = 0;
80 virtual bool validCell(
const unsigned cell_id)
const = 0;
84 virtual unsigned triggerLayer(
const unsigned id)
const = 0;
HGCalTriggerGeometryBase(const edm::ParameterSet &conf)
virtual GlobalPoint getTriggerCellPosition(const unsigned trigger_cell_det_id) const =0
const HGCalGeometry * hgc_ee_geometry_
virtual unsigned getModuleSize(const unsigned module_id) const =0
virtual unsigned getModuleFromCell(const unsigned cell_det_id) const =0
void setEEGeometry(const HGCalGeometry *geom)
virtual unsigned getStage1FpgaFromModule(const unsigned module_id) const =0
void setWithNoseGeometry(const bool isNose)
const HGCalGeometry * hgc_hsi_geometry_
const HGCalGeometry * eeGeometry() const
const HGCalTopology & eeTopology() const
virtual unsigned lastTriggerLayer() const =0
const HGCalGeometry * hgc_hsc_geometry_
virtual unsigned triggerLayer(const unsigned id) const =0
virtual unsigned getStage1FpgaFromLpgbt(const unsigned lpgbt_id) const =0
virtual geom_ordered_set getOrderedTriggerCellsFromModule(const unsigned trigger_cell_det_id) const =0
virtual geom_set getNeighborsFromTriggerCell(const unsigned trigger_cell_det_id) const =0
virtual geom_set getCellsFromTriggerCell(const unsigned cell_det_id) const =0
virtual geom_set getLpgbtsFromModule(const unsigned module_id) const =0
bool isWithNoseGeometry() const
virtual bool disconnectedModule(const unsigned module_id) const =0
virtual ~HGCalTriggerGeometryBase()
const HGCalTopology & hsiTopology() const
void setHSiGeometry(const HGCalGeometry *geom)
virtual geom_ordered_set getOrderedCellsFromModule(const unsigned cell_det_id) const =0
virtual unsigned getTriggerCellFromCell(const unsigned cell_det_id) const =0
virtual void initialize(const HGCalGeometry *, const HGCalGeometry *, const HGCalGeometry *)=0
void setNoseGeometry(const HGCalGeometry *geom)
const HGCalGeometry * noseGeometry() const
virtual bool validTriggerCell(const unsigned trigger_cell_id) const =0
const HGCalGeometry * hgc_nose_geometry_
const HGCalGeometry * fhGeometry() const
virtual geom_set getStage2FpgasFromStage1Fpga(const unsigned stage1_id) const =0
const HGCalTopology & topology() const
void setHScGeometry(const HGCalGeometry *geom)
virtual geom_set getStage1LinksFromStage2Fpga(const unsigned) const =0
virtual unsigned getLinksInModule(const unsigned module_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 unsigned getStage2FpgaFromStage1Link(const unsigned) const =0
const HGCalGeometry * hsiGeometry() const
edmplugin::PluginFactory< HGCalTriggerGeometryBase *(const edm::ParameterSet &)> HGCalTriggerGeometryFactory
std::unordered_map< unsigned, unsigned > geom_map
const HGCalGeometry * hscGeometry() const
const HGCalTopology & hscTopology() const
virtual geom_set getModulesFromLpgbt(const unsigned lpgbt_id) const =0
std::set< unsigned > geom_ordered_set
virtual geom_set getStage1LinksFromStage1Fpga(const unsigned) const =0
virtual unsigned getStage1FpgaFromStage1Link(const unsigned) const =0
std::unordered_set< unsigned > geom_set
virtual geom_set getTriggerCellsFromModule(const unsigned trigger_cell_det_id) const =0
const std::string & name() const
const HGCalTopology & noseTopology() const
virtual geom_set getStage1FpgasFromStage2Fpga(const unsigned stage2_id) const =0
virtual geom_set getCellsFromModule(const unsigned cell_det_id) const =0
virtual bool validCell(const unsigned cell_id) const =0
const HGCalTopology & fhTopology() const
virtual geom_set getLpgbtsFromStage1Fpga(const unsigned stage1_id) const =0