LDMX Software
AnalysisUtils.h
Go to the documentation of this file.
1
7#ifndef _ANALYSIS_UTILS_H_
8#define _ANALYSIS_UTILS_H_
9
10//----------------//
11// C++ StdLib //
12//----------------//
13#include <map>
14
15// Forward declaration for classes inside ldmx namespace
16// class FindableTrackResult;
17namespace ldmx {
18class SimParticle;
19}
20
21namespace analysis {
22
31std::tuple<int, const ldmx::SimParticle*> getRecoil(
32 const std::map<int, ldmx::SimParticle>& particleMap);
33
44std::tuple<int, const ldmx::SimParticle*> getBremPhoton(
45 const std::map<int, ldmx::SimParticle>& particleMap);
46
55 const ldmx::SimParticle& gamma,
56 const std::map<int, ldmx::SimParticle>& particleMap);
57
75 const std::map<int, ldmx::SimParticle>& particleMap,
76 const ldmx::SimParticle* recoil, const float& energyThreshold);
77
78} // namespace analysis
79
80#endif // _ANALYSIS_UTILS_H_
std::tuple< int, const ldmx::SimParticle * > getBremPhoton(const std::map< int, ldmx::SimParticle > &particleMap)
Find and return the sim particle associated with the brem photon, if any.
const ldmx::SimParticle * getPNGamma(const std::map< int, ldmx::SimParticle > &particleMap, const ldmx::SimParticle *recoil, const float &energyThreshold)
Get a pointer to the sim particle associated with the photon that underwent a photo-nuclear reaction.
std::tuple< int, const ldmx::SimParticle * > getRecoil(const std::map< int, ldmx::SimParticle > &particleMap)
Find and return the sim particle associated with the recoil electron.
bool doesParticleHavePNDaughters(const ldmx::SimParticle &gamma, const std::map< int, ldmx::SimParticle > &particleMap)
Helper function to getPNGamma.
Class representing a simulated particle.
Definition SimParticle.h:25