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

PandoraApiImpl class. More...

#include "PandoraApiImpl.h"

Collaboration diagram for pandora::PandoraApiImpl:

Public Member Functions

template<>
StatusCode Create (const object_creation::MCParticle::Parameters &parameters, const ObjectFactory< object_creation::MCParticle::Parameters, object_creation::MCParticle::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Track::Parameters &parameters, const ObjectFactory< object_creation::Track::Parameters, object_creation::Track::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::CaloHit::Parameters &parameters, const ObjectFactory< object_creation::CaloHit::Parameters, object_creation::CaloHit::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Geometry::SubDetector::Parameters &parameters, const ObjectFactory< object_creation::Geometry::SubDetector::Parameters, object_creation::Geometry::SubDetector::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Geometry::LArTPC::Parameters &parameters, const ObjectFactory< object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Geometry::LineGap::Parameters &parameters, const ObjectFactory< object_creation::Geometry::LineGap::Parameters, object_creation::Geometry::LineGap::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Geometry::BoxGap::Parameters &parameters, const ObjectFactory< object_creation::Geometry::BoxGap::Parameters, object_creation::Geometry::BoxGap::Object > &factory) const
 
template<>
StatusCode Create (const object_creation::Geometry::ConcentricGap::Parameters &parameters, const ObjectFactory< object_creation::Geometry::ConcentricGap::Parameters, object_creation::Geometry::ConcentricGap::Object > &factory) const
 

Private Member Functions

template<typename PARAMETERS , typename OBJECT >
StatusCode Create (const PARAMETERS &parameters, const ObjectFactory< PARAMETERS, OBJECT > &factory) const
 Create an object for pandora.
 
StatusCode ProcessEvent () const
 Process event.
 
StatusCode ReadSettings (const std::string &xmlFileName) const
 Read pandora settings.
 
StatusCode RegisterAlgorithmFactory (const std::string &algorithmType, AlgorithmFactory *const pAlgorithmFactory) const
 Register an algorithm factory with pandora.
 
StatusCode RegisterAlgorithmToolFactory (const std::string &algorithmToolType, AlgorithmToolFactory *const pAlgorithmToolFactory) const
 Register an algorithm tool factory with pandora.
 
StatusCode SetMCParentDaughterRelationship (const void *const pParentAddress, const void *const pDaughterAddress) const
 Set parent-daughter mc particle relationship.
 
StatusCode SetTrackParentDaughterRelationship (const void *const pParentAddress, const void *const pDaughterAddress) const
 Set parent-daughter track relationship.
 
StatusCode SetTrackSiblingRelationship (const void *const pFirstSiblingAddress, const void *const pSecondSiblingAddress) const
 Set sibling track relationship.
 
StatusCode SetCaloHitToMCParticleRelationship (const void *const pCaloHitParentAddress, const void *const pMCParticleParentAddress, const float mcParticleWeight) const
 Set calo hit to mc particle relationship.
 
StatusCode SetTrackToMCParticleRelationship (const void *const pTrackParentAddress, const void *const pMCParticleParentAddress, const float mcParticleWeight) const
 Set track to mc particle relationship.
 
StatusCode GetCurrentPfoList (const PfoList *&pPfoList, std::string &pfoListName) const
 Get the current pfo list.
 
StatusCode GetPfoList (const std::string &pfoListName, const PfoList *&pPfoList) const
 Get a named pfo list.
 
StatusCode SetHitTypeGranularity (const HitType hitType, const Granularity granularity) const
 Set the granularity level to be associated with a specified hit type.
 
StatusCode SetBFieldPlugin (BFieldPlugin *const pBFieldPlugin) const
 Set the bfield plugin used by pandora.
 
StatusCode SetLArTransformationPlugin (LArTransformationPlugin *const pLArTransformationPlugin) const
 Set the lar transformation plugin used by pandora.
 
StatusCode SetPseudoLayerPlugin (PseudoLayerPlugin *const pPseudoLayerPlugin) const
 Set the pseudo layer plugin used by pandora.
 
StatusCode SetShowerProfilePlugin (ShowerProfilePlugin *const pShowerProfilePlugin) const
 Set the shower profile plugin used by pandora.
 
StatusCode RegisterEnergyCorrectionPlugin (const std::string &name, const EnergyCorrectionType energyCorrectionType, EnergyCorrectionPlugin *const pEnergyCorrectionPlugin) const
 Register an energy correction plugin.
 
StatusCode RegisterParticleIdPlugin (const std::string &name, ParticleIdPlugin *const pParticleIdPlugin) const
 Register a particle id plugin.
 
StatusCode ResetEvent () const
 Reset pandora to process another event.
 
 PandoraApiImpl (Pandora *const pPandora)
 Constructor.
 

Private Attributes

Pandoram_pPandora
 The pandora object to provide an interface to.
 

Friends

class Pandora
 
class PandoraImpl
 
class ::PandoraApi
 
template<typename PARAMETERS , typename METADATA , typename OBJECT >
class ::object_creation::ObjectCreationHelper
 

Detailed Description

