56 for(
size_t loc_i = 0; loc_i < locReactions.size(); ++loc_i)
58 auto locPositivePIDs = locReactions[loc_i]->Get_FinalPIDs(-1,
false,
false,
d_Positive,
false);
59 for(
auto& locPID : locPositivePIDs)
62 auto locNegativePIDs = locReactions[loc_i]->Get_FinalPIDs(-1,
false,
false,
d_Negative,
false);
63 for(
auto& locPID : locNegativePIDs)
76 VT_TRACER(
"DTrackTimeBased_factory_Combo::evnt()");
79 vector<const DChargedTrack*> locChargedTracks;
82 for(
auto& locTrack : locChargedTracks)
84 if(locTrack->Contains_Charge(1))
86 if(locTrack->Contains_Charge(-1))
95 for(
auto& locPID : locPIDs)
103 locTrackTimeBased->AddAssociatedObject(locChargedTrack);
104 _data.push_back(locTrackTimeBased);
114 if(locChargedTrackHypothesis !=
nullptr)
115 return locChargedTrackHypothesis;
125 auto locTrackTimeBased =
new DTrackTimeBased(*locOriginalTrackTimeBased);
126 locTrackTimeBased->setPID(locNewPID);
128 locTrackTimeBased->AddAssociatedObject(locOriginalTrackTimeBased);
129 return locTrackTimeBased;
jerror_t brun(jana::JEventLoop *locEventLoop, int32_t runnumber)
Called everytime a new run number is detected.
const DChargedTrackHypothesis * Get_ChargedHypothesisToUse(const DChargedTrack *locChargedTrack, Particle_t locDesiredPID)
vector< const DReaction * > Get_Reactions(JEventLoop *locEventLoop)
map< Particle_t, vector< Particle_t > > dParticleIDsToTry
const DTrackTimeBased * Get_TrackTimeBased(void) const
string dTrackSelectionTag
const DChargedTrackHypothesis * Get_Hypothesis(Particle_t locPID) const
DTrackTimeBased * Convert_ChargedTrack(const DChargedTrackHypothesis *locChargedTrackHypothesis, Particle_t locNewPID)
set< Particle_t > dPositivelyChargedPIDs
jerror_t init(void)
Called once at program start.
const DChargedTrackHypothesis * Get_BestFOM(void) const
set< Particle_t > dNegativelyChargedPIDs
void Create_PIDsAsNeeded(const DChargedTrack *locChargedTrack, set< Particle_t > &locPIDs)
jerror_t evnt(jana::JEventLoop *locEventLoop, uint64_t eventnumber)
Called every event.