CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions
HcalSimParametersFromDD Class Reference

#include <HcalSimParametersFromDD.h>

Public Member Functions

bool build (const cms::DDCompactView &, HcalSimulationParameters &)
 
bool build (const DDCompactView *, HcalSimulationParameters &)
 
 HcalSimParametersFromDD ()=default
 

Private Member Functions

bool buildParameters (const HcalSimulationParameters &)
 
void fillNameVector (const cms::DDCompactView &, const std::string &, std::vector< std::string > &)
 
void fillNameVector (const DDCompactView *, const std::string &, const std::string &, std::vector< std::string > &)
 
void fillPMTs (const std::vector< double > &, bool, HcalSimulationParameters &)
 
std::vector< double > getDDDArray (const std::string &str, const DDsvalues_type &sv, int &nmin)
 
std::vector< std::string > getNames (cms::DDFilteredView &fv)
 
std::vector< std::string > getNames (DDFilteredView &fv)
 
bool isItHF (const std::string &, const HcalSimulationParameters &)
 

Detailed Description

Definition at line 13 of file HcalSimParametersFromDD.h.

Constructor & Destructor Documentation

◆ HcalSimParametersFromDD()

HcalSimParametersFromDD::HcalSimParametersFromDD ( )
default

Member Function Documentation

◆ build() [1/2]

bool HcalSimParametersFromDD::build ( const cms::DDCompactView cpv,
HcalSimulationParameters php 
)

Definition at line 103 of file HcalSimParametersFromDD.cc.

103  {
104 #ifdef EDM_ML_DEBUG
105  edm::LogVerbatim("HCalGeom")
106  << "Inside HcalSimParametersFromDD::build(const cms::DDCompactView*, HcalSimulationParameters&)";
107 #endif
108 
109  // HCal materials
110  const cms::DDFilter filter("OnlyForHcalSimNumbering", "HCAL");
111  cms::DDFilteredView fv(cpv, filter);
112 
113  {
114  BenchmarkGrd counter("HcalSimParametersFromDD get all vectors\n");
115 
116  // The level positions
117  php.hfLevels_ = fv.get<std::vector<int> >("hf", "Levels");
118 
119  // Attenuation length
120  static const double cminv2mminv = 0.1;
121  php.attenuationLength_ = fv.get<std::vector<double> >("hf", "attl");
122  std::for_each(php.attenuationLength_.begin(), php.attenuationLength_.end(), [](double& n) { n *= cminv2mminv; });
123 
124  // Limits on Lambda
125  php.lambdaLimits_ = fv.get<std::vector<int> >("hf", "lambLim");
126 
127  // Fibre Lengths
128  php.longFiberLength_ = fv.get<std::vector<double> >("hf", "LongFL");
129  std::for_each(php.longFiberLength_.begin(), php.longFiberLength_.end(), [](double& n) { n = convertCmToMm(n); });
130  php.shortFiberLength_ = fv.get<std::vector<double> >("hf", "ShortFL");
131  std::for_each(php.shortFiberLength_.begin(), php.shortFiberLength_.end(), [](double& n) { n = convertCmToMm(n); });
132 
133  //Parameters for the PMT
134  std::vector<double> neta = fv.get<std::vector<double> >("hfpmt", "indexPMTR");
135  fillPMTs(neta, false, php);
136  neta = fv.get<std::vector<double> >("hfpmt", "indexPMTL");
137  fillPMTs(neta, true, php);
138 
139  // Parameters for the fibers
140  fillNameVector(cpv, "HF", php.hfNames_);
141 
142  //Names of special volumes (HFFibre, HFPMT, HFFibreBundles)
143  fillNameVector(cpv, "HFFibre", php.hfFibreNames_);
144  fillNameVector(cpv, "HFPMT", php.hfPMTNames_);
145  fillNameVector(cpv, "HFFibreBundleStraight", php.hfFibreStraightNames_);
146  fillNameVector(cpv, "HFFibreBundleConical", php.hfFibreConicalNames_);
147  }
148  {
149  BenchmarkGrd counter("HcalSimParametersFromDD HCal materials OnlyForHcalSimNumbering, HCAL");
150 
151  while (fv.firstChild()) {
152  std::vector<int> copy = fv.copyNos();
153  // idet = 3 for HB and 4 for HE (convention in the ddalgo code for HB/HE)
154  int idet = (copy.size() > 1) ? (copy[1] / 1000) : 0;
155  if ((idet == 3) || (idet == 4)) {
156  std::string_view matName = cms::dd::noNamespace(fv.materialName());
159  php.hcalMaterialNames_.emplace_back(matName);
160  }
161  }
162  }
163  }
164 
165  return buildParameters(php);
166 }

