HepMC3 event record library
RelativesInterface< Relative_type > Class Template Reference

Detailed Description

template<typename Relative_type>
class HepMC3::RelativesInterface< Relative_type >

forward declare the Relatives interface in which _parents and _children are wrapped

wrap a templated class that implements Relatives Since we need to template the functionality on the input type (GenParticlePtr, ConstGenVertexPtr etc.) we must wrap a class that has a templated operator in this that provides the Relatives interface and calls through to the underlying template method.

Definition at line 74 of file Relatives.h.

#include <Relatives.h>

Inheritance diagram for RelativesInterface< Relative_type >:
Collaboration diagram for RelativesInterface< Relative_type >:

Public Member Functions

GenParticles_type< GenParticlePtr > operator() (GenParticlePtr input) const override
GenParticles_type< ConstGenParticlePtr > operator() (ConstGenParticlePtr input) const override
GenParticles_type< GenVertexPtr > operator() (GenVertexPtr input) const override
GenParticles_type< ConstGenVertexPtr > operator() (ConstGenVertexPtr input) const override

Static Public Attributes

static const Parents PARENTS
static const Children CHILDREN
static const Ancestors ANCESTORS
static const Descendants DESCENDANTS

Private Attributes

Relative_type _internal

Constructor & Destructor Documentation

◆ RelativesInterface()

template<typename Relative_type>
RelativesInterface ( )
inlineconstexpr

Definition at line 80 of file Relatives.h.

Member Function Documentation

◆ operator()() [1/4]

template<typename Relative_type>
GenParticles_type< ConstGenParticlePtr > operator() ( ConstGenParticlePtr input) const
inlineoverridevirtual

Implements Relatives.

Definition at line 83 of file Relatives.h.

◆ operator()() [2/4]

template<typename Relative_type>
GenParticles_type< ConstGenVertexPtr > operator() ( ConstGenVertexPtr input) const
inlineoverridevirtual

Implements Relatives.

Definition at line 85 of file Relatives.h.

◆ operator()() [3/4]

template<typename Relative_type>
GenParticles_type< GenParticlePtr > operator() ( GenParticlePtr input) const
inlineoverridevirtual

Implements Relatives.

Definition at line 82 of file Relatives.h.

◆ operator()() [4/4]

template<typename Relative_type>
GenParticles_type< GenVertexPtr > operator() ( GenVertexPtr input) const
inlineoverridevirtual

Implements Relatives.

Definition at line 84 of file Relatives.h.

Field Documentation

◆ _internal

template<typename Relative_type>
Relative_type _internal
private

Definition at line 89 of file Relatives.h.

◆ ANCESTORS

const Ancestors ANCESTORS
thread_localstaticinherited

Definition at line 62 of file Relatives.h.

◆ CHILDREN

const Children CHILDREN
staticinherited

Definition at line 61 of file Relatives.h.

◆ DESCENDANTS

const Descendants DESCENDANTS
thread_localstaticinherited

Definition at line 63 of file Relatives.h.

◆ PARENTS

const Parents PARENTS
staticinherited

Definition at line 60 of file Relatives.h.


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