5 namespace fhicl {
class ParameterSet; }
10 #include "nusimdata/SimulationBase/MCParticle.h"
11 #include "nusimdata/SimulationBase/MCTruth.h"
18 #include "TLorentzVector.h"
40 std::vector<std::pair<TLorentzVector,TLorentzVector> >
_det_path;
70 operator simb::MCParticle()
const {
78 for (
auto const & d :
_daughters) mcpart.AddDaughter(d);
118 void AddParticles(
const std::vector<simb::MCParticle>& mcp_v,
119 const std::vector<simb::Origin_t>& orig_v,
120 const std::vector<sim::MCParticleLite>& mcmp_v = {});
124 unsigned int MotherTrackID(
const unsigned int part_index)
const;
134 return (*iter).second;
139 const double&
z)
const;
const double kINVALID_DOUBLE
process_name opflash particleana ie ie ie z
const TLorentzVector & EndVtx() const
const TLorentzVector & EndMom() const
const TLorentzVector & StartVtx() const
double _z_max
z-max of volume box used to determine whether to save track information
process_name opflash particleana ie x
void AddParticles(const std::vector< simb::MCParticle > &mcp_v, const std::vector< simb::Origin_t > &orig_v, const std::vector< sim::MCParticleLite > &mcmp_v={})
virtual ~MCRecoPart()
Default destructor.
MCMiniPart(const simb::MCParticle &p)
unsigned int MotherTrackID(const unsigned int part_index) const
double _y_max
y-max of volume box used to determine whether to save track information
double _y_min
y-min of volume box used to determine whether to save track information
Class def header for MCParticleLite data container.
std::map< unsigned int, unsigned int > _track_index
Track ID => Index Map.
TLorentzVector _start_vtx
std::vector< std::pair< TLorentzVector, TLorentzVector > > _det_path
TLorentzVector _start_mom
const std::string & Process() const
unsigned int Mother() const
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
double _z_min
z-min of volume box used to determine whether to save track information
unsigned int AncestorTrackID(const unsigned int part_index)
process_name opflash particleana ie ie y
bool HasDaughter(unsigned int d) const
MCMiniPart(const sim::MCParticleLite &p)
MCRecoPart(fhicl::ParameterSet const &pset)
Default constructor with fhicl parameters.
double _x_max
x-max of volume box used to determine whether to save track information
double _x_min
x-min of volume box used to determine whether to save track information
unsigned int TrackID() const
std::set< int > _pdg_list
PDG code list for which particle's trajectory within the detector is saved.
const unsigned int kINVALID_UINT
bool InDetector(const double &x, const double &y, const double &z) const
unsigned int TrackToParticleIndex(const unsigned int track_id) const
std::set< unsigned int > _daughters
void AddDaughter(unsigned int d)
const TLorentzVector & StartMom() const