EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHHepMCGenEvent Class Reference

#include <fun4all_coresoftware/blob/master/generators/phhepmc/PHHepMCGenEvent.h>

+ Inheritance diagram for PHHepMCGenEvent:
+ Collaboration diagram for PHHepMCGenEvent:

Public Member Functions

 PHHepMCGenEvent ()
 
 PHHepMCGenEvent (const PHHepMCGenEvent &event)
 
PHHepMCGenEventoperator= (const PHHepMCGenEvent &event)
 
 ~PHHepMCGenEvent () override
 
void identify (std::ostream &os=std::cout) const override
 
void Reset () override
 Clear Event.
 
int isValid () const override
 isValid returns non zero if object contains vailid data
 
PHObjectCloneMe () const override
 Virtual copy constructor.
 
HepMC::GenEvent * getEvent ()
 
const HepMC::GenEvent * getEvent () const
 
int get_embedding_id () const
 
void set_embedding_id (int id)
 
bool is_simulated () const
 whether this event has been processed in Geant4 simulation
 
void is_simulated (bool v)
 whether this event has been processed in Geant4 simulation
 
const HepMC::FourVector & get_collision_vertex () const
 collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns
 
void set_collision_vertex (const HepMC::FourVector &v)
 collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns
 
virtual const HepMC::ThreeVector & get_boost_beta_vector () const
 boost beta vector for Lorentz Transform, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual void set_boost_beta_vector (const HepMC::ThreeVector &)
 boost beta vector for Lorentz Transform, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual const HepMC::ThreeVector & get_rotation_vector () const
 rotation axis vector, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual void set_rotation_vector (const HepMC::ThreeVector &)
 rotation axis vector, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual double get_rotation_angle () const
 rotation angle, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual void set_rotation_angle (const double)
 rotation angle, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame
 
virtual CLHEP::HepLorentzRotation get_LorentzRotation_EvtGen2Lab () const
 LorentzRotation to translate from hepmc event frame to lab frame.
 
virtual CLHEP::HepLorentzRotation get_LorentzRotation_Lab2EvtGen () const
 LorentzRotation to translate from lab frame to hepmc event frame.
 
bool addEvent (HepMC::GenEvent *evt)
 host an HepMC event
 
bool addEvent (HepMC::GenEvent &evt)
 
bool swapEvent (HepMC::GenEvent *&evt)
 
void clearEvent ()
 
virtual void moveVertex (double x, double y, double z, double t=0)
 move the collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns
 
virtual int size (void) const
 
virtual int vertexSize (void) const
 
void print (std::ostream &os=std::cout) const
 
void PrintEvent ()
 
- Public Member Functions inherited from PHObject
 PHObject ()
 ctor
 
 ~PHObject () override
 dtor
 
virtual PHObjectclone () const final
 
PHObjectClone (const char *newname="") const final
 
void Copy (TObject &object) const final
 
virtual int isValid (const float) const
 
virtual int isValid (const double) const
 
virtual int isValid (const int) const
 
virtual int isValid (const unsigned int) const
 
virtual int isImplemented (const float f) const
 
virtual int isImplemented (const double f) const
 
virtual int isImplemented (const int i) const
 
virtual int isImplemented (const unsigned int i) const
 
virtual int Integrate () const
 
virtual int Integrate (PHObject *)
 
virtual void CopyFrom (const PHObject *obj)
 

Protected Attributes

int _embedding_id
 Embedding ID for this generated event positive ID is the embedded event of interest, e.g. jetty event from pythia negative IDs are backgrounds, .e.g out of time pile up collisions Usually, ID = 0 means the primary Au+Au collision background.
 
bool _isSimulated
 whether this event has been processed in Geant4 simulation
 
HepMC::FourVector _collisionVertex
 collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns
 
HepMC::GenEvent * _theEvt
 The HEP MC record from event generator. Note the units are recorded in GenEvent.
 

Detailed Description

