HighLAND
|
#include <StepBase.hxx>
Public Types | |
enum | TypeEnum { kCut =0, kAction, kUnknown } |
Enumerator describing the values that _type member can take. | |
enum | BranchStatus { BranchOK =0, BranchEmpty, NoBranches, BranchOutOfRange } |
Public Member Functions | |
virtual StepBase * | MakeClone () |
MANDATORY FUNCTIONS !!! | |
virtual bool | Apply (AnaEventC &event, ToyBoxB &box) const |
void | SetTitle (const std::string &title) |
void | SetType (TypeEnum type) |
Set the type of this step. | |
void | SetBreak (bool b) |
Set whether the cut sequence should be stopped when this cut fails. | |
void | SetIndex (Int_t index) |
Set the index of this step. | |
const std::string & | Title () const |
Return the title of this step. | |
TypeEnum | Type () const |
Return the type of this step. | |
bool | Break () const |
Return true if the cut sequence should be stopped when a cut fails. | |
Int_t | Index () const |
Return the index of this step. | |
std::string | ConvertType () const |
Convert into a string the type of this step. | |
void | DisableInBranch (Int_t branch) |
Disable step in a given branch. | |
void | EnableInBranch (Int_t branch) |
Enable step in a given branch. | |
bool | IsDisabledInBranch (Int_t branch) const |
Returns true if the step is disabled in the specified branch. | |
const std::vector< StepBase * > & | GetNextSteps () const |
Returns the vector of next steps. | |
void | RemoveNextStep (const std::string &title, Int_t ID=0) |
Remove step with a given title (and branch ID) from next steps. | |
void | AddBranchUniqueID (UInt_t ibranch) |
void | RemoveBranchUniqueID (UInt_t branch) |
Remove a branch unique ID from this step. | |
const std::vector< UInt_t > & | GetBranchUniqueIDs () const |
Returns the vector of branche unique IDs associated to this step. | |
void | AddNextStep (StepBase *step, Int_t branch=-1) |
void | GetNextSteps (std::vector< StepBase *> &steps, bool withSplits=false) |
Get the vector of next steps. | |
BranchStatus | GetNextStepsInBranch (std::vector< StepBase *> &steps, Int_t branch) |
Get the vector of next steps in a given branch, returns a status code. | |
void | ValidateStepRecursive () const |
check that the step and all its suns are correct (it was branch unique IDs defined) | |
ClassDef (StepBase, 1) | |
Protected Attributes | |
TypeEnum | _type |
The type of this step: cut or action. | |
bool | _break |
true if the cut sequence should be stopped when a cut fails | |
std::string | _title |
The title of this step, which is used by the DrawingTools. | |
std::vector< bool > | _disabledInBranch |
Is the step disabled in a given branch. | |
std::vector< StepBase * > | _nextSteps |
The vector of next steps. | |
std::vector< UInt_t > | _branchUniqueIDs |
Branch unique IDs associated to this step. | |
Int_t | _index |
Index of the step in the selection. | |
Base class for an event selection step. All user steps should inherit from this class, and implement the Apply() function. The type and title are set when the step is added to the step manager using StepManager::AddStep(). Steps can be of type Cut or Action. Cuts would have to return a meaninful boolean while for actions the boolean will be ignored
Definition at line 18 of file StepBase.hxx.
void StepBase::AddBranchUniqueID | ( | UInt_t | ibranch | ) |
Add a branch unique ID to this step Although steps are unique and can be shared by different branches we need to store the branches in which this step is used
Definition at line 35 of file StepBase.cxx.
void StepBase::AddNextStep | ( | StepBase * | step, |
Int_t | branch = -1 |
||
) |
Add a next step If now second argument is specified this step will have a unique next step (no split) If this step contains a split we need to specify the branch to which the next step is added
Definition at line 71 of file StepBase.cxx.
The return value should specify whether the step was passed. For actions the return value is ignored
Reimplemented in MomentumQualityCut, ExternalFGD1layersCut, ToFCut, ECalVetoCut, HighestMomentumCut, P0DVetoCut, PairCut, FindPairsAction, GammaIsoVetoCut, TPCVetoCut, FillTPCVetoTrackAction, SecondTPCPIDCut, EcalMIPEMPIDCut, EcalEMEnergyCut, TPCPionPullCut, CSECAL_4pi, CSECAL_PID, TPCMuonPullCut, numuCC4piMultiPi::OthersCut, CSFGD2_4pi, EcalPi0VetoCut_antinuCCMultiPi, EcalPi0VetoCut, CSFGD2_PID, numuCC4piMultiPi::OnePionCut, numuCC4pi::HABwd, FindEcalPhotonsAction_antinuCCMultiPi, FindEcalPhotonsAction, HABwd_4pi, numuCC4piMultiPi::NoPionCut, TPCElectronPullCut, numuCC4pi::HABwd_PID, HABwd_PID, numuCC4piMultiPi::EcalPi0VetoCut, numuCC4pi::HABwd_Veto, HABwd_Veto, FindPionsAction_antinuCCMultiPi, FindPionsAction, numuCC4piMultiPi::FindEcalPhotonsAction, numuCC4pi::HABwd_Quality, HABwd_Quality, FillFGDIsoTracksAction, numuCC4pi::HAFwd, HAFwd_4pi, numuCC4pi::HAFwd_PID, numuCC4piMultiPi::FindPionsAction, TrackQualityCut, HAFwd_PID, OthersCut_antinuCCMultiPi, FillSummaryAction_numuCCMultiPi, numuCC4pi::HAFwd_Veto, HAFwd_Veto, OnePionCut_antinuCCMultiPi, numuCC4pi::HAFwd_Quality, OthersCut, MultiplicityCut, HAFwd_Quality, NoPionCut_antinuCCMultiPi, numuCC4pi::Bwd, OnePionCut, FindP0DVetoTrackAction, Bwd_4pi, FillSummaryAction_numuCC4piMultiPi, ToFCut_antiNueCC, FillSummaryAction_antinuCCMultiPi, numuCC4pi::Bwd_PID, NoPionCut, FindECalVetoTrackAction, Bwd_PID, numuCC4pi::Bwd_Veto, numuCCBwd::FindMuonCandidateAction, Bwd_Veto, FillVertex, numuCC4pi::Bwd_Quality, Bwd_Quality, FindOOFVTrackAction, FGDShowerCut_antiNueCC, FillLeadingTracksAction, numuCCBwd::SwitchBackAction, numuCC4pi::Fwd, Fwd_4pi, FindVetoTrackAction, FillSummaryAction_nueCC, numuCC4pi::Fwd_PID, numuCCBwd::FindVertexAction, Fwd_PID, FindVertexAction, EoverPCut_antiNueCC, numuCC4pi::Fwd_Veto, Fwd_Veto, numuCC4pi::Fwd_Quality, FindLongTPCTracks, FindLeadingTracksAction, Fwd_Quality, numuCCBwd::MuonPIDCut, numuCC4pi::FindVertexAction, MoreThanTwoLongTPCTracksCut, ExternalFGD1lastlayersCut, EcalEMHIPPIDCut_antiNueCC, FindOOFVTrackAction, FillSummaryAction_numuCC4pi, numuCC4pi::PIDAction, MoreThanTwoTPCTracksCut, DeltaZCut, FindVetoTrackAction, FindTrueVertexAction, numuCCBwd::AvailableToF, FindVertexAction, numuCC4pi::VetoAction, TwoTPCTracksCut, ExternalVetoCut, FindVertexAction, NoMichelElectronsCut, PIDAction, EcalEMEnergyCut_antiNueCC, PIDCut_gamma, numuCCBwd::NoShower, numuCC4pi::TrackGQandFVCut, OneTPCTrackCut, NoTracksCut, VetoAction, MuonPIDCut, FindLeadingTracksAction, numuCC4pi::SortTracksAction, FillSummaryAction_tutorialBranches, TwoShowersCut, TrackGQandFVCut, MinvCut_gamma, numuCCBwd::ToF, ExternalFGD1lastlayersCut, TotalMultiplicityCut, SecondTPCPIDCut_antiNueCC, numuCC4pi::TotalMultiplicityCut, ExternalFGD2layersCut, SortTracksAction, numuCC4piFGD2::PIDAction, CountTracksAndShowersAction, ExternalVetoCut, TrackQualityFiducialCut, FillSummaryAction_numuCC4pi, PrimaryTrackQualityCut_gamma, SetDetectorFVAction, TPCVetoCut_FGD2, TotalMultiplicityCut, numuCC4piFGD2::VetoAction, MostEnergeticTrackCut_antiNueCC, FillSummaryAction_tutorial, MuonPIDCut, numuCCBwd::Exclusive, FGD1PairCut_gamma, numuCC4piFGD2::TrackGQandFVCut, ScintillatorCut, PairTrackCut_gamma, FindSecondMostEnergeticTPCTrack_antiNueCC, P0DFGD1VetoCut, FindLeadingTracksAction_antinu, numuCC4piFGD2::SortTracksAction, TotalMultiplicityCut, FindLeadingTracksAction_gamma, WaterCut, EOverPCutFGD2_antiNueCC, FillLeadingTracksAction_antiNueCC, FindFGD1PairsAction_gamma, ExternalFGD2LastLayersCut, AntiMuonPIDCut, EOverPCut, NumuBkgMuonPIDCut, numuCC4piFGD2::TotalMultiplicityCut, TrackQualityFiducialCut, AntiNuMuCCMultiTrackFGD2_CCNTracksCut, FillSummaryActionGamma, FillSummaryAction_antiNueCCFGD2Selection, FillSummaryAction_antiNueCC, TotalMultiplicityFGD2Cut, CCnQEcut_antinu, ExternalFGD2VetoCut, PositiveMultiplicityCut, NegativeMultiplicityCut, FillSummaryAction_numuCC, P0DSelectionVetoCut, AntiNuMuCCMultiTrackFGD2_CC1TrackCut, EventQualityCut, FillSummaryAction_numuCC4piMultiPiFGD2, ExternalFGD2VetoCut_antiNumuCCFGD2, FillSummaryAction_nueCCFGD2Selection, FillSummaryAction_numuCC4piFGD2, CCQEcut_antinu, FillSummaryAction_antinu, FillSummaryAction_numuCCFGD2, FillSummaryAction_numuBkgMultiPiFGD2, FillSummaryAction_numuBkgMultiTrackFGD2, FillSummaryAction_numuBkg, FindP0DVetoAction, FillSummaryAction_antiNumuCCMultiPiFGD2, AntiNuMuCCMultiTrackFGD2_FillSummaryAction, FillSummaryAction_numuCCMultiPiFGD2, MultipleP0DPIDCut, FillSummaryAction_numuBkgFGD2, FillSummaryAction_antiNumuCCFGD2, FillSummaryAction_numuBkg_CCMultiPi, FillSummaryAction_numuBkg_CCMultiTrack, FillSummaryAction_antinu_CCMultiTrack, FindP0DLeadingTracksAction, and SingleP0DPIDCut.
Definition at line 46 of file StepBase.hxx.
|
inline |
Set the title of this step, which is the "nice" version of the step name, used when plotting the step.
Definition at line 51 of file StepBase.hxx.