Class Reference for E1039 Core & Analysis Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PHHepMCParticleSelectorDecayProductChain.h
Go to the documentation of this file.
1 #ifndef PHHepMCParticleSelectorDecayProductChain_H__
2 #define PHHepMCParticleSelectorDecayProductChain_H__
3 
4 #include <fun4all/SubsysReco.h>
5 
6 #include <HepMC/GenEvent.h>
7 #include <HepMC/GenParticle.h>
8 
9 #include <vector>
10 
16 {
17  public:
18  PHHepMCParticleSelectorDecayProductChain(const std::string &name="PARTICLESELECTOR");
20 
21  int InitRun(PHCompositeNode *topNode);
22  int process_event(PHCompositeNode *topNode);
23 
25  virtual void SetParticle(const int pid);
26 
28  virtual void AddAncestor(const int pid);
29 
31  virtual void AddDaughter(const int pid);
32 
37  int get_embedding_id() const { return _embedding_id; }
38  //
43  void set_embedding_id(int id) { _embedding_id = id; }
44  protected:
45 
47 HepMC::GenParticle* GetParent(HepMC::GenParticle* p, HepMC::GenEvent* event);
48 
53  std::vector<int> _theDaughters;
56  std::vector<int> _theAncestors;
57 
62 };
63 
64 #endif
65 
66 
int _theParticle
The particle you want to have in your output.
virtual void AddDaughter(const int pid)
Add decay products of the particle you want in your output.
HepMC::GenParticle * GetParent(HepMC::GenParticle *p, HepMC::GenEvent *event)
find out if a particle comes from one of _theAncestors
PHHepMCParticleSelectorDecayProductChain(const std::string &name="PARTICLESELECTOR")
virtual void AddAncestor(const int pid)
Add an ancestor of the particle you want in your output.
virtual void SetParticle(const int pid)
Set the ID of the particle you want in your output.