CMS 3D CMS Logo

CandidateGroup.h
Go to the documentation of this file.
1 #ifndef L1Trigger_DTTriggerPhase2_CandidateGroup_h
2 #define L1Trigger_DTTriggerPhase2_CandidateGroup_h
3 
4 #include <tuple>
5 #include <vector>
6 #include <bitset>
7 #include <iostream>
8 #include <complex>
9 
12 
13 namespace dtbayesam {
14 
15  typedef std::bitset<8> qualitybits;
16 
17  typedef std::shared_ptr<DTPattern> DTPatternPtr;
18  typedef std::vector<DTPatternPtr> DTPatternPtrs;
19 
21  public:
22  //Constructors and destructors
26 
27  //Hit operation procedures
28  void addHit(DTPrimitive dthit, int lay, bool isGood);
29  void removeHit(DTPrimitive dthit);
30 
31  //Get Methods
32  int candId() const { return candId_; };
33  int nhits() const { return nhits_; };
34  int nisGood() const { return nisGood_; };
35  int nLayerhits() const { return nLayerhits_; };
36  int nLayerUp() const { return nLayerUp_; };
37  int nLayerDown() const { return nLayerDown_; };
38  DTPrimitivePtrs candHits() const { return candHits_; };
39  qualitybits quality() const { return quality_; };
40  const DTPatternPtr pattern() const { return pattern_; };
41 
42  //Set Methods
43  void setCandId(int cId) { candId_ = cId; };
44 
45  //Pattern rankers
46  bool operator>(const CandidateGroup& cOther) const;
47  bool operator==(const CandidateGroup& cOther) const;
48 
49  private:
52  int nhits_;
54  int nLayerUp_;
56  int nisGood_;
58  int candId_;
59  };
60 
61  typedef std::shared_ptr<CandidateGroup> CandidateGroupPtr;
62  typedef std::vector<CandidateGroupPtr> CandidateGroupPtrs;
63 }; // namespace dtbayesam
64 
65 #endif
std::vector< DTPrimitivePtr > DTPrimitivePtrs
Definition: DTprimitive.h:55
void removeHit(DTPrimitive dthit)
bool operator==(const CandidateGroup &cOther) const
const DTPatternPtr pattern() const
DTPrimitivePtrs candHits() const
std::bitset< 8 > qualitybits
std::vector< CandidateGroupPtr > CandidateGroupPtrs
DTPrimitivePtrs candHits_
std::vector< DTPatternPtr > DTPatternPtrs
std::shared_ptr< DTPattern > DTPatternPtr
std::shared_ptr< CandidateGroup > CandidateGroupPtr
qualitybits quality() const
void addHit(DTPrimitive dthit, int lay, bool isGood)
bool operator>(const CandidateGroup &cOther) const