References HcalSimulationParameters::attenuationLength_, begin, geant_units::operators::convertCmToMm(), filterCSVwithJSON::copy, cms::DDFilteredView::copyNos(), counter, end, ALCARECOTkAlBeamHalo_cff::filter, spr::find(), cms::DDFilteredView::firstChild(), cms::DDFilteredView::get(), HcalSimulationParameters::hcalMaterialNames_, HcalSimulationParameters::hfFibreConicalNames_, HcalSimulationParameters::hfFibreNames_, HcalSimulationParameters::hfFibreStraightNames_, HcalSimulationParameters::hfLevels_, HcalSimulationParameters::hfNames_, HcalSimulationParameters::hfPMTNames_, HcalSimulationParameters::lambdaLimits_, HcalSimulationParameters::longFiberLength_, cms::DDFilteredView::materialName(), dqmiodumpmetadata::n, neta, cms::dd::noNamespace(), and HcalSimulationParameters::shortFiberLength_.

◆ build() [2/2]

bool HcalSimParametersFromDD::build ( const DDCompactView cpv,
HcalSimulationParameters php 
)

Definition at line 18 of file HcalSimParametersFromDD.cc.

18  {
19  // Parameters for the fibers
20  std::string attribute = "Volume";
21  std::string value = "HF";
22  DDSpecificsMatchesValueFilter filter1{DDValue(attribute, value, 0)};
23  DDFilteredView fv1(*cpv, filter1);
24 
25  // Names of sensitive volumes for HF
26  php.hfNames_ = getNames(fv1);
27  int nb(-1);
28 
29  bool dodet = fv1.firstChild();
30  if (dodet) {
31  DDsvalues_type sv(fv1.mergedSpecifics());
32 
33  // The level positions
34  nb = -1;
35  php.hfLevels_ = dbl_to_int(getDDDArray("Levels", sv, nb));
36 
37  // Attenuation length
38  nb = -1;
39  php.attenuationLength_ = getDDDArray("attl", sv, nb);
40 
41  // Limits on Lambda
42  nb = 2;
43  php.lambdaLimits_ = dbl_to_int(getDDDArray("lambLim", sv, nb));
44 
45  // Fibre Lengths
46  nb = 0;
47  php.longFiberLength_ = getDDDArray("LongFL", sv, nb);
48 
49  nb = 0;
50  php.shortFiberLength_ = getDDDArray("ShortFL", sv, nb);
51 
52  } else {
53  throw cms::Exception("HcalSimParametersFromDD") << "Not found " << value << " for " << attribute << " but needed.";
54  }
55 
56  //Parameters for the PMT
57  value = "HFPMT";
58  DDSpecificsMatchesValueFilter filter2{DDValue(attribute, value, 0)};
59  DDFilteredView fv2(*cpv, filter2);
60  if (fv2.firstChild()) {
61  DDsvalues_type sv(fv2.mergedSpecifics());
62  int nb = -1;
63  std::vector<double> neta = getDDDArray("indexPMTR", sv, nb);
64  fillPMTs(neta, false, php);
65  nb = -1;
66  neta = getDDDArray("indexPMTL", sv, nb);
67  fillPMTs(neta, true, php);
68  } else {
69  throw cms::Exception("HcalSimParametersFromDD") << "Not found " << value << " for " << attribute << " but needed.";
70  }
71 
72  //Names of special volumes (HFFibre, HFPMT, HFFibreBundles)
73  fillNameVector(cpv, attribute, "HFFibre", php.hfFibreNames_);
74  fillNameVector(cpv, attribute, "HFPMT", php.hfPMTNames_);
75  fillNameVector(cpv, attribute, "HFFibreBundleStraight", php.hfFibreStraightNames_);
76  fillNameVector(cpv, attribute, "HFFibreBundleConical", php.hfFibreConicalNames_);
77 
78  // HCal materials
79  attribute = "OnlyForHcalSimNumbering";
80  DDSpecificsHasNamedValueFilter filter3{attribute};
81  DDFilteredView fv3(*cpv, filter3);
82  dodet = fv3.firstChild();
83 
84  while (dodet) {
85  const DDLogicalPart& log = fv3.logicalPart();
86  if (!isItHF(log.name().name(), php)) {
87  bool notIn = true;
88  for (unsigned int i = 0; i < php.hcalMaterialNames_.size(); ++i) {
89  if (!strcmp(php.hcalMaterialNames_[i].c_str(), log.material().name().name().c_str())) {
90  notIn = false;
91  break;
92  }
93  }
94  if (notIn)
95  php.hcalMaterialNames_.push_back(log.material().name().name());
96  }
97  dodet = fv2.next();
98  }
99 
100  return buildParameters(php);
101 }

