Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:36:59

0001 #ifndef OMTF_OMTFResult_H
0002 #define OMTF_OMTFResult_H
0003 
0004 #include <vector>
0005 #include <ostream>
0006 
0007 class OMTFConfiguration;
0008 
0009 class OMTFResult {
0010 public:
0011   typedef std::vector<unsigned int> vector1D;
0012   typedef std::vector<vector1D> vector2D;
0013 
0014   OMTFResult() {}
0015 
0016   void configure(const OMTFConfiguration *omtfConfig);
0017 
0018   const OMTFResult::vector2D &getResults() const { return results; }
0019 
0020   const OMTFResult::vector1D &getSummaryVals() const { return results1D; }
0021 
0022   const OMTFResult::vector1D &getSummaryHits() const { return hits1D; }
0023 
0024   const OMTFResult::vector1D &getRefPhis() const { return refPhi1D; }
0025 
0026   const OMTFResult::vector1D &getRefEtas() const { return refEta1D; }
0027 
0028   const OMTFResult::vector1D &getHitsWord() const { return hitsBits; }
0029 
0030   const OMTFResult::vector1D &getRefPhiRHits() const { return refPhiRHit1D; }
0031 
0032   void setRefPhiRHits(unsigned int iRefLayer, int iRefPhiRHit);
0033 
0034   void addResult(unsigned int iRefLayer, unsigned int iLayer, unsigned int val, int iRefPhi, int iRefEta);
0035 
0036   void finalise();
0037 
0038   void clear();
0039 
0040   bool empty() const;
0041 
0042   friend std::ostream &operator<<(std::ostream &out, const OMTFResult &aResult);
0043 
0044 private:
0045   ///Pdf weight found for each layer
0046   ///First index: layer number
0047   ///Second index: ref layer number
0048   vector2D results;
0049 
0050   ///Reference phi for each reference layer
0051   vector1D refPhi1D;
0052 
0053   ///Reference phi for each reference layer
0054   vector1D refEta1D;
0055 
0056   ///Sum of pdf weights for each reference layer
0057   vector1D results1D;
0058 
0059   ///Number of hits for each reference layer
0060   vector1D hits1D;
0061 
0062   ///Words representing nimber of hit layers for each reference layer
0063   vector1D hitsBits;
0064 
0065   ///Reference phi for each reference layer - the input value
0066   vector1D refPhiRHit1D;
0067 
0068   const OMTFConfiguration *myOmtfConfig;
0069 };
0070 
0071 #endif