CMS 3D CMS Logo

AlignmentTwoBodyDecayTrackSelector.h
Go to the documentation of this file.
1 
2 #ifndef Alignment_CommonAlignmentAlgorithm_AlignmentTwoBodyDecayTrackSelector_h
3 #define Alignment_CommonAlignmentAlgorithm_AlignmentTwoBodyDecayTrackSelector_h
4 
5 //Framework
9 //STL
10 #include <vector>
11 // forward declaration:
14 
15 namespace edm {
16  class Event;
17  class EventSetup;
18 } // namespace edm
19 
21 public:
22  typedef std::vector<const reco::Track*> Tracks;
23 
26 
29 
31  Tracks select(const Tracks& tracks, const edm::Event& iEvent, const edm::EventSetup& iSetup);
32 
33  bool useThisFilter();
34 
35 private:
37  Tracks checkMass(const Tracks& cands) const;
39  Tracks checkMETMass(const Tracks& cands, const edm::Event& iEvent) const;
41  bool checkCharge(const reco::Track* trk1, const reco::Track* trk2 = nullptr) const;
43  bool checkAcoplanarity(const reco::Track* trk1, const reco::Track* trk2) const;
45  bool checkMETAcoplanarity(const reco::Track* trk, const reco::CaloMET* met) const;
46 
48 
49  //settings from conigfile
54  //inv mass Cut
55  double theMinMass;
56  double theMaxMass;
58  unsigned int theCandNumber;
59  bool secThrBool;
60  double thesecThr;
61  //charge filter
62  int theCharge;
64  //missing ET Filter
66  //acoplanarity Filter
68  //helpers
70  void printTracks(const Tracks& col) const;
71 };
72 
73 #endif
int iEvent
Definition: GenABIO.cc:224
met
===> hadronic RAZOR
edm::EDGetTokenT< reco::CaloMETCollection > theMissingETToken
HLT enums.
col
Definition: cuy.py:1010