References HcalSimulationParameters::attenuationLength_, dbl_to_int(), Exception, DDFilteredView::firstChild(), MsgTools::getNames(), HcalSimulationParameters::hcalMaterialNames_, HcalSimulationParameters::hfFibreConicalNames_, HcalSimulationParameters::hfFibreNames_, HcalSimulationParameters::hfFibreStraightNames_, HcalSimulationParameters::hfLevels_, HcalSimulationParameters::hfNames_, HcalSimulationParameters::hfPMTNames_, mps_fire::i, HcalSimulationParameters::lambdaLimits_, dqm-mbProfile::log, DDFilteredView::logicalPart(), HcalSimulationParameters::longFiberLength_, DDFilteredView::mergedSpecifics(), neta, DDFilteredView::next(), HcalSimulationParameters::shortFiberLength_, AlCaHLTBitMon_QueryRunRegistry::string, and pfDeepBoostedJetPreprocessParams_cfi::sv.

Referenced by HcalSimParametersESModule::produce().

◆ buildParameters()

bool HcalSimParametersFromDD::buildParameters ( const HcalSimulationParameters php)
private

Definition at line 168 of file HcalSimParametersFromDD.cc.

168  {
169 #ifdef EDM_ML_DEBUG
170  std::stringstream ss0;
171  for (unsigned int it = 0; it < php.hfNames_.size(); it++) {
172  if (it / 10 * 10 == it)
173  ss0 << "\n";
174  ss0 << " [" << it << "] " << php.hfNames_[it];
175  }
176  edm::LogVerbatim("HCalGeom") << "HFNames: " << php.hfNames_.size() << ": " << ss0.str();
177 
178  std::stringstream ss1;
179  for (unsigned int it = 0; it < php.hfLevels_.size(); it++) {
180  if (it / 10 * 10 == it)
181  ss1 << "\n";
182  ss1 << " [" << it << "] " << php.hfLevels_[it];
183  }
184  edm::LogVerbatim("HCalGeom") << "HF Volume Levels: " << php.hfLevels_.size() << " hfLevels: " << ss1.str();
185 
186  std::stringstream ss2;
187  for (unsigned int it = 0; it < php.attenuationLength_.size(); it++) {
188  if (it / 10 * 10 == it)
189  ss2 << "\n";
190  ss2 << " " << convertMmToCm(php.attenuationLength_[it]);
191  }
192  edm::LogVerbatim("HCalGeom") << "AttenuationLength: " << php.attenuationLength_.size()
193  << " attL(1/cm): " << ss2.str();
194 
195  std::stringstream ss3;
196  for (unsigned int it = 0; it < php.lambdaLimits_.size(); it++) {
197  if (it / 10 * 10 == it)
198  ss3 << "\n";
199  ss3 << " " << php.lambdaLimits_[it];
200  }
201  edm::LogVerbatim("HCalGeom") << php.lambdaLimits_.size() << " Limits on lambda " << ss3.str();
202 
203  std::stringstream ss4;
204  for (unsigned int it = 0; it < php.longFiberLength_.size(); it++) {
205  if (it / 10 * 10 == it)
206  ss4 << "\n";
207  ss4 << " " << convertMmToCm(php.longFiberLength_[it]);
208  }
209  edm::LogVerbatim("HCalGeom") << php.longFiberLength_.size() << " Long Fibre Length(cm):" << ss4.str();
210 
211  std::stringstream ss5;
212  for (unsigned int it = 0; it < php.shortFiberLength_.size(); it++) {
213  if (it / 10 * 10 == it)
214  ss5 << "\n";
215  ss5 << " " << convertMmToCm(php.shortFiberLength_[it]);
216  }
217  edm::LogVerbatim("HCalGeom") << php.shortFiberLength_.size() << " Short Fibre Length(cm):" << ss5.str();
218 
219  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: gets the Index matches for " << php.pmtRight_.size() << " PMTs";
220  for (unsigned int ii = 0; ii < php.pmtRight_.size(); ii++)
221  edm::LogVerbatim("HCalGeom") << "rIndexR[" << ii << "] = " << php.pmtRight_[ii] << " fibreR[" << ii
222  << "] = " << php.pmtFiberRight_[ii] << " rIndexL[" << ii << "] = " << php.pmtLeft_[ii]
223  << " fibreL[" << ii << "] = " << php.pmtFiberLeft_[ii];
224 
225  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: " << php.hfFibreNames_.size() << " names of HFFibre";
226  for (unsigned int k = 0; k < php.hfFibreNames_.size(); ++k)
227  edm::LogVerbatim("HCalGeom") << "[" << k << "] " << php.hfFibreNames_[k];
228 
229  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: " << php.hfPMTNames_.size() << " names of HFPMT";
230  for (unsigned int k = 0; k < php.hfPMTNames_.size(); ++k)
231  edm::LogVerbatim("HCalGeom") << "[" << k << "] " << php.hfPMTNames_[k];
232 
233  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: " << php.hfFibreStraightNames_.size()
234  << " names of HFFibreBundleStraight";
235  for (unsigned int k = 0; k < php.hfFibreStraightNames_.size(); ++k)
236  edm::LogVerbatim("HCalGeom") << "[" << k << "] " << php.hfFibreStraightNames_[k];
237 
238  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: " << php.hfFibreConicalNames_.size()
239  << " names of FibreBundleConical";
240  for (unsigned int k = 0; k < php.hfFibreConicalNames_.size(); ++k)
241  edm::LogVerbatim("HCalGeom") << "[" << k << "] " << php.hfFibreConicalNames_[k];
242 
243  edm::LogVerbatim("HCalGeom") << "HcalSimParameters: " << php.hcalMaterialNames_.size() << " names of HCAL materials";
244  for (unsigned int k = 0; k < php.hcalMaterialNames_.size(); ++k)
245  edm::LogVerbatim("HCalGeom") << "[" << k << "] " << php.hcalMaterialNames_[k];
246 #endif
247 
248  return true;
249 }

