Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
pandora::ParticleId Class Reference

ParticleId class. More...

#include "ParticleIdPlugin.h"

Collaboration diagram for pandora::ParticleId:

Public Member Functions

template<typename T >
bool IsEmShower (const T *const pT) const
 Provide identification of whether a cluster or pfo is an electromagnetic shower.
 
template<typename T >
bool IsPhoton (const T *const pT) const
 Provide identification of whether a cluster or pfo is a photon.
 
template<typename T >
bool IsElectron (const T *const pT) const
 Provide identification of whether a cluster or pfo is an electron.
 
template<typename T >
bool IsMuon (const T *const pT) const
 Provide identification of whether a cluster or pfo is a muon.
 

Private Types

typedef std::map< std::string, ParticleIdPlugin * > ParticleIdPluginMap
 

Private Member Functions

 ParticleId (const Pandora *const pPandora)
 Default constructor.
 
 ~ParticleId ()
 Destructor.
 
StatusCode RegisterPlugin (const std::string &pluginName, ParticleIdPlugin *const pParticleIdPlugin)
 Register a particle id plugin.
 
StatusCode InitializePlugins (const TiXmlHandle *const pXmlHandle)
 Initialize plugins.
 
StatusCode InitializePlugin (const TiXmlHandle *const pXmlHandle, const std::string &xmlTagName, ParticleIdPlugin *&pParticleIdPlugin)
 Read requested plugin name/label from a specified xml tag and attempt to assign the plugin pointer as requested.
 
StatusCode ResetForNextEvent ()
 Call the reset callback in all managed plugins.
 

Private Attributes

const Pandora *const m_pPandora
 Address of the associated pandora instance.
 
ParticleIdPluginm_pEmShowerPlugin
 The electromagnetic shower id plugin pointer.
 
ParticleIdPluginm_pPhotonPlugin
 The photon id plugin pointer.
 
ParticleIdPluginm_pElectronPlugin
 The electron id plugin pointer.
 
ParticleIdPluginm_pMuonPlugin
 The muon id plugin pointer.
 
ParticleIdPluginMap m_particleIdPluginMap
 The particle id plugin map.
 

Friends

class PandoraApiImpl
 
class PluginManager
 

Detailed Description

ParticleId class.

Definition at line 50 of file ParticleIdPlugin.h.

Member Typedef Documentation

◆ ParticleIdPluginMap

typedef std::map<std::string, ParticleIdPlugin *> pandora::ParticleId::ParticleIdPluginMap
private

Definition at line 141 of file ParticleIdPlugin.h.

Constructor & Destructor Documentation

◆ ParticleId()

pandora::ParticleId::ParticleId ( const Pandora *const  pPandora)
private

Default constructor.

Parameters
pPandoraaddress of the associated pandora instance

Definition at line 67 of file ParticleIdPlugin.cc.

◆ ~ParticleId()

pandora::ParticleId::~ParticleId ( )
private

Destructor.

Definition at line 78 of file ParticleIdPlugin.cc.

Member Function Documentation

◆ InitializePlugin()

StatusCode pandora::ParticleId::InitializePlugin ( const TiXmlHandle *const  pXmlHandle,
const std::string &  xmlTagName,
ParticleIdPlugin *&  pParticleIdPlugin 
)
private

Read requested plugin name/label from a specified xml tag and attempt to assign the plugin pointer as requested.

Parameters
pXmlHandleaddress of the relevant xml handle
xmlTagNamethe xml tag name for a given particle id "slot"
pParticleIdPluginto receive the address of the particle id plugin

Definition at line 126 of file ParticleIdPlugin.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ InitializePlugins()

StatusCode pandora::ParticleId::InitializePlugins ( const TiXmlHandle *const  pXmlHandle)
private

Initialize plugins.

Parameters
pXmlHandleaddress of the relevant xml handle

Definition at line 104 of file ParticleIdPlugin.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsElectron()

template<typename T >
template bool pandora::ParticleId::IsElectron ( const T *const  pT) const

Provide identification of whether a cluster or pfo is an electron.

Parameters
pTaddress of the cluster or pfo
Returns
boolean

Definition at line 46 of file ParticleIdPlugin.cc.

Here is the call graph for this function:

◆ IsEmShower()

template<typename T >
template bool pandora::ParticleId::IsEmShower ( const T *const  pT) const

Provide identification of whether a cluster or pfo is an electromagnetic shower.

Parameters
pTaddress of the cluster or pfo
Returns
boolean

Definition at line 24 of file ParticleIdPlugin.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsMuon()

template<typename T >
template bool pandora::ParticleId::IsMuon ( const T *const  pT) const

Provide identification of whether a cluster or pfo is a muon.

Parameters
pTaddress of the cluster or pfo
Returns
boolean

Definition at line 57 of file ParticleIdPlugin.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsPhoton()

template<typename T >
template bool pandora::ParticleId::IsPhoton ( const T *const  pT) const

Provide identification of whether a cluster or pfo is a photon.

Parameters
pTaddress of the cluster or pfo
Returns
boolean

Definition at line 35 of file ParticleIdPlugin.cc.

Here is the call graph for this function:

◆ RegisterPlugin()

StatusCode pandora::ParticleId::RegisterPlugin ( const std::string &  pluginName,
ParticleIdPlugin *const  pParticleIdPlugin 
)
private

Register a particle id plugin.

Parameters
pluginNamethe name/label associated with the particle id plugin
particleIdPluginpointer to a particle id plugin

Definition at line 92 of file ParticleIdPlugin.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ResetForNextEvent()

StatusCode pandora::ParticleId::ResetForNextEvent ( )
private

Call the reset callback in all managed plugins.

Definition at line 149 of file ParticleIdPlugin.cc.

Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ PandoraApiImpl

friend class PandoraApiImpl
friend

Definition at line 144 of file ParticleIdPlugin.h.

◆ PluginManager

friend class PluginManager
friend

Definition at line 145 of file ParticleIdPlugin.h.

Member Data Documentation

◆ m_particleIdPluginMap

ParticleIdPluginMap pandora::ParticleId::m_particleIdPluginMap
private

The particle id plugin map.

Definition at line 142 of file ParticleIdPlugin.h.

◆ m_pElectronPlugin

ParticleIdPlugin* pandora::ParticleId::m_pElectronPlugin
private

The electron id plugin pointer.

Definition at line 138 of file ParticleIdPlugin.h.

◆ m_pEmShowerPlugin

ParticleIdPlugin* pandora::ParticleId::m_pEmShowerPlugin
private

The electromagnetic shower id plugin pointer.

Definition at line 136 of file ParticleIdPlugin.h.

◆ m_pMuonPlugin

ParticleIdPlugin* pandora::ParticleId::m_pMuonPlugin
private

The muon id plugin pointer.

Definition at line 139 of file ParticleIdPlugin.h.

◆ m_pPandora

const Pandora* const pandora::ParticleId::m_pPandora
private

Address of the associated pandora instance.

Definition at line 135 of file ParticleIdPlugin.h.

◆ m_pPhotonPlugin

ParticleIdPlugin* pandora::ParticleId::m_pPhotonPlugin
private

The photon id plugin pointer.

Definition at line 137 of file ParticleIdPlugin.h.


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