33 : mapFile_(iConfig.getUntrackedParameter<std::
string>(
"MapFile",
"")),
34 mapAuto_(iConfig.getUntrackedParameter<bool>(
"MapAuto",
false)),
35 skipHE_(iConfig.getUntrackedParameter<bool>(
"SkipHE",
false)) {
58 descriptions.
add(
"caloTowerConstituents", desc);
66 auto prod = std::make_unique<CaloTowerConstituentsMap>(&hcaltopo, &cttopo);
73 prod->useStandardHB(
true);
75 prod->useStandardHE(
true);
76 prod->useStandardHF(
true);
77 prod->useStandardHO(
true);
78 prod->useStandardEB(
true);
93 gzFile gzed = gzopen(eff.
fullPath().c_str(),
"rb");
95 while (!gzeof(gzed)) {
97 int ieta, iphi, rawid;
98 if (
nullptr != gzgets(gzed, line, 1023)) {
99 if (
index(line,
'#') !=
nullptr)
100 *(
index(line,
'#')) = 0;
101 int ct = sscanf(line,
"%i %d %d", &rawid, &ieta, &iphi);
105 theMap.
assign(detid, tid);
118 if (geomEE ==
nullptr)
126 for (
auto detId_itr : vec) {
128 auto cellGeometry = geomEE->
getGeometry(detId_itr);
137 theMap.
assign(detId_itr, tid);
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
auto setWhatProduced(T *iThis, const es::Label &iLabel={})
~CaloTowerConstituentsMapBuilder() override
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
int convertHcaltoCT(int hcal_ieta, HcalSubdetector subdet) const
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geometryToken_
CaloTowerConstituentsMapBuilder(const edm::ParameterSet &)
edm::ESGetToken< CaloTowerTopology, HcalRecNumberingRecord > cttopoToken_
virtual const std::vector< DetId > & getValidDetIds(DetId::Detector det=DetId::Detector(0), int subdet=0) const
Get a list of valid detector ids (for the given subdetector)
ProductT const & get(ESGetToken< ProductT, DepRecordT > const &iToken) const
edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > hcaltopoToken_
void assign(const DetId &cell, const CaloTowerDetId &tower)
set the association between a DetId and a tower
ReturnType produce(const CaloGeometryRecord &)
virtual DetId getClosestCell(const GlobalPoint &r) const
virtual std::shared_ptr< const CaloCellGeometry > getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
std::unique_ptr< CaloTowerConstituentsMap > ReturnType
void add(std::string const &label, ParameterSetDescription const &psetDescription)
std::string fullPath() const
void assignEEtoHE(const CaloGeometry *geometry, CaloTowerConstituentsMap &theMap, const CaloTowerTopology *cttopo)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void parseTextMap(const std::string &filename, CaloTowerConstituentsMap &theMap)