Definition at line 19 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 19 of file PHHepMCGenEvent.h

Constructor & Destructor Documentation

PHHepMCGenEvent::PHHepMCGenEvent ( )

Definition at line 16 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 16 of file PHHepMCGenEvent.cc

Referenced by CloneMe().

+ Here is the caller graph for this function:

PHHepMCGenEvent::PHHepMCGenEvent ( const PHHepMCGenEvent event)

Definition at line 24 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 24 of file PHHepMCGenEvent.cc

References _theEvt, and getEvent().

+ Here is the call graph for this function:

PHHepMCGenEvent::~PHHepMCGenEvent ( )
override

Definition at line 48 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 48 of file PHHepMCGenEvent.cc

References _theEvt.

Member Function Documentation

bool PHHepMCGenEvent::addEvent ( HepMC::GenEvent *  evt)

host an HepMC event

Definition at line 72 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 72 of file PHHepMCGenEvent.cc

References _theEvt.

Referenced by addEvent(), PHHepMCGenHelper::insert_event(), and Fun4AllHepMCPileupInputManager::InsertEvent().

+ Here is the caller graph for this function:

bool PHHepMCGenEvent::addEvent ( HepMC::GenEvent &  evt)

Definition at line 91 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 91 of file PHHepMCGenEvent.cc

References addEvent().

+ Here is the call graph for this function:

void PHHepMCGenEvent::clearEvent ( )

Definition at line 96 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 96 of file PHHepMCGenEvent.cc

References _theEvt.

PHObject* PHHepMCGenEvent::CloneMe ( ) const
inlineoverridevirtual

Virtual copy constructor.

Reimplemented from PHObject.

Reimplemented in PHHepMCGenEventv1.

Definition at line 34 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 34 of file PHHepMCGenEvent.h

References PHHepMCGenEvent().

+ Here is the call graph for this function:

virtual const HepMC::ThreeVector& PHHepMCGenEvent::get_boost_beta_vector ( ) const
inlinevirtual

boost beta vector for Lorentz Transform, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 64 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 64 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

const HepMC::FourVector& PHHepMCGenEvent::get_collision_vertex ( ) const
inline

collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns

Definition at line 58 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 58 of file PHHepMCGenEvent.h

References _collisionVertex.

Referenced by EventEvaluatorEIC::fillOutputNtuples(), PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation(), HepMCNodeReader::process_event(), PHG4ScoringManager::process_event(), DumpPHHepMCGenEventMap::process_Node(), and PHG4ParticleGeneratorBase::ReuseExistingVertex().

+ Here is the caller graph for this function:

int PHHepMCGenEvent::get_embedding_id ( ) const
inline

embedding ID for the event positive ID is the embedded event of interest, e.g. jetty event from pythia negative IDs are backgrounds, .e.g out of time pile up collisions Usually, ID = 0 means the primary Au+Au collision background

Definition at line 43 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 43 of file PHHepMCGenEvent.h

References _embedding_id.

Referenced by HeadReco::process_event(), HepMCNodeReader::process_event(), JetHepMCLoader::process_event(), and DumpPHHepMCGenEventMap::process_Node().

+ Here is the caller graph for this function:

virtual CLHEP::HepLorentzRotation PHHepMCGenEvent::get_LorentzRotation_EvtGen2Lab ( ) const
inlinevirtual

LorentzRotation to translate from hepmc event frame to lab frame.

Reimplemented in PHHepMCGenEventv1.

Definition at line 96 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 96 of file PHHepMCGenEvent.h

Referenced by HepMCNodeReader::process_event().

+ Here is the caller graph for this function:

virtual CLHEP::HepLorentzRotation PHHepMCGenEvent::get_LorentzRotation_Lab2EvtGen ( ) const
inlinevirtual

LorentzRotation to translate from lab frame to hepmc event frame.

Reimplemented in PHHepMCGenEventv1.

Definition at line 99 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 99 of file PHHepMCGenEvent.h

