00001 #ifndef CSCCommonTrigger_CSCTriggerGeomManager_h 00002 #define CSCCommonTrigger_CSCTriggerGeomManager_h 00003 00004 00017 #include <FWCore/Framework/interface/ESHandle.h> 00018 #include <Geometry/CSCGeometry/interface/CSCGeometry.h> 00019 #include <vector> 00020 00021 class CSCTriggerGeomManager 00022 { 00023 public: 00024 00025 CSCTriggerGeomManager():geom(0) {} 00026 CSCTriggerGeomManager(const CSCTriggerGeomManager& parent):geom(parent.geom) {} 00027 ~CSCTriggerGeomManager() {} 00028 00029 void setGeometry(const edm::ESHandle<CSCGeometry>& thegeom) { geom = const_cast<CSCGeometry*>(thegeom.product()); } 00030 00032 std::vector<CSCChamber*> sectorOfChambersInStation(unsigned endcap, unsigned station, 00033 unsigned sector, unsigned subsector) const; 00034 00036 CSCChamber* chamber(unsigned endcap, unsigned station, unsigned sector, 00037 unsigned subsector, unsigned tcscid) const; 00038 00039 private: 00040 00041 CSCGeometry* geom; 00042 00043 }; 00044 00045 #endif