HighLAND
p0dNumuCCQESelection.hxx
1 #ifndef p0dNumuCCQESelection_h
2 #define p0dNumuCCQESelection_h
3 
4 #include "SelectionBase.hxx"
5 
7 public:
8  p0dNumuCCQESelection(bool forceBreak=true);
9  virtual ~p0dNumuCCQESelection(){}
10 
11  //========= These are mandatory functions ==================
12 
13  void DefineSteps();
14  void DefineDetectorFV();
15  ToyBoxB* MakeToyBox() {return new ToyBoxTracker();}
16  /// Fill the EventBox with the objects needed by this selection
17  virtual void InitializeEvent(AnaEventC&);
18 
19  //==========================================================
20 
21  SampleId::SampleEnum GetSampleEnum(){return SampleId::kFGD1NuMuCC;}
22 };
23 
24 class SingleP0DPIDCut: public StepBase{
25  public:
26  using StepBase::Apply;
27  bool Apply(AnaEventC& event, ToyBoxB& box) const;
29 };
30 
32  public:
33  using StepBase::Apply;
34  bool Apply(AnaEventC& event, ToyBoxB& box) const;
36 };
37 #endif
void DefineSteps()
Define all steps in the selection.
virtual bool Apply(AnaEventC &event, ToyBoxB &box) const
Definition: StepBase.hxx:46
bool Apply(AnaEventC &event, bool &redo)
Apply all steps in the selection.
void DefineDetectorFV()
Define the detector Fiducial Volume in which this selection is applied.
StepBase * MakeClone()
MANDATORY FUNCTIONS !!!
virtual void InitializeEvent(AnaEventC &)
Fill the EventBox with the objects needed by this selection.
StepBase * MakeClone()
MANDATORY FUNCTIONS !!!
ToyBoxB * MakeToyBox()
Create the appropriate type of box.