18 #ifndef _GHEP_RECORD_H_
19 #define _GHEP_RECORD_H_
24 #include <TClonesArray.h>
43 ostream &
operator << (ostream & stream,
const GHepRecord & event);
48 using TClonesArray::Print;
49 using TClonesArray::Copy;
71 int mom1,
int mom2,
int dau1,
int dau2,
72 const TLorentzVector & p,
const TLorentzVector & v);
74 int mom1,
int mom2,
int dau1,
int dau2,
75 double px,
double py,
double pz,
double E,
76 double x,
double y,
double z,
double t);
113 virtual unsigned int NEntries (
int pdg,
int start=0)
const;
120 virtual bool Accept (
void)
const;
140 virtual TLorentzVector *
Vertex (
void)
const {
return fVtx; }
142 virtual void SetVertex (
double x,
double y,
double z,
double t);
143 virtual void SetVertex (
const TLorentzVector & vtx);
148 virtual void Clear (Option_t * opt=
"");
162 void Print (ostream & stream)
const;
206 #endif // _GHEP_RECORD_H_
static void SetPrintLevel(int print_level)
virtual void SetXSec(double xsec)
virtual GHepParticle * Particle(int position) const
virtual void SetWeight(double wght)
virtual int ParticlePosition(int pdg, GHepStatus_t i, int start=0) const
virtual void Copy(const GHepRecord &record)
virtual void UpdateDaughterLists(void)
double fProb
event probability (for given flux neutrino and density-weighted path-length for target element) ...
void Print(ostream &stream) const
virtual void SwapParticles(int i, int j)
virtual GHepParticle * HitElectron(void) const
virtual Interaction * Summary(void) const
virtual GHepParticle * FindParticle(int pdg, GHepStatus_t ist, int start) const
virtual KinePhaseSpace_t DiffXSecVars(void) const
virtual int RemnantNucleusPosition(void) const
virtual void SetProbability(double prob)
virtual void RemoveIntermediateParticles(void)
virtual void FinalizeDaughterLists(void)
TLorentzVector * fVtx
vertex in the detector coordinate system
virtual int HitNucleonPosition(void) const
virtual double Weight(void) const
TBits * fEventMask
an input bit-field mask allowing one to ignore bits set in fEventFlags
virtual unsigned int NEntries(int pdg, GHepStatus_t ist, int start=0) const
enum genie::EKinePhaseSpace KinePhaseSpace_t
virtual void AttachSummary(Interaction *interaction)
virtual TLorentzVector * Vertex(void) const
virtual GHepParticle * Probe(void) const
Enumeration of GENIE event generation modes.
double fXSec
cross section for selected event
Summary information for an interaction.
Interaction * fInteraction
attached summary information
TBits * fEventFlags
event flags indicating various pathologies or an unphysical event
virtual bool Accept(void) const
virtual bool HasCompactDaughterList(int pos)
virtual int FirstNonInitStateEntry(void)
virtual GHepParticle * FinalStatePrimaryLepton(void) const
GEvGenMode_t EventGenerationMode(void) const
static int GetPrintLevel()
virtual GHepParticle * TargetNucleus(void) const
virtual double DiffXSec(void) const
virtual vector< int > * GetStableDescendants(int position) const
static constexpr double ps
virtual void ResetRecord(void)
virtual int HitElectronPosition(void) const
virtual GHepParticle * FinalStateHadronicSystem(void) const
virtual double Probability(void) const
virtual void CompactifyDaughterLists(void)
virtual TBits * EventFlags(void) const
virtual bool IsUnphysical(void) const
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
virtual void Clear(Option_t *opt="")
virtual GHepParticle * HitNucleon(void) const
virtual void SetVertex(double x, double y, double z, double t)
KinePhaseSpace_t fDiffXSecPhSp
specifies which differential cross-section (dsig/dQ2, dsig/dQ2dW, dsig/dxdy,...)
virtual GHepParticle * RemnantNucleus(void) const
virtual double XSec(void) const
friend ostream & operator<<(ostream &stream, const GHepRecord &event)
virtual void AddParticle(const GHepParticle &p)
double fWeight
event weight
virtual int ProbePosition(void) const
void SetUnphysEventMask(const TBits &mask)
GENIE's GHEP MC event record.
STDHEP-like event record entry that can fit a particle or a nucleus.
virtual int FinalStateHadronicSystemPosition(void) const
double fDiffXSec
differential cross section for selected event kinematics
virtual int FinalStatePrimaryLeptonPosition(void) const
virtual int TargetNucleusPosition(void) const
virtual void SetDiffXSec(double xsec, KinePhaseSpace_t ps)
enum genie::EGHepStatus GHepStatus_t
virtual TBits * EventMask(void) const