29 throw cms::Exception(
"AlignPCLThresholds") <<
"No Thresholds defined for Alignable id " << AlignableId <<
"\n";
42 return a.getSigXcut();
44 return a.getSigYcut();
46 return a.getSigZcut();
48 return a.getSigThetaXcut();
50 return a.getSigThetaYcut();
52 return a.getSigThetaZcut();
55 <<
"Requested significance threshold for undefined coordinate" <<
type <<
"\n";
65 {
a.getSigXcut(),
a.getSigYcut(),
a.getSigZcut(),
a.getSigThetaXcut(),
a.getSigThetaYcut(),
a.getSigThetaZcut()}};
78 return a.getThetaXcut();
80 return a.getThetaYcut();
82 return a.getThetaZcut();
85 <<
"Requested significance threshold for undefined coordinate" <<
type <<
"\n";
94 return {{
a.getXcut(),
a.getYcut(),
a.getZcut(),
a.getThetaXcut(),
a.getThetaYcut(),
a.getThetaZcut()}};
102 return a.getMaxMoveXcut();
104 return a.getMaxMoveYcut();
106 return a.getMaxMoveZcut();
108 return a.getMaxMoveThetaXcut();
110 return a.getMaxMoveThetaYcut();
112 return a.getMaxMoveThetaZcut();
115 <<
"Requested significance threshold for undefined coordinate" <<
type <<
"\n";
124 return {{
a.getMaxMoveXcut(),
127 a.getMaxMoveThetaXcut(),
128 a.getMaxMoveThetaYcut(),
129 a.getMaxMoveThetaZcut()}};
137 return a.getErrorXcut();
139 return a.getErrorYcut();
141 return a.getErrorZcut();
143 return a.getErrorThetaXcut();
145 return a.getErrorThetaYcut();
147 return a.getErrorThetaZcut();
150 <<
"Requested significance threshold for undefined coordinate" <<
type <<
"\n";
159 return {{
a.getErrorXcut(),
162 a.getErrorThetaXcut(),
163 a.getErrorThetaYcut(),
164 a.getErrorThetaZcut()}};
169 const unsigned int i)
const {
171 return a.getExtraDOFCuts(
i);
176 const unsigned int i)
const {
178 return a.getExtraDOFLabel(
i);
184 edm::LogVerbatim(
"AlignPCLThresholds") <<
" =========================================================================" 185 "==========================================";
188 edm::LogVerbatim(
"AlignPCLThresholds") <<
" =======================================================================" 189 "============================================";
191 <<
"key : " <<
it->first <<
" \n" 192 <<
"- Xcut : " << std::setw(4) << (
it->second).getXcut() << std::setw(5) <<
" um" 193 <<
"| sigXcut : " << std::setw(4) << (
it->second).getSigXcut() << std::setw(1) <<
" " 194 <<
"| maxMoveXcut : " << std::setw(4) << (
it->second).getMaxMoveXcut() << std::setw(5) <<
" um" 195 <<
"| ErrorXcut : " << std::setw(4) << (
it->second).getErrorXcut() << std::setw(5) <<
" um\n" 197 <<
"- thetaXcut : " << std::setw(4) << (
it->second).getThetaXcut() << std::setw(5) <<
" urad" 198 <<
"| sigThetaXcut : " << std::setw(4) << (
it->second).getSigThetaXcut() << std::setw(1) <<
" " 199 <<
"| maxMoveThetaXcut : " << std::setw(4) << (
it->second).getMaxMoveThetaXcut() << std::setw(5) <<
" urad" 200 <<
"| ErrorThetaXcut : " << std::setw(4) << (
it->second).getErrorThetaXcut() << std::setw(5) <<
" urad\n" 202 <<
"- Ycut : " << std::setw(4) << (
it->second).getYcut() << std::setw(5) <<
" um" 203 <<
"| sigYcut : " << std::setw(4) << (
it->second).getSigXcut() << std::setw(1) <<
" " 204 <<
"| maxMoveYcut : " << std::setw(4) << (
it->second).getMaxMoveYcut() << std::setw(5) <<
" um" 205 <<
"| ErrorYcut : " << std::setw(4) << (
it->second).getErrorYcut() << std::setw(5) <<
" um\n" 207 <<
"- thetaYcut : " << std::setw(4) << (
it->second).getThetaYcut() << std::setw(5) <<
" urad" 208 <<
"| sigThetaYcut : " << std::setw(4) << (
it->second).getSigThetaYcut() << std::setw(1) <<
" " 209 <<
"| maxMoveThetaYcut : " << std::setw(4) << (
it->second).getMaxMoveThetaYcut() << std::setw(5) <<
" urad" 210 <<
"| ErrorThetaYcut : " << std::setw(4) << (
it->second).getErrorThetaYcut() << std::setw(5) <<
" urad\n" 212 <<
"- Zcut : " << std::setw(4) << (
it->second).getZcut() << std::setw(5) <<
" um" 213 <<
"| sigZcut : " << std::setw(4) << (
it->second).getSigZcut() << std::setw(1) <<
" " 214 <<
"| maxMoveZcut : " << std::setw(4) << (
it->second).getMaxMoveZcut() << std::setw(5) <<
" um" 215 <<
"| ErrorZcut : " << std::setw(4) << (
it->second).getErrorZcut() << std::setw(5) <<
" um\n" 217 <<
"- thetaZcut : " << std::setw(4) << (
it->second).getThetaZcut() << std::setw(5) <<
" urad" 218 <<
"| sigThetaZcut : " << std::setw(4) << (
it->second).getSigThetaZcut() << std::setw(1) <<
" " 219 <<
"| maxMoveThetaZcut : " << std::setw(4) << (
it->second).getMaxMoveThetaZcut() << std::setw(5) <<
" urad" 220 <<
"| ErrorThetaZcut : " << std::setw(4) << (
it->second).getErrorThetaZcut() << std::setw(5) <<
" urad";
222 if ((
it->second).hasExtraDOF()) {
223 for (
unsigned int j = 0;
j < (
it->second).extraDOFSize();
j++) {
229 <<
"- cut : " << std::setw(4) << extraDOFCuts.at(0) << std::setw(5) <<
" " 230 <<
"| sigCut : " << std::setw(4) << extraDOFCuts.at(1) << std::setw(1) <<
" " 231 <<
"| maxMoveCut : " << std::setw(4) << extraDOFCuts.at(2) << std::setw(5) <<
" " 232 <<
"| maxErrorCut : " << std::setw(4) << extraDOFCuts.at(3) << std::setw(5) <<
" ";
240 std::vector<std::string> alignables_;
244 alignables_.push_back(
it->first);
Log< level::Info, true > LogVerbatim
void setAlignPCLThreshold(const std::string &AlignableId, const AlignPCLThreshold &Threshold)
std::string getExtraDOFLabelForAlignable(const std::string &AlignableId, const unsigned int i) const
std::map< std::string, AlignPCLThreshold > threshold_map
float getSigCut(const std::string &AlignableId, const coordType &type) const
float getCut(const std::string &AlignableId, const coordType &type) const
float getMaxMoveCut(const std::string &AlignableId, const coordType &type) const
const int & getNrecords() const
std::array< float, 4 > getExtraDOFCutsForAlignable(const std::string &AlignableId, const unsigned int i) const
float getMaxErrorCut(const std::string &AlignableId, const coordType &type) const
void setNRecords(const int &Nrecords)
threshold_map m_thresholds
void setAlignPCLThresholds(const int &Nrecords, const threshold_map &Thresholds)
std::vector< std::string > getAlignableList() const
AlignPCLThreshold getAlignPCLThreshold(const std::string &AlignableId) const