HepMC3 event record library
|
Define a common interface that all Relatives objects will satisfy Relatives provides an operator to get the relatives of a range of different GenObject types. The following are examples.
Relatives::ANCESTORS(GenParticlePtr);// returns ancestors of the particle Descendants descendants; descendants(GenVertexPtr);// descendants of the vertex vector<Relatives*> relations = {&Relatives::CHILDREN, &Relatives::DESCENDANTS, &Relatives::PARENTS, new Ancestors()}; // make a vector of Relatives
You can also define your own relation and wrap it in the Relatives interface using Relatives * relo = new RelativesInterface<MyRelationClass>();
Definition at line 53 of file Relatives.h.
#include <Relatives.h>
Public Member Functions | |
virtual std::vector < GenParticlePtr > | operator() (GenParticlePtr input) const =0 |
Operator. More... | |
virtual std::vector < ConstGenParticlePtr > | operator() (ConstGenParticlePtr input) const =0 |
Operator. More... | |
virtual std::vector < GenParticlePtr > | operator() (GenVertexPtr input) const =0 |
Operator. More... | |
virtual std::vector < ConstGenParticlePtr > | operator() (ConstGenVertexPtr input) const =0 |
Operator. More... | |
Static Public Attributes | |
static const Parents | PARENTS |
Parents. More... | |
static const Children | CHILDREN |
Children. More... | |
static thread_local const Ancestors | ANCESTORS |
Ancestors. More... | |
static thread_local const Descendants | DESCENDANTS |
Descendants. More... | |
|
pure virtual |
Operator.
Implemented in RelativesInterface< T >.
|
pure virtual |
Operator.
Implemented in RelativesInterface< T >.
|
pure virtual |
Operator.
Implemented in RelativesInterface< T >.
|
pure virtual |
Operator.
Implemented in RelativesInterface< T >.
|
static |
Ancestors.
Definition at line 66 of file Relatives.h.
|
static |
Children.
Definition at line 65 of file Relatives.h.
|
static |
Descendants.
Definition at line 67 of file Relatives.h.
|
static |
Parents.
Definition at line 64 of file Relatives.h.