All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Files | Namespaces | Classes | Functions | Variables
MCBase

Files

file  MCBaseException.h
 Class def header for exception classes for MC data products.
 
file  MCParticleLite.h
 Class def header for MCParticleLite data container.
 
file  MCShower.h
 Class def header for MCShower data container.
 
file  MCStep.h
 Class def header for mcstep data container.
 
file  MCTrack.h
 Class def header for mctrack data container.
 

Namespaces

 sim
 Monte Carlo Simulation.
 

Classes

class  sim::MCParticleLite
 

Functions

 sim::MCParticleLite::MCParticleLite ()
 
virtual sim::MCParticleLite::~MCParticleLite ()
 
void sim::MCParticleLite::AddDaughter (unsigned int d)
 
bool sim::MCParticleLite::HasDaughter (unsigned int d) const
 
const simb::Origin_t & sim::MCParticleLite::Origin () const
 
int sim::MCParticleLite::PdgCode () const
 
unsigned int sim::MCParticleLite::TrackID () const
 
const std::string & sim::MCParticleLite::Process () const
 
unsigned int sim::MCParticleLite::Mother () const
 
unsigned int sim::MCParticleLite::Ancestor () const
 
const TLorentzVector & sim::MCParticleLite::StartVtx () const
 
const TLorentzVector & sim::MCParticleLite::StartMom () const
 
const TLorentzVector & sim::MCParticleLite::EndVtx () const
 
const TLorentzVector & sim::MCParticleLite::EndMom () const
 
const std::vector< std::pair
< TLorentzVector,
TLorentzVector > > & 
sim::MCParticleLite::DetPath () const
 
const std::vector< unsigned int > & sim::MCParticleLite::Daughters () const
 
void sim::MCParticleLite::Origin (simb::Origin_t o)
 
void sim::MCParticleLite::PdgCode (int id)
 
void sim::MCParticleLite::TrackID (unsigned int id)
 
void sim::MCParticleLite::Process (const std::string &name)
 
void sim::MCParticleLite::Mother (unsigned int id)
 
void sim::MCParticleLite::Ancestor (unsigned int id)
 
void sim::MCParticleLite::StartVtx (const TLorentzVector &vtx)
 
void sim::MCParticleLite::StartMom (const TLorentzVector &mom)
 
void sim::MCParticleLite::EndVtx (const TLorentzVector &vtx)
 
void sim::MCParticleLite::EndMom (const TLorentzVector &mom)
 
void sim::MCParticleLite::DetPath (const std::vector< std::pair< TLorentzVector, TLorentzVector > > &p)
 
void sim::MCParticleLite::DetPath (std::vector< std::pair< TLorentzVector, TLorentzVector > > &&p)
 
void sim::MCParticleLite::Daughters (const std::vector< unsigned int > &d)
 
void sim::MCParticleLite::Daughters (std::vector< unsigned int > &&d)
 
virtual sim::MCParticleLite::operator simb::MCParticle () const
 
 sim::MCParticleLite::MCParticleLite (const simb::MCParticle &p)
 

Variables

unsigned int sim::MCParticleLite::_track_id {kINVALID_UINT}
 
std::string sim::MCParticleLite::_process {}
 
unsigned int sim::MCParticleLite::_mother {kINVALID_UINT}
 
unsigned int sim::MCParticleLite::_ancestor {kINVALID_UINT}
 
int sim::MCParticleLite::_pdgcode {kINVALID_INT}
 