PandoraApiImpl class.

Definition at line 23 of file PandoraApiImpl.h.

Constructor & Destructor Documentation

◆ PandoraApiImpl()

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

Constructor.

Parameters
pPandoraaddress of the pandora object to interface

Definition at line 236 of file PandoraApiImpl.cc.

Member Function Documentation

◆ Create() [1/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::CaloHit::Parameters parameters,
const ObjectFactory< object_creation::CaloHit::Parameters, object_creation::CaloHit::Object > &  factory 
) const

Definition at line 50 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [2/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::Geometry::BoxGap::Parameters parameters,
const ObjectFactory< object_creation::Geometry::BoxGap::Parameters, object_creation::Geometry::BoxGap::Object > &  factory 
) const

Definition at line 79 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [3/9]

Definition at line 86 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [4/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::Geometry::LArTPC::Parameters parameters,
const ObjectFactory< object_creation::Geometry::LArTPC::Parameters, object_creation::Geometry::LArTPC::Object > &  factory 
) const

Definition at line 65 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [5/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::Geometry::LineGap::Parameters parameters,
const ObjectFactory< object_creation::Geometry::LineGap::Parameters, object_creation::Geometry::LineGap::Object > &  factory 
) const

Definition at line 72 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [6/9]

Definition at line 58 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [7/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::MCParticle::Parameters parameters,
const ObjectFactory< object_creation::MCParticle::Parameters, object_creation::MCParticle::Object > &  factory 
) const

Definition at line 34 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [8/9]

template<>
StatusCode pandora::PandoraApiImpl::Create ( const object_creation::Track::Parameters parameters,
const ObjectFactory< object_creation::Track::Parameters, object_creation::Track::Object > &  factory 
) const

Definition at line 42 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ Create() [9/9]

template<typename PARAMETERS , typename OBJECT >
StatusCode pandora::PandoraApiImpl::Create ( const PARAMETERS &  parameters,
const ObjectFactory< PARAMETERS, OBJECT > &  factory 
) const
private

Create an object for pandora.

Parameters
parametersthe object parameters
factorythe factory that performs the object allocation

Definition at line 93 of file PandoraApiImpl.cc.

◆ GetCurrentPfoList()

StatusCode pandora::PandoraApiImpl::GetCurrentPfoList ( const PfoList *&  pPfoList,
std::string &  pfoListName 
) const
private

Get the current pfo list.

Parameters
pPfoListto receive the address of the current pfo list
pfoListNameto receive the current pfo list name

Definition at line 165 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ GetPfoList()

StatusCode pandora::PandoraApiImpl::GetPfoList ( const std::string &  pfoListName,
const PfoList *&  pPfoList 
) const
private

Get a named pfo list.

Parameters
pfoListNamethe name of the pfo list
pPfoListto receive the address of the pfo list

Definition at line 172 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ ProcessEvent()

StatusCode pandora::PandoraApiImpl::ProcessEvent ( ) const
private

Process event.

Definition at line 100 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ ReadSettings()

StatusCode pandora::PandoraApiImpl::ReadSettings ( const std::string &  xmlFileName) const
private

Read pandora settings.

Parameters
xmlFileNamethe name of the xml file containing the settings

Definition at line 107 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ RegisterAlgorithmFactory()

StatusCode pandora::PandoraApiImpl::RegisterAlgorithmFactory ( const std::string &  algorithmType,
AlgorithmFactory *const  pAlgorithmFactory 
) const
private

Register an algorithm factory with pandora.

Parameters
algorithmTypethe type of algorithm that the factory will create
pAlgorithmFactorythe address of an algorithm factory instance

Definition at line 114 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ RegisterAlgorithmToolFactory()

StatusCode pandora::PandoraApiImpl::RegisterAlgorithmToolFactory ( const std::string &  algorithmToolType,
AlgorithmToolFactory *const  pAlgorithmToolFactory 
) const
private

Register an algorithm tool factory with pandora.

Parameters
algorithmToolTypethe type of algorithm tool that the factory will create
pAlgorithmToolFactorythe address of an algorithm tool factory instance

Definition at line 121 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ RegisterEnergyCorrectionPlugin()

StatusCode pandora::PandoraApiImpl::RegisterEnergyCorrectionPlugin ( const std::string &  name,
const EnergyCorrectionType  energyCorrectionType,
EnergyCorrectionPlugin *const  pEnergyCorrectionPlugin 
) const
private

Register an energy correction plugin.

Parameters
namethe name/label associated with the energy correction plugin
energyCorrectionTypethe energy correction type
pEnergyCorrectionPluginaddress of the energy correction plugin (will pass ownership to pandora)

Definition at line 214 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ RegisterParticleIdPlugin()

StatusCode pandora::PandoraApiImpl::RegisterParticleIdPlugin ( const std::string &  name,
ParticleIdPlugin *const  pParticleIdPlugin 
) const
private

Register a particle id plugin.

Parameters
functionNamethe name/label associated with the particle id plugin
pParticleIdPluginaddress of the particle id plugin (will pass ownership to pandora)