References HcalSimulationParameters::attenuationLength_, geant_units::operators::convertMmToCm(), HcalSimulationParameters::hcalMaterialNames_, HcalSimulationParameters::hfFibreConicalNames_, HcalSimulationParameters::hfFibreNames_, HcalSimulationParameters::hfFibreStraightNames_, HcalSimulationParameters::hfLevels_, HcalSimulationParameters::hfNames_, HcalSimulationParameters::hfPMTNames_, cuy::ii, dqmdumpme::k, HcalSimulationParameters::lambdaLimits_, HcalSimulationParameters::longFiberLength_, HcalSimulationParameters::pmtFiberLeft_, HcalSimulationParameters::pmtFiberRight_, HcalSimulationParameters::pmtLeft_, HcalSimulationParameters::pmtRight_, and HcalSimulationParameters::shortFiberLength_.

◆ fillNameVector() [1/2]

void HcalSimParametersFromDD::fillNameVector ( const cms::DDCompactView cpv,
const std::string &  value,
std::vector< std::string > &  lvnames 
)
private

Definition at line 260 of file HcalSimParametersFromDD.cc.

262  {
263  {
264  BenchmarkGrd counter("HcalSimParametersFromDD::fillNameVector");
265  const cms::DDFilter filter("Volume", value);
266  cms::DDFilteredView fv(cpv, filter);
267  lvnames = getNames(fv);
268  }
269 }

References counter, ALCARECOTkAlBeamHalo_cff::filter, and MsgTools::getNames().

◆ fillNameVector() [2/2]

void HcalSimParametersFromDD::fillNameVector ( const DDCompactView cpv,
const std::string &  attribute,
const std::string &  value,
std::vector< std::string > &  lvnames 
)
private

Definition at line 251 of file HcalSimParametersFromDD.cc.

254  {
256  DDFilteredView fv(*cpv, filter);
257  lvnames = getNames(fv);
258 }

References ALCARECOTkAlBeamHalo_cff::filter, and MsgTools::getNames().

◆ fillPMTs()

void HcalSimParametersFromDD::fillPMTs ( const std::vector< double > &  neta,
bool  lOrR,
HcalSimulationParameters php 
)
private

Definition at line 271 of file HcalSimParametersFromDD.cc.

271  {
272  {
273  BenchmarkGrd counter("HcalSimParametersFromDD::fillPMTs");
274  for (unsigned int ii = 0; ii < neta.size(); ii++) {
275  int index = static_cast<int>(neta[ii]);
276  int ir = -1, ifib = -1;
277  if (index >= 0) {
278  ir = index / 10;
279  ifib = index % 10;
280  }
281  if (lOrR) {
282  php.pmtLeft_.push_back(ir);
283  php.pmtFiberLeft_.push_back(ifib);
284  } else {
285  php.pmtRight_.push_back(ir);
286  php.pmtFiberRight_.push_back(ifib);
287  }
288  }
289  }
290 }

References counter, cuy::ii, neta, HcalSimulationParameters::pmtFiberLeft_, HcalSimulationParameters::pmtFiberRight_, HcalSimulationParameters::pmtLeft_, and HcalSimulationParameters::pmtRight_.

◆ getDDDArray()

std::vector< double > HcalSimParametersFromDD::getDDDArray ( const std::string &  str,
const DDsvalues_type sv,
int &  nmin 
)
private

Definition at line 338 of file HcalSimParametersFromDD.cc.

338  {
339 #ifdef EDM_ML_DEBUG
340  edm::LogVerbatim("HCalGeom") << "HcalSimParametersFromDD::getDDDArray called for " << str << " with nMin " << nmin;
341 #endif
342  DDValue value(str);
343  if (DDfetch(&sv, value)) {
344 #ifdef EDM_ML_DEBUG
345  edm::LogVerbatim("HCalGeom") << value;
346 #endif
347  const std::vector<double>& fvec = value.doubles();
348  int nval = fvec.size();
349  if (nmin > 0) {
350  if (nval < nmin) {
351  edm::LogError("HCalGeom") << "# of " << str << " bins " << nval << " < " << nmin << " ==> illegal";
352  throw cms::Exception("HcalSimParametersFromDD") << "nval < nmin for array " << str << "\n";
353  }
354  } else {
355  if (nval < 1 && nmin != 0) {
356  edm::LogError("HCalGeom") << "# of " << str << " bins " << nval << " < 1 ==> illegal (nmin=" << nmin << ")";
357  throw cms::Exception("HcalSimParametersFromDD") << "nval < 1 for array " << str << "\n";
358  }
359  }
360  nmin = nval;
361  return fvec;
362  } else {
363  if (nmin != 0) {
364  edm::LogError("HCalGeom") << "Cannot get array " << str;
365  throw cms::Exception("HcalSimParametersFromDD") << "cannot get array " << str << "\n";
366  } else {
367  std::vector<double> fvec;
368  return fvec;
369  }
370  }
371 }

References DDfetch(), Exception, str, pfDeepBoostedJetPreprocessParams_cfi::sv, and relativeConstraints::value.

◆ getNames() [1/2]

std::vector< std::string > HcalSimParametersFromDD::getNames ( cms::DDFilteredView fv)
private

Definition at line 329 of file HcalSimParametersFromDD.cc.

329  {
330  std::vector<std::string> tmp;
331  while (fv.firstChild()) {
332  if (std::find(std::begin(tmp), std::end(tmp), fv.name()) == std::end(tmp))
333  tmp.emplace_back(fv.name());
334  }
335  return tmp;
336 }

References begin, end, spr::find(), cms::DDFilteredView::firstChild(), cms::DDFilteredView::name(), and createJobs::tmp.

◆ getNames() [2/2]

std::vector< std::string > HcalSimParametersFromDD::getNames ( DDFilteredView fv)
private

Definition at line 309 of file HcalSimParametersFromDD.cc.

309  {
310  std::vector<std::string> tmp;
311  bool dodet = fv.firstChild();
312  while (dodet) {
313  const DDLogicalPart& log = fv.logicalPart();
314  bool ok = true;
315 
316  for (unsigned int i = 0; i < tmp.size(); ++i) {
317  if (!strcmp(tmp[i].c_str(), log.name().name().c_str())) {
318  ok = false;
319  break;
320  }
321  }
322  if (ok)
323  tmp.push_back(log.name().name());
324  dodet = fv.next();
325  }
326  return tmp;
327 }

References DDFilteredView::firstChild(), mps_fire::i, dqm-mbProfile::log, DDFilteredView::logicalPart(), DDFilteredView::next(), convertSQLiteXML::ok, and createJobs::tmp.

◆ isItHF()

bool HcalSimParametersFromDD::isItHF ( const std::string &  name,
const HcalSimulationParameters php 
)
private
neta
const int neta
Definition: CMTRawAnalyzer.h:423
mps_fire.i
i
Definition: mps_fire.py:355
HcalSimulationParameters::longFiberLength_
std::vector< double > longFiberLength_
Definition: HcalSimulationParameters.h:14
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
filterCSVwithJSON.copy
copy
Definition: filterCSVwithJSON.py:36
HcalSimParametersFromDD::fillPMTs
void fillPMTs(const std::vector< double > &, bool, HcalSimulationParameters &)
Definition: HcalSimParametersFromDD.cc:271
HcalSimParametersFromDD::getNames
std::vector< std::string > getNames(DDFilteredView &fv)
Definition: HcalSimParametersFromDD.cc:309
HcalSimulationParameters::hfPMTNames_
std::vector< std::string > hfPMTNames_
Definition: HcalSimulationParameters.h:24
HcalSimParametersFromDD::getDDDArray
std::vector< double > getDDDArray(const std::string &str, const DDsvalues_type &sv, int &nmin)
Definition: HcalSimParametersFromDD.cc:338
DDFilteredView::logicalPart
const DDLogicalPart & logicalPart() const
The logical-part of the current node in the filtered-view.
Definition: DDFilteredView.cc:16
HcalSimulationParameters::hfLevels_
std::vector< int > hfLevels_
Definition: HcalSimulationParameters.h:21
HcalSimulationParameters::pmtLeft_
std::vector< int > pmtLeft_
Definition: HcalSimulationParameters.h:18
HcalSimulationParameters::lambdaLimits_
std::vector< int > lambdaLimits_
Definition: HcalSimulationParameters.h:12
HcalSimulationParameters::hfFibreStraightNames_
std::vector< std::string > hfFibreStraightNames_
Definition: HcalSimulationParameters.h:25
HcalSimulationParameters::pmtFiberRight_
std::vector< int > pmtFiberRight_
Definition: HcalSimulationParameters.h:17
cms::DDFilteredView
Definition: DDFilteredView.h:65
dbl_to_int
std::vector< int > dbl_to_int(const std::vector< double > &vecdbl)
Converts a std::vector of doubles to a std::vector of int.
Definition: DDutils.h:7
spr::find
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:19
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
convertSQLiteXML.ok
bool ok
Definition: convertSQLiteXML.py:98
HcalSimulationParameters::hfFibreNames_
std::vector< std::string > hfFibreNames_
Definition: HcalSimulationParameters.h:23
end
#define end
Definition: vmac.h:39
cms::DDFilteredView::name
std::string_view name() const
Definition: DDFilteredView.cc:606
DDFilteredView::firstChild
bool firstChild()
set the current node to the first child ...
Definition: DDFilteredView.cc:86
cms::DDFilter
Definition: DDFilteredView.h:54
DDFilteredView::next
bool next()
set current node to the next node in the filtered tree
Definition: DDFilteredView.cc:67
pfDeepBoostedJetPreprocessParams_cfi.sv
sv
Definition: pfDeepBoostedJetPreprocessParams_cfi.py:226
str
#define str(s)
Definition: TestProcessor.cc:48
cms::dd::noNamespace
std::string_view noNamespace(std::string_view)
Definition: Filter.cc:63
cms::DDFilteredView::firstChild
bool firstChild()
set the current node to the first child
Definition: DDFilteredView.cc:218
DDfetch
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
Definition: DDsvalues.cc:79
HcalSimulationParameters::pmtFiberLeft_
std::vector< int > pmtFiberLeft_
Definition: HcalSimulationParameters.h:19
HcalSimulationParameters::pmtRight_
std::vector< int > pmtRight_
Definition: HcalSimulationParameters.h:16
dqmdumpme.k
k
Definition: dqmdumpme.py:60
HcalSimParametersFromDD::isItHF
bool isItHF(const std::string &, const HcalSimulationParameters &)
Definition: HcalSimParametersFromDD.cc:292
ALCARECOTkAlBeamHalo_cff.filter
filter
Definition: ALCARECOTkAlBeamHalo_cff.py:27
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalSimParametersFromDD::buildParameters
bool buildParameters(const HcalSimulationParameters &)
Definition: HcalSimParametersFromDD.cc:168
HcalSimulationParameters::hfFibreConicalNames_
std::vector< std::string > hfFibreConicalNames_
Definition: HcalSimulationParameters.h:26
edm::LogError
Definition: MessageLogger.h:183
geant_units::operators::convertCmToMm
constexpr NumType convertCmToMm(NumType centimeters)
Definition: GeantUnits.h:68
HcalSimulationParameters::hcalMaterialNames_
std::vector< std::string > hcalMaterialNames_
Definition: HcalSimulationParameters.h:27
DDLogicalPart
A DDLogicalPart aggregates information concerning material, solid and sensitveness ....
Definition: DDLogicalPart.h:93
DDSpecificsHasNamedValueFilter
Definition: DDFilter.h:60
value
Definition: value.py:1
edm::LogVerbatim
Definition: MessageLogger.h:297
counter
static std::atomic< unsigned int > counter
Definition: SharedResourceNames.cc:15
HcalSimulationParameters::shortFiberLength_
std::vector< double > shortFiberLength_
Definition: HcalSimulationParameters.h:13
DDValue
Definition: DDValue.h:21
relativeConstraints.value
value
Definition: relativeConstraints.py:53
Exception
Definition: hltDiff.cc:246
BenchmarkGrd
Definition: BenchmarkGrd.h:9
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
DDSpecificsMatchesValueFilter
Definition: DDFilter.h:70
dqm-mbProfile.log
log
Definition: dqm-mbProfile.py:17
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
DDFilteredView
Definition: DDFilteredView.h:20
geant_units::operators::convertMmToCm
constexpr NumType convertMmToCm(NumType millimeters)
Definition: GeantUnits.h:62
HcalSimParametersFromDD::fillNameVector
void fillNameVector(const DDCompactView *, const std::string &, const std::string &, std::vector< std::string > &)
Definition: HcalSimParametersFromDD.cc:251
HcalSimulationParameters::hfNames_
std::vector< std::string > hfNames_
Definition: HcalSimulationParameters.h:22
DDsvalues_type
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
Definition: DDsvalues.h:12
cuy.ii
ii
Definition: cuy.py:590
begin
#define begin
Definition: vmac.h:32
HcalSimulationParameters::attenuationLength_
std::vector< double > attenuationLength_
Definition: HcalSimulationParameters.h:11