17 : finalise([this]() {
finalise0(); }), omtfConfig(omtfConfig) {
27 std::cout << __FUNCTION__ <<
" " << __LINE__ <<
" this->refLayer " << this->
refLayer <<
" refLayer_ " << refLayer_
113 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
141 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
159 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
187 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
202 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
225 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
230 (
stubResults[iLogicLayer].getMuonStub()->qualityHw >= 4)) {
249 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
261 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
283 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
307 if (iLogicLayer < 10 &&
stubResults[iLogicLayer].getPdfVal() == 0)
322 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
344 if (iLogicLayer < 10 &&
stubResults[iLogicLayer].getPdfVal() == 0)
377 if (
stubResults[refLayerLogicNumber + 1].getPdfVal() == 0)
390 for (
unsigned int iLogicLayer = 0; iLogicLayer <
stubResults.size(); ++iLogicLayer) {
412 if (iLogicLayer < 10 &&
stubResults[iLogicLayer].getPdfVal() == 0)
441 unsigned int sumOverFiredLayers = 0;
442 for (
unsigned int iLogicLayer = 0; iLogicLayer < gpResult.
stubResults.size(); ++iLogicLayer) {
443 out <<
" layer: " << std::setw(2) << iLogicLayer <<
" hit: ";
444 if (gpResult.
stubResults[iLogicLayer].getMuonStub()) {
447 ? gpResult.
stubResults[iLogicLayer].getMuonStub()->phiBHw
448 : gpResult.
stubResults[iLogicLayer].getMuonStub()->phiHw);
450 out <<
" pdfBin: " << std::setw(4) << gpResult.
stubResults[iLogicLayer].getPdfBin() <<
" pdfVal: " << std::setw(3)
452 << (iLogicLayer == refLayerLogicNum ?
" <<< refLayer" :
"");
455 sumOverFiredLayers += gpResult.
stubResults[iLogicLayer].getPdfVal();
456 }
else if (gpResult.
stubResults[iLogicLayer].getPdfVal()) {
457 out <<
" pdfVal: " << std::setw(3) << gpResult.
stubResults[iLogicLayer].getPdfVal();
462 out <<
" refLayer: ";
465 out <<
" Sum over layers: ";
468 out <<
" sumOverFiredLayers: ";
469 out << sumOverFiredLayers <<
"\t";
471 out <<
" Sum over layers unconstr: ";
474 out <<
" Number of hits: ";
477 out <<
" GpProbability1: ";
480 out <<
" GpProbability2: ";
std::ostream & operator<<(std::ostream &out, const GoldenPatternResult &gpResult)
unsigned int firedLayerBits
bits representing fired logicLayers (including bending layers),
bool usePhiBExtrapolationMB2() const
PdfValueType getPdfSumUnconstr() const
double getGpProbability1() const
void set(int refLayer, int phi, int eta, int refHitPhi)
bool usePhiBExtrapolationMB1() const
const OMTFConfiguration * omtfConfig
std::function< void()> finalise
int getGoldenPatternResultFinalizeFunction() const
unsigned int fwVersion() const
double getGpProbability2() const
void init(const OMTFConfiguration *omtfConfig)
void setStubResult(float pdfVal, bool valid, int pdfBin, int layer, MuonStubPtr stub)
unsigned int nLayers() const
std::shared_ptr< MuonStub > MuonStubPtr
const std::vector< int > & getRefToLogicNumber() const
const std::map< int, int > & getLogicToLogic() const
bool isLayerFired(unsigned int iLayer) const
unsigned int getFiredLayerCnt() const
int eta
eta at the 2nd muon station
const std::set< int > & getBendingLayers() const
PdfValueType getPdfSum() const
double pdfSum
Sum of pdfValues.
unsigned int firedLayerCnt
Number of fired layers.
bool isBendingLayer(unsigned int iLayer) const override
int phi
phi at the 2nd muon station (propagated refHitPhi)
int refHitPhi
phi of the reference hits