Definition at line 222 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ ResetEvent()

StatusCode pandora::PandoraApiImpl::ResetEvent ( ) const
private

Reset pandora to process another event.

Definition at line 229 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetBFieldPlugin()

StatusCode pandora::PandoraApiImpl::SetBFieldPlugin ( BFieldPlugin *const  pBFieldPlugin) const
private

Set the bfield plugin used by pandora.

Parameters
pBFieldPluginaddress of the bfield plugin (will pass ownership to pandora)

Definition at line 186 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetCaloHitToMCParticleRelationship()

StatusCode pandora::PandoraApiImpl::SetCaloHitToMCParticleRelationship ( const void *const  pCaloHitParentAddress,
const void *const  pMCParticleParentAddress,
const float  mcParticleWeight 
) const
private

Set calo hit to mc particle relationship.

Parameters
pCaloHitParentAddressaddress of calo hit in the user framework
pMCParticleParentAddressaddress of mc particle in the user framework
mcParticleWeightweighting to assign to the mc particle

Definition at line 149 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetHitTypeGranularity()

StatusCode pandora::PandoraApiImpl::SetHitTypeGranularity ( const HitType  hitType,
const Granularity  granularity 
) const
private

Set the granularity level to be associated with a specified hit type.

Parameters
hitTypethe specified hit type
granularitythe specified granularity

Definition at line 179 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetLArTransformationPlugin()

StatusCode pandora::PandoraApiImpl::SetLArTransformationPlugin ( LArTransformationPlugin *const  pLArTransformationPlugin) const
private

Set the lar transformation plugin used by pandora.

Parameters
pLArTransformationPluginaddress of the lar transformation plugin (will pass ownership to pandora)

Definition at line 193 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetMCParentDaughterRelationship()

StatusCode pandora::PandoraApiImpl::SetMCParentDaughterRelationship ( const void *const  pParentAddress,
const void *const  pDaughterAddress 
) const
private

Set parent-daughter mc particle relationship.

Parameters
pParentAddressaddress of parent mc particle in the user framework
pDaughterAddressaddress of daughter mc particle in the user framework

Definition at line 128 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetPseudoLayerPlugin()

StatusCode pandora::PandoraApiImpl::SetPseudoLayerPlugin ( PseudoLayerPlugin *const  pPseudoLayerPlugin) const
private

Set the pseudo layer plugin used by pandora.

Parameters
pPseudoLayerPluginaddress of the pseudo layer plugin (will pass ownership to pandora)

Definition at line 200 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetShowerProfilePlugin()

StatusCode pandora::PandoraApiImpl::SetShowerProfilePlugin ( ShowerProfilePlugin *const  pShowerProfilePlugin) const
private

Set the shower profile plugin used by pandora.

Parameters
pPseudoLayerPluginaddress of the pseudo layer plugin (will pass ownership to pandora)

Definition at line 207 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetTrackParentDaughterRelationship()

StatusCode pandora::PandoraApiImpl::SetTrackParentDaughterRelationship ( const void *const  pParentAddress,
const void *const  pDaughterAddress 
) const
private

Set parent-daughter track relationship.

Parameters
pParentAddressaddress of parent track in the user framework
pDaughterAddressaddress of daughter track in the user framework

Definition at line 135 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetTrackSiblingRelationship()

StatusCode pandora::PandoraApiImpl::SetTrackSiblingRelationship ( const void *const  pFirstSiblingAddress,
const void *const  pSecondSiblingAddress 
) const
private

Set sibling track relationship.

Parameters
pFirstSiblingAddressaddress of first sibling track in the user framework
pSecondSiblingAddressaddress of second sibling track in the user framework

Definition at line 142 of file PandoraApiImpl.cc.

Here is the call graph for this function:

◆ SetTrackToMCParticleRelationship()

StatusCode pandora::PandoraApiImpl::SetTrackToMCParticleRelationship ( const void *const  pTrackParentAddress,
const void *const  pMCParticleParentAddress,
const float  mcParticleWeight 
) const
private

Set track to mc particle relationship.

Parameters
pTrackParentAddressaddress of track in the user framework
pMCParticleParentAddressaddress of mc particle in the user framework
mcParticleWeightweighting to assign to the mc particle

Definition at line 157 of file PandoraApiImpl.cc.

Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ ::object_creation::ObjectCreationHelper

template<typename PARAMETERS , typename METADATA , typename OBJECT >
friend class ::object_creation::ObjectCreationHelper
friend

Definition at line 194 of file PandoraApiImpl.h.

◆ ::PandoraApi

friend class ::PandoraApi
friend

Definition at line 193 of file PandoraApiImpl.h.

◆ Pandora

friend class Pandora
friend

Definition at line 191 of file PandoraApiImpl.h.

◆ PandoraImpl

friend class PandoraImpl
friend

Definition at line 192 of file PandoraApiImpl.h.

Member Data Documentation

◆ m_pPandora

Pandora* pandora::PandoraApiImpl::m_pPandora
private

The pandora object to provide an interface to.

Definition at line 189 of file PandoraApiImpl.h.


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