1 #ifndef OMTF_GoldenPattern_H
2 #define OMTF_GoldenPattern_H
16 Key(
int iEta = 99,
unsigned int iPt = 0,
int iCharge = 0,
unsigned int iNumber = 999)
68 int pdfValue(
unsigned int iLayer,
unsigned int iRefLayer,
unsigned int iBin)
const {
69 return pdfAllRef[iLayer][iRefLayer][iBin];
91 void normalise(
unsigned int nPdfAddrBits);
unsigned int number() const
Key(int iEta=99, unsigned int iPt=0, int iCharge=0, unsigned int iNumber=999)
friend std::ostream & operator<<(std::ostream &out, const GoldenPattern &aPattern)
vector2D meanDistPhiCounts
std::vector< int > vector1D
const vector2D & getMeanDistPhi() const
bool operator==(const Key &o) const
std::pair< int, bool > layerResult
const OMTFConfiguration * myOmtfConfig
bool hasCounts()
Check if the GP has any counts in any of referecne layers;.
GoldenPattern::layerResult process1Layer1RefLayer(unsigned int iRefLayer, unsigned int iLayer, const int refPhi, const OMTFinput::vector1D &layerHits)
void normalise(unsigned int nPdfAddrBits)
std::vector< vector1D > vector2D
std::vector< vector2D > vector3D
void setPdf(const vector3D &aPdf)
Key theKey
Pattern kinematical identification (iEta,iPt,iCharge)
GoldenPattern(const Key &aKey, const OMTFConfiguration *omtfConfig)
void reset()
Reset contents of all data vectors, keeping the vectors size.
int pdfValue(unsigned int iLayer, unsigned int iRefLayer, unsigned int iBin) const
int propagateRefPhi(int phiRef, int etaRef, unsigned int iRefLayer)
void setMeanDistPhi(const vector2D &aMeanDistPhi)
friend std::ostream & operator<<(std::ostream &out, const Key &o)
void addCount(unsigned int iRefLayer, unsigned int iLayer, const int refPhi, const OMTFinput::vector1D &layerHits)
Add a single count to the relevant pdf bin in three dimensions.
int meanDistPhiValue(unsigned int iLayer, unsigned int iRefLayer) const
bool operator<(const Key &o) const
const vector3D & getPdf() const