virtual double PHHepMCGenEvent::get_rotation_angle ( ) const
inlinevirtual

rotation angle, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 86 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 86 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

virtual const HepMC::ThreeVector& PHHepMCGenEvent::get_rotation_vector ( ) const
inlinevirtual

rotation axis vector, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 75 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 75 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

const HepMC::GenEvent * PHHepMCGenEvent::getEvent ( ) const

Definition at line 67 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 67 of file PHHepMCGenEvent.cc

References _theEvt.

void PHHepMCGenEvent::identify ( std::ostream &  os = std::cout) const
overridevirtual

identify Function from PHObject

Parameters
osOutput Stream

Reimplemented from PHObject.

Reimplemented in PHHepMCGenEventv1.

Definition at line 126 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 126 of file PHHepMCGenEvent.cc

References _collisionVertex, _embedding_id, _isSimulated, size(), and vertexSize().

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation(), PHHepMCGenEventv1::identify(), print(), HepMCNodeReader::process_event(), PHG4ScoringManager::process_event(), JetHepMCLoader::process_event(), and PHG4ParticleGeneratorBase::ReuseExistingVertex().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool PHHepMCGenEvent::is_simulated ( ) const
inline

whether this event has been processed in Geant4 simulation

Definition at line 52 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 52 of file PHHepMCGenEvent.h

References _isSimulated.

Referenced by HepMCNodeReader::process_event(), and DumpPHHepMCGenEventMap::process_Node().

+ Here is the caller graph for this function:

void PHHepMCGenEvent::is_simulated ( bool  v)
inline

whether this event has been processed in Geant4 simulation

Definition at line 55 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 55 of file PHHepMCGenEvent.h

References _isSimulated, and v.

int PHHepMCGenEvent::isValid ( ) const
inlineoverridevirtual

isValid returns non zero if object contains vailid data

Reimplemented from PHObject.

Reimplemented in PHHepMCGenEventv1.

Definition at line 30 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 30 of file PHHepMCGenEvent.h

References getEvent().

+ Here is the call graph for this function:

void PHHepMCGenEvent::moveVertex ( double  x,
double  y,
double  z,
double  t = 0 
)
virtual

move the collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns

Definition at line 101 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 101 of file PHHepMCGenEvent.cc

References _collisionVertex, t, x, y, and z.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation(), Fun4AllHepMCPileupInputManager::InsertEvent(), and PHHepMCGenHelper::move_vertex().

+ Here is the caller graph for this function:

PHHepMCGenEvent & PHHepMCGenEvent::operator= ( const PHHepMCGenEvent event)

Definition at line 35 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 35 of file PHHepMCGenEvent.cc

References _embedding_id, _isSimulated, _theEvt, getEvent(), and Reset().

+ Here is the call graph for this function:

void PHHepMCGenEvent::print ( std::ostream &  os = std::cout) const

Definition at line 138 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 138 of file PHHepMCGenEvent.cc

References identify().

+ Here is the call graph for this function:

void PHHepMCGenEvent::PrintEvent ( )

Definition at line 143 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 143 of file PHHepMCGenEvent.cc

References _theEvt.

void PHHepMCGenEvent::Reset ( )
overridevirtual

Clear Event.

Reimplemented from PHObject.

Reimplemented in PHHepMCGenEventv1.

Definition at line 53 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 53 of file PHHepMCGenEvent.cc

References _collisionVertex, _embedding_id, _isSimulated, and _theEvt.

Referenced by operator=(), and PHHepMCGenEventv1::Reset().

+ Here is the caller graph for this function:

virtual void PHHepMCGenEvent::set_boost_beta_vector ( const HepMC::ThreeVector &  )
inlinevirtual

boost beta vector for Lorentz Transform, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 72 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 72 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

void PHHepMCGenEvent::set_collision_vertex ( const HepMC::FourVector &  v)
inline

collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns

Definition at line 61 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 61 of file PHHepMCGenEvent.h

