14 ostringstream locStream;
15 locStream << DAnalysisAction::Get_ActionName() <<
"_" <<
dMinTrackHits;
16 return locStream.str();
22 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
27 set<int> locCDCRings, locFDCPlanes;
30 unsigned int locNumTrackHits = locCDCRings.size() + locFDCPlanes.size();
39 ostringstream locStream;
41 return locStream.str();
57 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
75 ostringstream locStream;
77 return locStream.str();
83 for(
size_t loc_i = 0; loc_i < locSteps.size(); ++loc_i)
87 auto locParticles = locSteps[loc_i]->Get_FinalParticles_Measured(
Get_Reaction()->Get_ReactionStep(loc_i),
d_AllCharges);
88 for(
size_t loc_j = 0; loc_j < locParticles.size(); ++loc_j)
115 ostringstream locStream;
117 return locStream.str();
123 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
147 ostringstream locStream;
149 return locStream.str();
156 unsigned int locTotalNDF = 0;
157 double locTotalChiSq = 0.0;
158 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
165 locTotalNDF += locNeutralParticleHypothesis->
Get_NDF();
166 locTotalChiSq += locNeutralParticleHypothesis->
Get_ChiSq();
173 locTotalNDF += locChargedTrackHypothesis->
Get_NDF();
174 locTotalChiSq += locChargedTrackHypothesis->
Get_ChiSq();
182 ostringstream locStream;
184 return locStream.str();
189 unsigned int locTotalNDF = 0;
190 double locTotalChiSq = 0.0;
193 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
195 auto locTrackTimeBased = (
dynamic_cast<const DChargedTrackHypothesis*
>(locParticles[loc_i]))->Get_TrackTimeBased();
196 locTotalNDF += locTrackTimeBased->Ndof;
197 locTotalChiSq += locTrackTimeBased->chisq;
205 ostringstream locStream;
207 return locStream.str();
221 set<set<size_t> >::iterator locComboIterator = locIndexCombos.begin();
222 for(; locComboIterator != locIndexCombos.end(); ++locComboIterator)
225 double locMissingMass = locMissingP4.M();
235 ostringstream locStream;
237 return locStream.str();
251 set<set<size_t> >::iterator locComboIterator = locIndexCombos.begin();
252 for(; locComboIterator != locIndexCombos.end(); ++locComboIterator)
255 double locMissingMassSq = locMissingP4.M2();
265 ostringstream locStream;
267 return locStream.str();
289 set<set<size_t> >::iterator locComboIterator = locIndexCombos.begin();
290 bool locAnyOKFlag =
false;
291 for(; locComboIterator != locIndexCombos.end(); ++locComboIterator)
294 double locInvariantMass = locFinalStateP4.M();
309 ostringstream locStream;
311 return locStream.str();
318 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
320 locVertexZ = locParticles[loc_i]->position().Z();
329 ostringstream locStream;
331 return locStream.str();
343 ostringstream locStream;
344 locStream << DAnalysisAction::Get_ActionName() <<
"_" <<
dMaxTrackDOCA;
345 return locStream.str();
357 for(
size_t loc_i = 0; loc_i < locSteps.size(); ++loc_i)
361 auto locParticles = locSteps[loc_i]->Get_FinalParticles_Measured(
Get_Reaction()->Get_ReactionStep(loc_i),
d_Charged);
362 for(
size_t loc_j = 0; loc_j < locParticles.size(); ++loc_j)
364 for(
size_t loc_k = loc_j + 1; loc_k < locParticles.size(); ++loc_k)
377 ostringstream locStream;
379 return locStream.str();
385 if(locKinFitResults == NULL)
400 VT_TRACER(
"DCutAction_BDTSignalCombo::Perform_Action()");
403 vector<const DMCThrownMatching*> locMCThrownMatchingVector;
404 locEventLoop->Get(locMCThrownMatchingVector);
405 if(locMCThrownMatchingVector.empty())
422 vector<const DMCThrown*> locMCThrowns;
423 locEventLoop->Get(locMCThrowns);
425 map<int, const DMCThrown*> locMCThrownMyIDMap;
426 for(
size_t loc_i = 0; loc_i < locMCThrowns.size(); ++loc_i)
427 locMCThrownMyIDMap[locMCThrowns[loc_i]->myid] = locMCThrowns[loc_i];
436 for(
size_t loc_j = 0; loc_j < locParticles.size(); ++loc_j)
439 double locMatchFOM = 0.0;
444 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locNeutralParticleHypothesis, locMatchFOM);
453 double locMatchFOM = 0.0;
455 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locChargedTrackHypothesis, locMatchFOM);
463 auto locParentSearchReactionStep = locReactionStep;
464 int locParentID = locMCThrown->
parentid;
465 int locSearchStepIndex = loc_i;
469 if(locParentID == -1)
475 Particle_t locInitPID = locParentSearchReactionStep->Get_InitialPID();
483 if(locInitPID !=
Gamma)
488 const DMCThrown* locMCThrownParent = locMCThrownMyIDMap[locParentID];
493 locParentID = locMCThrownParent->
parentid;
497 if(locPID != locParentSearchReactionStep->Get_InitialPID())
505 locParentID = locMCThrownParent->
parentid;
511 locParentID = locMCThrownParent->
parentid;
539 VT_TRACER(
"DCutAction_TrueCombo::Perform_Action()");
542 vector<const DMCThrownMatching*> locMCThrownMatchingVector;
543 locEventLoop->Get(locMCThrownMatchingVector);
544 if(locMCThrownMatchingVector.empty())
559 vector<const DMCThrown*> locMCThrowns;
560 locEventLoop->Get(locMCThrowns);
562 map<int, const DMCThrown*> locMCThrownMyIDMap;
563 for(
size_t loc_i = 0; loc_i < locMCThrowns.size(); ++loc_i)
564 locMCThrownMyIDMap[locMCThrowns[loc_i]->myid] = locMCThrowns[loc_i];
573 for(
size_t loc_j = 0; loc_j < locParticles.size(); ++loc_j)
576 double locMatchFOM = 0.0;
581 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locNeutralParticleHypothesis, locMatchFOM);
590 double locMatchFOM = 0.0;
592 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locChargedTrackHypothesis, locMatchFOM);
600 auto locParentSearchReactionStep = locReactionStep;
601 int locParentID = locMCThrown->
parentid;
602 int locSearchStepIndex = loc_i;
606 if(locParentID == -1)
611 if(locParentSearchReactionStep->Get_InitialPID() !=
Gamma)
616 const DMCThrown* locMCThrownParent = locMCThrownMyIDMap[locParentID];
621 locParentID = locMCThrownParent->
parentid;
624 if(locPID != locParentSearchReactionStep->Get_InitialPID())
629 locParentID = locMCThrownParent->
parentid;
631 if(locSearchStepIndex < 0)
657 vector<const DBeamPhoton*> locBeamPhotons;
658 locEventLoop->Get(locBeamPhotons,
"TAGGEDMCGEN");
659 if(locBeamPhotons.empty())
663 if(locKinematicData == NULL)
667 if(locBeamPhoton == NULL)
670 double locDeltaT = fabs(locBeamPhoton->
time() - locBeamPhotons[0]->time());
671 return ((locBeamPhoton->
dSystem == locBeamPhotons[0]->dSystem) && (locBeamPhoton->
dCounter == locBeamPhotons[0]->dCounter) && (locDeltaT < 1.0));
676 vector<const DMCThrownMatching*> locMCThrownMatchingVector;
677 locEventLoop->Get(locMCThrownMatchingVector);
681 for(
size_t loc_i = 0; loc_i < locSteps.size(); ++loc_i)
685 auto locParticles = locSteps[loc_i]->Get_FinalParticles_Measured(
Get_Reaction()->Get_ReactionStep(loc_i),
d_AllCharges);
686 for(
size_t loc_j = 0; loc_j < locParticles.size(); ++loc_j)
691 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
695 double locMatchFOM = 0.0;
697 auto locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locNeutralParticleHypothesis, locMatchFOM);
705 double locMatchFOM = 0.0;
707 auto locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locChargedTrackHypothesis, locMatchFOM);
721 vector<const DMCThrownMatching*> locMCThrownMatchingVector;
722 locEventLoop->Get(locMCThrownMatchingVector);
727 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
731 double locMatchFOM = 0.0;
733 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locNeutralParticleHypothesis, locMatchFOM);
741 double locMatchFOM = 0.0;
743 locMCThrown = locMCThrownMatching->
Get_MatchingMCThrown(locChargedTrackHypothesis, locMatchFOM);
755 ostringstream locStream;
757 return locStream.str();
763 return (locEventRFBunch->
dTime == locEventRFBunch->
dTime);
768 ostringstream locStream;
770 return locStream.str();
778 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
779 locTotalMomentum += locParticles[loc_i]->momentum();
786 ostringstream locStream;
788 return locStream.str();
796 locEventLoop->GetSingle(locParticleID);
798 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
815 map<int, int> locNumHitRingsPerSuperlayer, locNumHitPlanesPerPackage;
816 if(locTrackTimeBased != NULL)
821 else if(locTrackWireBased != NULL)
826 else if(locTrackCandidate != NULL)
835 int locInnermostCDCSuperlayer = 10, locOutermostCDCSuperlayer = 0;
836 for(
auto& locSuperlayerPair : locNumHitRingsPerSuperlayer)
838 if(locSuperlayerPair.second == 0)
840 if(locSuperlayerPair.first < locInnermostCDCSuperlayer)
841 locInnermostCDCSuperlayer = locSuperlayerPair.first;
842 if(locSuperlayerPair.first > locOutermostCDCSuperlayer)
843 locOutermostCDCSuperlayer = locSuperlayerPair.first;
847 for(
auto& locSuperlayerPair : locNumHitRingsPerSuperlayer)
849 if(locSuperlayerPair.first == locOutermostCDCSuperlayer)
851 if(locSuperlayerPair.first < locInnermostCDCSuperlayer)
858 int locOutermostFDCPlane = 0;
859 for(
auto& locPackagePair : locNumHitPlanesPerPackage)
861 if(locPackagePair.second == 0)
863 if(locPackagePair.first > locOutermostFDCPlane)
864 locOutermostFDCPlane = locPackagePair.first;
868 for(
auto& locPackagePair : locNumHitPlanesPerPackage)
870 if(locPackagePair.first == locOutermostFDCPlane)
872 if(locPackagePair.second == 0)
878 if((locOutermostCDCSuperlayer <= 2) && locNumHitPlanesPerPackage.empty())
886 japp->RootWriteLock();
890 dCutMap[
Proton].first =
new TF1(
"df_dEdxCut_ProtonLow",
"exp(-1.0*[0]*x + [1]) + [2]", 0.0, 12.0);
892 dCutMap[
Proton].second =
new TF1(
"df_dEdxCut_ProtonHigh",
"[0]", 0.0, 12.0);
898 dCutMap[
PiPlus].first =
new TF1(
"df_dEdxCut_PionLow",
"[0]", 0.0, 12.0);
900 dCutMap[
PiPlus].second =
new TF1(
"df_dEdxCut_PionHigh",
"exp(-1.0*[0]*x + [1]) + [2]", 0.0, 12.0);
910 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
913 if(!
Cut_dEdx(locChargedTrackHypothesis))
927 auto locCutPair =
dCutMap[locPID];
929 if(locTrackTimeBased->dNumHitsUsedFordEdx_CDC == 0)
932 auto locP = locTrackTimeBased->momentum().Mag();
933 auto locdEdx = locTrackTimeBased->ddEdx_CDC_amp*1.0E6;
935 return ((locdEdx >= locCutPair.first->Eval(locP)) && (locdEdx <= locCutPair.second->Eval(locP)));
940 ostringstream locStream;
942 return locStream.str();
952 if(locInitParticle == NULL)
955 double locBeamEnergy = locInitParticle->
energy();
961 ostringstream locStream;
963 return locStream.str();
973 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
977 if(locFCALShowerMatchParams == NULL)
981 const DFCALShower* locFCALShower = locFCALShowerMatchParams->dFCALShower;
982 double locShowerEOverP = locFCALShower->
getEnergy()/locChargedTrackHypothesis->
momentum().Mag();
998 ostringstream locStream;
1000 return locStream.str();
1010 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
1018 double locP = locChargedTrackHypothesis->
momentum().Mag();
1019 double locShowerEOverP = 0.0;
1023 if(locFCALShowerMatchParams == NULL)
1026 const DFCALShower* locFCALShower = locFCALShowerMatchParams->dFCALShower;
1027 locShowerEOverP = locFCALShower->
getEnergy()/locP;
1032 if(locBCALShowerMatchParams == NULL)
1035 const DBCALShower* locBCALShower = locBCALShowerMatchParams->dBCALShower;
1036 locShowerEOverP = locBCALShower->
E/locP;
1055 ostringstream locStream;
1056 locStream << DAnalysisAction::Get_ActionName() <<
"_" <<
dPID <<
"_" <<
dSystem <<
"_" <<
dDeltaTCut;
1057 return locStream.str();
1066 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
1072 if(locChargedHypo !=
nullptr)
1083 if(locNeutralHypo !=
nullptr)
1087 double locDeltaT = locParticles[loc_i]->
time() - locNeutralHypo->t0();
1099 ostringstream locStream;
1101 return locStream.str();
1110 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
1116 if(locChargedHypo !=
nullptr)
1126 if(locNeutralHypo !=
nullptr)
1142 ostringstream locStream;
1143 locStream << DAnalysisAction::Get_ActionName() <<
"_" <<
dPID;
1144 return locStream.str();
1152 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
1157 if(locChargedHypo->t1_detector() ==
SYS_NULL)
1175 japp->RootWriteLock();
1181 dHist_ConfidenceLevel = GetOrCreate_Histogram<TH1I>(
"ConfidenceLevel",
"Vertex Kinematic Fit;Confidence Level", 500, 0.0, 1.0);
1182 dHist_VertexZ = GetOrCreate_Histogram<TH1I>(
"VertexZ",
"Vertex Kinematic Fit;Vertex-Z (cm)", 500, 0.0, 200.0);
1183 dHist_VertexYVsX = GetOrCreate_Histogram<TH2I>(
"VertexYVsX",
"Vertex Kinematic Fit;Vertex-X (cm);Vertex-Y (cm)", 300, -10.0, 10.0, 300, -10.0, 10.0);
1199 deque<shared_ptr<DKinFitParticle>> locKinFitParticles;
1200 set<shared_ptr<DKinFitParticle>> locKinFitParticleSet;
1201 for(
size_t loc_i = 0; loc_i < locParticles.size(); ++loc_i)
1205 locKinFitParticles.push_back(locKinFitParticle);
1206 locKinFitParticleSet.insert(locKinFitParticle);
vector< const DKinematicData * > Get_FinalParticles_Measured(void) const
void Reset_NewEvent(void)
bool Get_IsFirstStepBeam(const DReaction *locReaction)
shared_ptr< DKinFitConstraint_Vertex > Make_VertexConstraint(const set< shared_ptr< DKinFitParticle >> &locFullConstrainParticles, const set< shared_ptr< DKinFitParticle >> &locNoConstrainParticles, TVector3 locVertexGuess=TVector3())
void Set_UpdateCovarianceMatricesFlag(bool locUpdateCovarianceMatricesFlag)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Get_FDCPlanes(unsigned int locBitPattern, set< int > &locFDCPlanes) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Get_CDCRings(unsigned int locBitPattern, set< int > &locCDCRings) const
DCutAction_TrueBeamParticle * dCutAction_TrueBeamParticle
TVector3 Get_CommonVertex(void) const
unsigned int dMinHitPlanesPerFDCPackage
string Get_ActionName(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Reset_NewEvent(void)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
string Get_ActionName(void) const
pair< int, int > Get_InitialParticleDecayFromIndices(const DReaction *locReaction, int locStepIndex)
unsigned int Get_NDF(void) const
size_t Get_NumParticleComboSteps(void) const
double dMaximumMissingMassSq
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Initialize(JEventLoop *locEventLoop)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
double energy(void) const
const DReaction * Get_Reaction(void) const
const DAnalysisUtilities * dAnalysisUtilities
void Initialize(JEventLoop *locEventLoop)
bool dCutIfBadRFBunchFlag
void Initialize(JEventLoop *locEventLoop)
static unsigned short int IsResonance(Particle_t p)
double Get_FOM(void) const
string Get_ActionName(void) const
double Get_TimeAtPOCAToVertex(void) const
string Get_ActionName(void) const
void Initialize(JEventLoop *locEventLoop)
void Initialize(JEventLoop *locEventLoop)
string Get_ActionName(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Check_IsBDTSignalEvent(JEventLoop *locEventLoop, const DReaction *locReaction, bool locExclusiveMatchFlag, bool locIncludeDecayingToReactionFlag) const
const DTrackTimeBased * Get_TrackTimeBased(void) const
string Get_ActionName(void) const
double dMinThrownMatchFOM
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
TDirectoryFile * CreateAndChangeTo_ActionDirectory(void)
const DAnalysisUtilities * dAnalysisUtilities
double dMinimumMissingMass
set< set< size_t > > Build_IndexCombos(const DReactionStep *locReactionStep, deque< Particle_t > locToIncludePIDs) const
double measuredBeta(void) const
shared_ptr< DKinFitParticle > Make_DetectedParticle(const DKinematicData *locKinematicData)
deque< Particle_t > dMissingMassOffOfPIDs
const DKinematicData * Get_InitialParticle_Measured(void) const
const DAnalysisUtilities * dAnalysisUtilities
TLorentzVector DLorentzVector
deque< Particle_t > dToIncludePIDs
const DAnalysisUtilities * dAnalysisUtilities
double Get_ChiSq(void) const
const DEventRFBunch * Get_EventRFBunch(void) const
static int ParticleCharge(Particle_t p)
map< Particle_t, pair< TF1 *, TF1 * > > dCutMap
~DCutAction_OneVertexKinFit(void)
double dMinThrownMatchFOM
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
const DAnalysisUtilities * dAnalysisUtilities
double Calc_DOCA(const DVector3 &locUnitDir1, const DVector3 &locUnitDir2, const DVector3 &locVertex1, const DVector3 &locVertex2) const
bool Get_UseKinFitResultsFlag(void) const
void Initialize(JEventLoop *locEventLoop)
shared_ptr< const DTOFHitMatchParams > Get_TOFHitMatchParams(void) const
void Recycle_LastFitMemory(void)
string Get_ActionName(void) const
DKinFitUtils_GlueX * dKinFitUtils
string Get_ActionName(void) const
double dMinimumConfidenceLevel
void Add_Constraint(const shared_ptr< DKinFitConstraint > &locKinFitConstraint)
double Get_ChiSq(void) const
double dMinimumConfidenceLevel
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Get_FDCNumHitPlanesPerPackage(int locBitPattern, map< int, int > &locNumHitPlanesPerPackage) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
string Get_ActionName(void) const
double dMaxTransverseMomentum
vector< const DParticleComboStep * > Get_ParticleComboSteps(void) const
DCutAction_TrueBeamParticle * dCutAction_TrueBeamParticle
string Get_ActionName(void) const
double dMinThrownMatchFOM
void Get_CDCNumHitRingsPerSuperlayer(int locBitPattern, map< int, int > &locNumHitRingsPerSuperlayer) const
DLorentzVector Calc_FinalStateP4(const DReaction *locReaction, const DParticleCombo *locParticleCombo, size_t locStepIndex, bool locUseKinFitDataFlag) const
vector< const DKinematicData * > Get_FinalParticles(const DReaction *locReaction, bool locIncludeMissingFlag=true, bool locIncludeDecayingFlag=true, Charge_t locCharge=d_AllCharges) const
void Initialize(JEventLoop *locEventLoop)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
string Get_ActionName(void) const
double Get_FOM(void) const
bool dIncludeDecayingToReactionFlag
Particle_t Get_InitialPID(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
double dMinimumConfidenceLevel
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
DVector3 Calc_CrudeVertex(const vector< const DKinematicData * > &locParticles) const
DLorentzVector Calc_MissingP4(const DReaction *locReaction, const DParticleCombo *locParticleCombo, bool locUseKinFitDataFlag) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
double dMinimumConfidenceLevel
int parentid
id of parent of this particle from original generator
~DCutAction_BDTSignalCombo(void)
vector< const DKinematicData * > Get_FinalParticles_Measured(const DReaction *locReaction, Charge_t locCharge=d_AllCharges) const
const DAnalysisUtilities * dAnalysisUtilities
deque< Particle_t > dMissingMassOffOfPIDs
const DAnalysisUtilities * dAnalysisUtilities
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
set< shared_ptr< DKinFitConstraint > > Get_KinFitConstraints(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
string Get_ActionName(void) const
double Get_ConfidenceLevel(void) const
string Get_ActionName(void) const
int dMissingMassOffOfStepIndex
string Get_ActionName(void) const
shared_ptr< const DSCHitMatchParams > Get_SCHitMatchParams(void) const
<A href="index.html#legend"> <IMG src="CORE.png" width="100"> </A>
string Get_ActionName(void) const
double dMinimumMissingMassSq
double dMaximumMissingMass
shared_ptr< const DFCALShowerMatchParams > Get_FCALShowerMatchParams(void) const
~DCutAction_TrueCombo(void)
const DKinematicData * Get_InitialParticle(void) const
unsigned int dMinHitRingsPerCDCSuperlayer
double measuredBeta(void) const
unsigned int Get_NDF(void) const
double Get_ConfidenceLevel(void) const
string Get_ActionName(void) const
double dMinThrownMatchFOM
const DVector3 & momentum(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Cut_TrackHitPattern(const DParticleID *locParticleID, const DKinematicData *locTrack) const
double dMinimumConfidenceLevel
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
string Get_ActionName(void) const
string Get_ActionName(void) const
DCutAction_ThrownTopology * dCutAction_ThrownTopology
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
const DReactionStep * Get_ReactionStep(size_t locStepIndex) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
const DKinFitResults * Get_KinFitResults(void) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
DVector3 Get_Position(void) const
shared_ptr< const DBCALShowerMatchParams > Get_BCALShowerMatchParams(void) const
TH1I * dHist_ConfidenceLevel
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Check_ThrownsMatchReaction(JEventLoop *locEventLoop, const DReaction *locReaction, bool locExclusiveMatchFlag) const
unsigned int dMinTrackHits
string Get_ActionName(void) const
string Get_ActionName(void) const
const DParticleComboStep * Get_ParticleComboStep(size_t locStepIndex) const
void Initialize(JEventLoop *locEventLoop)
string Get_ActionName(void) const
int type
GEANT particle ID.
const DParticleID * dParticleID
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
int dMissingMassOffOfStepIndex
void Initialize(JEventLoop *locEventLoop)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
bool Cut_dEdx(const DChargedTrackHypothesis *locChargedTrackHypothesis)
DetectorSystem_t dDetector
string Get_ActionName(void) const
Particle_t PID(void) const
const DMCThrown * Get_MatchingMCThrown(const DChargedTrackHypothesis *locChargedTrackHypothesis, double &locMatchFOM) const
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Initialize(JEventLoop *locEventLoop)
bool Perform_Action(JEventLoop *locEventLoop, const DParticleCombo *locParticleCombo)
void Initialize(JEventLoop *locEventLoop)