1 #include "ToFResolSystematics.hxx" 2 #include "EventBoxTracker.hxx" 3 #include "Parameters.hxx" 23 _apply_ToF_based_Flip = (bool)ND::params().GetParameterI(
"psycheSystematics.ToF.ApplyToFFlip");
41 if(topo == ToFSenseCorrector::kToFTopo_FGD1FGD2)
44 if(topo == ToFSenseCorrector::kToFTopo_FGD1P0D_Track)
47 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_LAStartFgd_Track)
49 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_LAStartFgd_Shower)
51 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_LAEndFgd_Track)
53 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_LAEndFgd_Shower)
55 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_HAStartFgd_Track)
57 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_HAStartFgd_Shower)
59 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_HAEndFgd_Track)
61 if(topo == ToFSenseCorrector::kToFTopo_FGD1ECAL_HAEndFgd_Shower)
80 if(!track->
Original){ std::cout<<
"ToFResolSystematics::UndoSystematic:: No original object , not able to undo variation"<<std::endl;
continue; }
83 if(track->
ToF.Flag_FGD1_FGD2)
84 track->
ToF.FGD1_FGD2 = orig->
ToF.FGD1_FGD2;
86 if(track->
ToF.Flag_P0D_FGD1)
87 track->
ToF.P0D_FGD1 = orig->
ToF.P0D_FGD1;
89 if(track->
ToF.Flag_ECal_FGD1)
90 track->
ToF.ECal_FGD1 = orig->
ToF.ECal_FGD1;
92 if(track->
ToF.Flag_ECal_FGD2)
93 track->
ToF.ECal_FGD2 = orig->
ToF.ECal_FGD2;
111 IDs[0] = EventBoxTracker::kTracksWithTPCorFGD1;
112 IDs[1] = EventBoxTracker::kTracksWithTPCorFGD2;
Int_t _index
The index of this systematic (needed by SystematicsManager);.
Float_t * Variations
the vector of Variations, one for each of the systematic parameters
Int_t GetRelevantRecObjectGroups(const SelectionBase &sel, Int_t *IDs) const
Get the TrackGroup IDs array for this systematic.
SystBoxB * GetSystBox(const AnaEventC &event, Int_t isel=0, Int_t ibranch=0) const
Get the SystBox corresponding to a selection, branch and event.
void SetNParameters(int N)
Set the number of systematic parameters associated to this systematic.
AnaToF ToF
Times of flight between pairs of detectors.
static void FlipTrack(AnaTrackB &track)
Flip a track.
static ToFTopology GetToFTopology(const AnaTrackB &track)
const AnaParticleB * Original
Representation of a global track.
ToyVariations * GetToyVariations(UInt_t index) const
returns the variations for a given systematic (index)
Int_t nRelevantRecObjects
----—— Relevant rec objects and true objects for each systematic ------------—— ...
Int_t GetNBins()
Get the number of bins.
virtual void Apply(const ToyExperiment &toy, AnaEventC &event)
Apply the systematic.
bool GetSigmaValueForBin(Int_t index, Float_t &sigma)
Get only mean or sigma.
virtual bool UndoSystematic(AnaEventC &event)
Undo the systematic variations done by ApplyVariation. This is faster tha reseting the full Spill...