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
0046
0047
0048 vector2D results;
0049
0050
0051 vector1D refPhi1D;
0052
0053
0054 vector1D refEta1D;
0055
0056
0057 vector1D results1D;
0058
0059
0060 vector1D hits1D;
0061
0062
0063 vector1D hitsBits;
0064
0065
0066 vector1D refPhiRHit1D;
0067
0068 const OMTFConfiguration *myOmtfConfig;
0069 };
0070
0071 #endif