TLorentzVector sim::MCParticleLite::_start_vtx {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
 
TLorentzVector sim::MCParticleLite::_start_mom {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
 Start momentum in GeV. More...
 
TLorentzVector sim::MCParticleLite::_end_vtx {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
 
TLorentzVector sim::MCParticleLite::_end_mom {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
 End momentum in GeV. More...
 
std::vector< std::pair
< TLorentzVector,
TLorentzVector > > 
sim::MCParticleLite::_det_path
 
std::vector< unsigned int > sim::MCParticleLite::_daughters
 
::simb::Origin_t sim::MCParticleLite::_origin {::simb::kUnknown}
 

Detailed Description

Function Documentation

void sim::MCParticleLite::AddDaughter ( unsigned int  d)
inline

Definition at line 43 of file MCParticleLite.h.

43  {
44  if (!this->HasDaughter(d))
45  _daughters.push_back(d);
46  }
std::vector< unsigned int > _daughters
bool HasDaughter(unsigned int d) const
unsigned int sim::MCParticleLite::Ancestor ( ) const
inline

Definition at line 57 of file MCParticleLite.h.

57 { return _ancestor; }
unsigned int _ancestor
void sim::MCParticleLite::Ancestor ( unsigned int  id)
inline

Definition at line 71 of file MCParticleLite.h.

71 { _ancestor = id; }
unsigned int _ancestor
const std::vector<unsigned int>& sim::MCParticleLite::Daughters ( ) const
inline

Definition at line 63 of file MCParticleLite.h.

63 { return _daughters; }
std::vector< unsigned int > _daughters
void sim::MCParticleLite::Daughters ( const std::vector< unsigned int > &  d)
inline

Definition at line 78 of file MCParticleLite.h.

78 { _daughters = d; }
std::vector< unsigned int > _daughters
void sim::MCParticleLite::Daughters ( std::vector< unsigned int > &&  d)
inline

Definition at line 79 of file MCParticleLite.h.

79 { _daughters = std::move(d); }
std::vector< unsigned int > _daughters
const std::vector<std::pair<TLorentzVector,TLorentzVector> >& sim::MCParticleLite::DetPath ( ) const
inline

Definition at line 62 of file MCParticleLite.h.

62 { return _det_path; }
std::vector< std::pair< TLorentzVector, TLorentzVector > > _det_path
void sim::MCParticleLite::DetPath ( const std::vector< std::pair< TLorentzVector, TLorentzVector > > &  p)
inline

Definition at line 76 of file MCParticleLite.h.

76 { _det_path = p; }
pdgs p
Definition: selectors.fcl:22
std::vector< std::pair< TLorentzVector, TLorentzVector > > _det_path
void sim::MCParticleLite::DetPath ( std::vector< std::pair< TLorentzVector, TLorentzVector > > &&  p)
inline

Definition at line 77 of file MCParticleLite.h.

77 { _det_path = std::move(p); }
std::vector< std::pair< TLorentzVector, TLorentzVector > > _det_path
const TLorentzVector& sim::MCParticleLite::EndMom ( ) const
inline

Definition at line 61 of file MCParticleLite.h.

61 { return _end_mom; }
TLorentzVector _end_mom
End momentum in GeV.
void sim::MCParticleLite::EndMom ( const TLorentzVector &  mom)
inline

Definition at line 75 of file MCParticleLite.h.

75 { _end_mom = mom; }
TLorentzVector _end_mom
End momentum in GeV.
const TLorentzVector& sim::MCParticleLite::EndVtx ( ) const
inline

Definition at line 60 of file MCParticleLite.h.

60 { return _end_vtx; }
TLorentzVector _end_vtx
void sim::MCParticleLite::EndVtx ( const TLorentzVector &  vtx)
inline

Definition at line 74 of file MCParticleLite.h.

74 { _end_vtx = vtx; }
TLorentzVector _end_vtx
bool sim::MCParticleLite::HasDaughter ( unsigned int  d) const
inline

Definition at line 47 of file MCParticleLite.h.

47  {
48  return std::find(_daughters.begin(), _daughters.end(), d) != _daughters.end();
49  }
std::vector< unsigned int > _daughters
sim::MCParticleLite::MCParticleLite ( )
inline

Definition at line 40 of file MCParticleLite.h.

40 {};
sim::MCParticleLite::MCParticleLite ( const simb::MCParticle &  p)
inline

Definition at line 92 of file MCParticleLite.h.

92  {
93  _daughters.clear();
94  _det_path.clear();
95  _track_id = (unsigned int) p.TrackId();
96  _pdgcode = p.PdgCode();
97  _mother = (unsigned int) p.Mother();
98  _process = p.Process();
99  _start_vtx = p.Position();
100  _start_mom = p.Momentum();
101  _end_vtx = p.EndPosition();
102  _end_mom = p.EndMomentum();
103  }
unsigned int _mother
TLorentzVector _end_mom
End momentum in GeV.
pdgs p
Definition: selectors.fcl:22
unsigned int _track_id
std::vector< unsigned int > _daughters
TLorentzVector _end_vtx
TLorentzVector _start_vtx
TLorentzVector _start_mom
Start momentum in GeV.
std::vector< std::pair< TLorentzVector, TLorentzVector > > _det_path
unsigned int sim::MCParticleLite::Mother ( ) const
inline

Definition at line 56 of file MCParticleLite.h.

56 { return _mother; }
unsigned int _mother
void sim::MCParticleLite::Mother ( unsigned int  id)
inline

Definition at line 70 of file MCParticleLite.h.

70 { _mother = id; }
unsigned int _mother
virtual sim::MCParticleLite::operator simb::MCParticle ( ) const
inlinevirtual

Definition at line 81 of file MCParticleLite.h.

81  {
82  simb::MCParticle mcpart(_track_id,
83  _pdgcode,
84  _process,
85  _mother);
86  mcpart.AddTrajectoryPoint(_start_vtx, _start_mom);
87  mcpart.AddTrajectoryPoint(_end_vtx, _end_mom);
88  for (auto const & d : _daughters) mcpart.AddDaughter(d);
89  return mcpart;
90  }
unsigned int _mother
TLorentzVector _end_mom
End momentum in GeV.
unsigned int _track_id
std::vector< unsigned int > _daughters
TLorentzVector _end_vtx
TLorentzVector _start_vtx
TLorentzVector _start_mom
Start momentum in GeV.
const simb::Origin_t& sim::MCParticleLite::Origin ( ) const
inline

Definition at line 52 of file MCParticleLite.h.

52 { return _origin; }
::simb::Origin_t _origin
void sim::MCParticleLite::Origin ( simb::Origin_t  o)
inline

Definition at line 66 of file MCParticleLite.h.

66 { _origin = o; }
::simb::Origin_t _origin
int sim::MCParticleLite::PdgCode ( ) const
inline

Definition at line 53 of file MCParticleLite.h.

53 { return _pdgcode; }
void sim::MCParticleLite::PdgCode ( int  id)
inline

Definition at line 67 of file MCParticleLite.h.

67 { _pdgcode = id; }
const std::string& sim::MCParticleLite::Process ( ) const
inline

Definition at line 55 of file MCParticleLite.h.

55 { return _process; }
void sim::MCParticleLite::Process ( const std::string &  name)
inline

Definition at line 69 of file MCParticleLite.h.

69 { _process = name; }
then echo fcl name
const TLorentzVector& sim::MCParticleLite::StartMom ( ) const
inline

Definition at line 59 of file MCParticleLite.h.

59 { return _start_mom; }
TLorentzVector _start_mom
Start momentum in GeV.
void sim::MCParticleLite::StartMom ( const TLorentzVector &  mom)
inline

Definition at line 73 of file MCParticleLite.h.

73 { _start_mom = mom; }
TLorentzVector _start_mom
Start momentum in GeV.
const TLorentzVector& sim::MCParticleLite::StartVtx ( ) const
inline

Definition at line 58 of file MCParticleLite.h.

58 { return _start_vtx; }
TLorentzVector _start_vtx
void sim::MCParticleLite::StartVtx ( const TLorentzVector &  vtx)
inline

Definition at line 72 of file MCParticleLite.h.

72 { _start_vtx = vtx; }
TLorentzVector _start_vtx
unsigned int sim::MCParticleLite::TrackID ( ) const
inline

Definition at line 54 of file MCParticleLite.h.

54 { return _track_id; }
unsigned int _track_id
void sim::MCParticleLite::TrackID ( unsigned int  id)
inline

Definition at line 68 of file MCParticleLite.h.

68 { _track_id = id; }
unsigned int _track_id
virtual sim::MCParticleLite::~MCParticleLite ( )
inlinevirtual

Definition at line 41 of file MCParticleLite.h.

41 {};

Variable Documentation

unsigned int sim::MCParticleLite::_ancestor {kINVALID_UINT}
protected

Definition at line 109 of file MCParticleLite.h.

std::vector<unsigned int> sim::MCParticleLite::_daughters
protected

Definition at line 116 of file MCParticleLite.h.

std::vector<std::pair<TLorentzVector,TLorentzVector> > sim::MCParticleLite::_det_path
protected

Definition at line 115 of file MCParticleLite.h.

TLorentzVector sim::MCParticleLite::_end_mom {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
protected

End momentum in GeV.

Definition at line 114 of file MCParticleLite.h.

TLorentzVector sim::MCParticleLite::_end_vtx {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
protected

Definition at line 113 of file MCParticleLite.h.

unsigned int sim::MCParticleLite::_mother {kINVALID_UINT}
protected

Definition at line 108 of file MCParticleLite.h.

::simb::Origin_t sim::MCParticleLite::_origin {::simb::kUnknown}
protected

Definition at line 117 of file MCParticleLite.h.

int sim::MCParticleLite::_pdgcode {kINVALID_INT}
protected

Definition at line 110 of file MCParticleLite.h.

std::string sim::MCParticleLite::_process {}
protected

Definition at line 107 of file MCParticleLite.h.

TLorentzVector sim::MCParticleLite::_start_mom {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
protected

Start momentum in GeV.

Definition at line 112 of file MCParticleLite.h.

TLorentzVector sim::MCParticleLite::_start_vtx {TLorentzVector(kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE, kINVALID_DOUBLE)}
protected

Definition at line 111 of file MCParticleLite.h.

unsigned int sim::MCParticleLite::_track_id {kINVALID_UINT}
protected

Definition at line 106 of file MCParticleLite.h.