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

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

+ Inheritance diagram for PHHepMCParticleSelectorDecayProductChain:
+ Collaboration diagram for PHHepMCParticleSelectorDecayProductChain:

Public Member Functions

 PHHepMCParticleSelectorDecayProductChain (const std::string &name="PARTICLESELECTOR")
 
 ~PHHepMCParticleSelectorDecayProductChain () override
 
int InitRun (PHCompositeNode *topNode) override
 
int process_event (PHCompositeNode *topNode) override
 
virtual void SetParticle (const int pid)
 Set the ID of the particle you want in your output.
 
virtual void AddAncestor (const int pid)
 Add an ancestor of the particle you want in your output.
 
virtual void AddDaughter (const int pid)
 Add decay products of the particle you want in your output.
 
int get_embedding_id () const
 
void set_embedding_id (int id)
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int End (PHCompositeNode *)
 Called at the end of all processing.
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Init (PHCompositeNode *)
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
void Print (const std::string &="ALL") const override
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Protected Member Functions

HepMC::GenParticle * GetParent (HepMC::GenParticle *p, HepMC::GenEvent *event)
 find out if a particle comes from one of _theAncestors
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 
- Protected Member Functions inherited from Fun4AllBase
 Fun4AllBase (const std::string &name="NONAME")
 

Protected Attributes

int _theParticle
 The particle you want to have in your output.
 
std::vector< int > _theDaughters
 
std::vector< int > _theAncestors
 
int _embedding_id
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = INT_MAX - 10
}
 

Detailed Description

Particle selector for HepMC based events Will write out only _theParticle and _theDaughters (if specified) Special case: when _theParticle=0, all particles in _theDaughers list will be written out no matter where they come from

Definition at line 20 of file PHHepMCParticleSelectorDecayProductChain.h.

View newest version in sPHENIX GitHub at line 20 of file PHHepMCParticleSelectorDecayProductChain.h

Constructor & Destructor Documentation

PHHepMCParticleSelectorDecayProductChain::PHHepMCParticleSelectorDecayProductChain ( const std::string &  name = "PARTICLESELECTOR")

Definition at line 25 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 25 of file PHHepMCParticleSelectorDecayProductChain.cc

References _theParticle.

PHHepMCParticleSelectorDecayProductChain::~PHHepMCParticleSelectorDecayProductChain ( )
inlineoverride

Definition at line 24 of file PHHepMCParticleSelectorDecayProductChain.h.

View newest version in sPHENIX GitHub at line 24 of file PHHepMCParticleSelectorDecayProductChain.h

Member Function Documentation

void PHHepMCParticleSelectorDecayProductChain::AddAncestor ( const int  pid)
virtual

Add an ancestor of the particle you want in your output.

Definition at line 273 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 273 of file PHHepMCParticleSelectorDecayProductChain.cc

References _theAncestors.

void PHHepMCParticleSelectorDecayProductChain::AddDaughter ( const int  pid)
virtual

Add decay products of the particle you want in your output.

Definition at line 279 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 279 of file PHHepMCParticleSelectorDecayProductChain.cc

References _theDaughters.

int PHHepMCParticleSelectorDecayProductChain::get_embedding_id ( ) const
inline

embedding ID for the event to be processed 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 42 of file PHHepMCParticleSelectorDecayProductChain.h.

View newest version in sPHENIX GitHub at line 42 of file PHHepMCParticleSelectorDecayProductChain.h

References _embedding_id.

HepMC::GenParticle * PHHepMCParticleSelectorDecayProductChain::GetParent ( HepMC::GenParticle *  p,
HepMC::GenEvent *  event 
)
protected

find out if a particle comes from one of _theAncestors

Definition at line 38 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 38 of file PHHepMCParticleSelectorDecayProductChain.cc

References _theAncestors, kdfinder::abs(), and PHNode::parent.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHHepMCParticleSelectorDecayProductChain::InitRun ( PHCompositeNode )
overridevirtual

Called for first event when run number is known. Typically this is where you may want to fetch data from database, because you know the run number.

Reimplemented from SubsysReco.

Definition at line 33 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 33 of file PHHepMCParticleSelectorDecayProductChain.cc

References Fun4AllReturnCodes::EVENT_OK.

int PHHepMCParticleSelectorDecayProductChain::process_event ( PHCompositeNode )
overridevirtual

Called for each event. This is where you do the real work.

Reimplemented from SubsysReco.

Definition at line 61 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 61 of file PHHepMCParticleSelectorDecayProductChain.cc

References _embedding_id, _theAncestors, _theDaughters, _theParticle, Fun4AllReturnCodes::ABORTEVENT, kdfinder::abs(), Fun4AllReturnCodes::DISCARDEVENT, Acts::VectorHelpers::eta(), Fun4AllReturnCodes::EVENT_OK, PHHepMCGenEventMap::get(), PHHepMCGenEvent::getEvent(), GetParent(), ip(), k, Acts::UnitConstants::m, mass, npart(), p, PHNode::parent, Acts::VectorHelpers::perp(), PHWHERE, pid, tmp1, tmp2, v, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

void PHHepMCParticleSelectorDecayProductChain::set_embedding_id ( int  id)
inline

embedding ID for the event to be processed 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 48 of file PHHepMCParticleSelectorDecayProductChain.h.

View newest version in sPHENIX GitHub at line 48 of file PHHepMCParticleSelectorDecayProductChain.h

References _embedding_id.

void PHHepMCParticleSelectorDecayProductChain::SetParticle ( const int  pid)
virtual

Set the ID of the particle you want in your output.

Definition at line 267 of file PHHepMCParticleSelectorDecayProductChain.cc.

View newest version in sPHENIX GitHub at line 267 of file PHHepMCParticleSelectorDecayProductChain.cc

References _theParticle, and pid.

Member Data Documentation

int PHHepMCParticleSelectorDecayProductChain::_embedding_id
protected

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 66 of file PHHepMCParticleSelectorDecayProductChain.h.

View newest version in sPHENIX GitHub at line 66 of file PHHepMCParticleSelectorDecayProductChain.h

Referenced by get_embedding_id(), process_event(), and set_embedding_id().

std::vector<int> PHHepMCParticleSelectorDecayProductChain::_theAncestors
protected

List of possible ancestors of the particle you want in your output Ignored if empty

Definition at line 61 of file PHHepMCParticleSelectorDecayProductChain.h.

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

Referenced by AddAncestor(), GetParent(), and process_event().

std::vector<int> PHHepMCParticleSelectorDecayProductChain::_theDaughters
protected

List of possible decay products of the particle you want in your output Ignored if empty

Definition at line 58 of file PHHepMCParticleSelectorDecayProductChain.h.

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

Referenced by AddDaughter(), and process_event().

int PHHepMCParticleSelectorDecayProductChain::_theParticle
protected

The particle you want to have in your output.

Definition at line 55 of file PHHepMCParticleSelectorDecayProductChain.h.

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

Referenced by PHHepMCParticleSelectorDecayProductChain(), process_event(), and SetParticle().


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