13 edm::LogVerbatim(
"HCalGeom") <<
"CaloSimParametersFromDD: " << vec.size() <<
" entries for " <<
value <<
":";
15 for (
const auto&
e : vec) {
24 <<
"Inside CaloSimParametersFromDD::build(const DDCompactView*, CaloSimulationParameters&)";
33 edm::LogVerbatim(
"HCalGeom") <<
"Filtered view " << &fv <<
" after filter with " <<
sv.size() <<
" contents";
49 <<
"Inside CaloSimParametersFromDD::build(const cms::DDCompactView*, CaloSimulationParameters&)";
53 php.
caloNames_ = fv.get<std::vector<std::string> >(
"calo",
"Calorimeter");
56 php.
insideNames_ = fv.get<std::vector<std::string> >(
"calo",
"Inside");
58 php.
fCaloNames_ = fv.get<std::vector<std::string> >(
"calo",
"FineCalorimeter");
77 <<
" does not match with " << php.
neighbours_.size() <<
" ==> illegal ";
79 <<
"Calorimeter array size does not match with size of neighbours\n";
96 const std::vector<std::string>& fvec =
value.strings();
97 int nval = fvec.size();
98 if ((nval < 1) && (!
ignore)) {
99 edm::LogError(
"HCalGeom") <<
"CaloSimParametersFromDD: # of " <<
str <<
" bins " << nval <<
" < 1 ==> illegal ";
100 throw cms::Exception(
"Unknown",
"CaloSimParametersFromDD") <<
"nval < 1 for array " <<
str <<
"\n";
105 std::vector<std::string> fvec;
108 edm::LogError(
"HCalGeom") <<
"CaloSimParametersFromDD: cannot get array " <<
str;
109 throw cms::Exception(
"Unknown",
"CaloSimParametersFromDD") <<
"cannot get array " <<
str <<
"\n";
122 const std::vector<double>& fvec =
value.doubles();
123 int nval = fvec.size();
124 if ((nval < 1) && (!
ignore)) {
125 edm::LogError(
"HCalGeom") <<
"CaloSimParametersFromDD: # of " <<
str <<
" bins " << nval <<
" < 1 ==> illegal ";
126 throw cms::Exception(
"Unknown",
"CaloSimParametersFromDD") <<
"nval < 2 for array " <<
str <<
"\n";
130 std::vector<int> fvec;
133 edm::LogError(
"HCalGeom") <<
"CaloSimParametersFromDD: cannot get array " <<
str;
134 throw cms::Exception(
"Unknown",
"CaloSimParametersFromDD") <<
"cannot get array " <<
str <<
"\n";
Log< level::Info, true > LogVerbatim
bool build(const DDCompactView *, CaloSimulationParameters &)
std::vector< std::string > insideNames_
std::vector< int > levels_
const cms::DDDetector * detector() const
std::vector< std::string > getNames(const std::string &, const DDsvalues_type &, bool)
std::vector< int > insideLevel_
Log< level::Error, false > LogError
Compact representation of the geometrical detector hierarchy.
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
std::vector< int > fLevels_
std::vector< std::string > fCaloNames_
std::vector< std::pair< unsigned int, DDValue > > DDsvalues_type
std::vector< int > neighbours_
std::vector< int > getNumbers(const std::string &, const DDsvalues_type &, bool)
std::vector< int > dbl_to_int(const std::vector< double > &vecdbl)
Converts a std::vector of doubles to a std::vector of int.
DDsvalues_type mergedSpecifics() const
dd4hep::Volume worldVolume() const
Handle to the world volume containing everything.
void myPrint(std::string value, const std::vector< T > &vec)
bool firstChild()
set the current node to the first child ...
bool buildParameters(const CaloSimulationParameters &)
std::vector< std::string > caloNames_