64 : m_record(iConfig.getParameter<
std::
string>(
"record")),
65 m_minNrecords(iConfig.getParameter<unsigned
int>(
"minNRecords")),
86 std::array<std::string, 6> mandatories = {{
"X",
"Y",
"Z",
"thetaX",
"thetaY",
"thetaZ"}};
87 std::vector<std::string> alignables;
93 if (
std::find(alignables.begin(), alignables.end(), alignableId) == alignables.end()) {
94 alignables.push_back(alignableId);
98 for (
auto& alignable : alignables) {
106 std::vector<std::string> presentDOF;
109 std::vector<AlignPCLThreshold::coordThresholds> extraDOFs = std::vector<AlignPCLThreshold::coordThresholds>();
115 const double cutoff(thePSet.getParameter<
double>(
"cut"));
116 const double sigCut(thePSet.getParameter<
double>(
"sigCut"));
117 const double maxMoveCut(thePSet.getParameter<
double>(
"maxMoveCut"));
118 const double maxErrorCut(thePSet.getParameter<
double>(
"maxErrorCut"));
120 if (alignableId == alignable) {
121 presentDOF.push_back(DOF);
145 <<
"Appending Extra degree of freeedom: " << DOF <<
" " <<
mapOntoEnum(DOF) << std::endl;
148 extraDOFs.push_back(ExtraDOF);
159 <<
"Size of AlignPCLThresholds object " <<
myThresholds->
size() << std::endl;
160 for (
auto& mandatory : mandatories) {
161 if (
std::find(presentDOF.begin(), presentDOF.end(), mandatory) == presentDOF.end()) {
163 <<
"Configuration for DOF: " << mandatory <<
" for alignable " << alignable <<
"is not present \n"
164 <<
"Will build object with defaults!" << std::endl;
172 edm::LogInfo(
"AlignPCLThresholdsWriter") <<
"Content of AlignPCLThresholds " << std::endl;
195 }
else if (coord ==
"Y") {
197 }
else if (coord ==
"Z") {
199 }
else if (coord ==
"thetaX") {
201 }
else if (coord ==
"thetaY") {
203 }
else if (coord ==
"thetaZ") {