References _collisionVertex, and v.

Referenced by PHHepMCGenHelper::generate_vertx_with_bunch_interaction().

+ Here is the caller graph for this function:

void PHHepMCGenEvent::set_embedding_id ( int  id)
inline

embedding ID for the event positive ID is the embedded event of interest, e.g. jetty event from pythia negative IDs are backgrounds, .e.g out of time pile up collisions Usually, ID = 0 means the primary Au+Au collision background

Definition at line 49 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 49 of file PHHepMCGenEvent.h

References _embedding_id.

Referenced by PHHepMCGenEventMap::insert_active_event(), PHHepMCGenEventMap::insert_background_event(), and PHHepMCGenEventMap::insert_event().

+ Here is the caller graph for this function:

virtual void PHHepMCGenEvent::set_rotation_angle ( const double  )
inlinevirtual

rotation angle, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 93 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 93 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

virtual void PHHepMCGenEvent::set_rotation_vector ( const HepMC::ThreeVector &  )
inlinevirtual

rotation axis vector, part of composition of a LorentzRotation to translate from hepmc event frame to lab frame

Reimplemented in PHHepMCGenEventv1.

Definition at line 83 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 83 of file PHHepMCGenEvent.h

References PHOOL_VIRTUAL_WARNING.

Referenced by PHHepMCGenHelper::HepMC2Lab_boost_rotation_translation().

+ Here is the caller graph for this function:

int PHHepMCGenEvent::size ( void  ) const
virtual

Definition at line 109 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 109 of file PHHepMCGenEvent.cc

References _theEvt.

Referenced by identify().

+ Here is the caller graph for this function:

bool PHHepMCGenEvent::swapEvent ( HepMC::GenEvent *&  evt)

Definition at line 83 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 83 of file PHHepMCGenEvent.cc

References _theEvt, and boost::swap().

+ Here is the call graph for this function:

int PHHepMCGenEvent::vertexSize ( void  ) const
virtual

Definition at line 117 of file PHHepMCGenEvent.cc.

View newest version in sPHENIX GitHub at line 117 of file PHHepMCGenEvent.cc

References _theEvt.

Referenced by identify().

+ Here is the caller graph for this function:

Member Data Documentation

HepMC::FourVector PHHepMCGenEvent::_collisionVertex
protected

collision vertex position in the Hall coordinate system, use PHENIX units of cm, ns

Definition at line 129 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 129 of file PHHepMCGenEvent.h

Referenced by get_collision_vertex(), identify(), moveVertex(), Reset(), and set_collision_vertex().

int PHHepMCGenEvent::_embedding_id
protected

Embedding ID for this generated event positive ID is the embedded event of interest, e.g. jetty event from pythia negative IDs are backgrounds, .e.g out of time pile up collisions Usually, ID = 0 means the primary Au+Au collision background.

Definition at line 123 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 123 of file PHHepMCGenEvent.h

Referenced by get_embedding_id(), identify(), PHHepMCGenEventv1::operator=(), operator=(), Reset(), and set_embedding_id().

bool PHHepMCGenEvent::_isSimulated
protected

whether this event has been processed in Geant4 simulation

Definition at line 126 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 126 of file PHHepMCGenEvent.h

Referenced by identify(), is_simulated(), PHHepMCGenEventv1::operator=(), operator=(), and Reset().

HepMC::GenEvent* PHHepMCGenEvent::_theEvt
protected

The HEP MC record from event generator. Note the units are recorded in GenEvent.

Definition at line 132 of file PHHepMCGenEvent.h.

View newest version in sPHENIX GitHub at line 132 of file PHHepMCGenEvent.h

Referenced by addEvent(), clearEvent(), getEvent(), PHHepMCGenEventv1::operator=(), operator=(), PHHepMCGenEvent(), PrintEvent(), Reset(), size(), swapEvent(), vertexSize(), and ~PHHepMCGenEvent().


The documentation for this class was generated from the following files: