|
|
Go to the documentation of this file.
17 const std::vector<std::string>& fvec =
val.strings();
19 throw cms::Exception(
"MTDParametersFromDD") <<
"Failed to get " <<
s <<
" tag.";
24 result = static_cast<int>(eparser);
27 throw cms::Exception(
"MTDParametersFromDD") <<
"Failed to get " <<
s <<
" tag.";
33 std::array<std::string, 2> mtdSubdet{{
"BTL",
"ETL"}};
35 for (
const auto&
name : mtdSubdet) {
39 putOne(subdet, subdetPars, ptp);
51 int topoMode = getMTDTopologyMode(
"TopologyMode",
sv);
54 throw cms::Exception(
"MTDParametersFromDD") <<
"Not found " << attribute.c_str() <<
" but needed.";
63 std::array<std::string, 2> mtdSubdet{{
"BTL",
"ETL"}};
65 for (
const auto&
name : mtdSubdet) {
67 for (
auto const& it : vmap) {
69 std::vector<int> subdetPars;
70 for (
const auto&
i : it.second)
71 subdetPars.emplace_back(std::round(
i));
72 putOne(subdet, subdetPars, ptp);
77 auto it = vmap.find(
"vPars");
78 if (it !=
end(vmap)) {
79 std::vector<int> tmpVec;
80 for (
const auto&
i : it->second)
81 tmpVec.emplace_back(std::round(
i));
88 mypar.
filter(ref, attribute,
"MTD");
91 if (!topoModeS.empty()) {
94 topoMode = static_cast<int>(eparser);
97 throw cms::Exception(
"MTDParametersFromDD") <<
"Not found " << attribute.c_str() <<
" but needed.";
std::vector< int > vpars_
std::vector< Item > vitems_
tbb::concurrent_unordered_map< std::string, tbb::concurrent_vector< double > > DDVectorsMap
DDsvalues_type mergedSpecifics() const
const DDSpecPar * specPar(std::string_view) const
Mode MTDStringToEnumParser(const std::string &)
std::vector< int > dbl_to_int(const std::vector< double > &vecdbl)
Converts a std::vector of doubles to a std::vector of int.
std::vector< double > get(const std::string &)
bool firstChild()
set the current node to the first child ...
Compact representation of the geometrical detector hierarchy.
std::string_view noNamespace(std::string_view)
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
std::vector< const DDSpecPar * > DDSpecParRefs
std::string_view strValue(const std::string &) const
bool check(const std::string &)
void putOne(int, std::vector< int > &, PMTDParameters &)
bool compareEqual(std::string_view, std::string_view)
DDSpecParRegistry const & specpars() const
void filter(DDSpecParRefs &, const std::string &, const std::string &="") const
bool build(const DDCompactView *, PMTDParameters &)
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
DDVectorsMap const & vectors() const
const cms::DDDetector * detector() const