HighLAND
TPCP0DMatchEffSystematics.hxx
1 #ifndef TPCP0DMatchEffSystematics_h
2 #define TPCP0DMatchEffSystematics_h
3 
4 #include "EventWeightBase.hxx"
5 #include "BinnedParams.hxx"
6 
7 
9 public:
10 
11  TPCP0DMatchEffSystematics(bool computecounters=false);
12 
13  virtual ~TPCP0DMatchEffSystematics() {}
14 
15  /// Apply the systematic
16  Weight_h ComputeWeight(const ToyExperiment&, const AnaEventC&, const ToyBoxB&){return 1;}
17 
18  Weight_h ComputeWeight(const ToyExperiment& toy, const AnaEventC& event, const ToyBoxB& box, const SelectionBase& sel);
19 
20 protected:
21 
22  /// Is this track relevant for this systematic ?
23  bool IsRelevantRecObject(const AnaEventC& event, const AnaRecObjectC& track) const;
24 
25  /// Is this track relevant for this systematic ?
26  bool IsRelevantTrueObject(const AnaEventC& event, const AnaTrueObjectC& track) const;
27 
28  /// Get the TrackGroup IDs array for this systematic
29  Int_t GetRelevantRecObjectGroups(const SelectionBase& sel, Int_t ibranch, Int_t* IDs) const;
30 
31  /// Get the TrueTrackGroup IDs array for this systematic
32  Int_t GetRelevantTrueObjectGroups(const SelectionBase& sel, Int_t ibranch, Int_t* IDs) const;
33 
34  bool _computecounters;
35 
36  /// Graphs relevant for interpolation business
37  /// assume that is the last bin we interpolate through
38 
39 };
40 
41 #endif
Int_t GetRelevantTrueObjectGroups(const SelectionBase &sel, Int_t ibranch, Int_t *IDs) const
Get the TrueTrackGroup IDs array for this systematic.
Int_t GetRelevantRecObjectGroups(const SelectionBase &sel, Int_t ibranch, Int_t *IDs) const
Get the TrackGroup IDs array for this systematic.
bool IsRelevantTrueObject(const AnaEventC &event, const AnaTrueObjectC &track) const
Is this track relevant for this systematic ?
Weight_h ComputeWeight(const ToyExperiment &, const AnaEventC &, const ToyBoxB &)
Apply the systematic.
bool IsRelevantRecObject(const AnaEventC &event, const AnaRecObjectC &track) const
Is this track relevant for this systematic ?