Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
lar_dl_content::DLMasterAlgorithm Class Reference

MasterAlgorithm class. More...

#include "DLMasterAlgorithm.h"

Inheritance diagram for lar_dl_content::DLMasterAlgorithm:
Collaboration diagram for lar_dl_content::DLMasterAlgorithm:

Public Types

typedef std::unordered_map< const pandora::ParticleFlowObject *, const pandora::LArTPC * > PfoToLArTPCMap
 

Public Member Functions

 DLMasterAlgorithm ()=default
 Default constructor.
 
void ShiftPfoHierarchy (const pandora::ParticleFlowObject *const pParentPfo, const PfoToLArTPCMap &pfoToLArTPCMap, const float x0) const
 Shift a Pfo hierarchy by a specified x0 value.
 
void StitchPfos (const pandora::ParticleFlowObject *const pPfoToEnlarge, const pandora::ParticleFlowObject *const pPfoToDelete, PfoToLArTPCMap &pfoToLArTPCMap) const
 Stitch together a pair of pfos.
 
const std::string & GetType () const
 Get the type.
 
const std::string & GetInstanceName () const
 Get the instance name.
 
const PandoraGetPandora () const
 Get the associated pandora instance.
 

Static Public Member Functions

static StatusCode SetExternalParameters (const Pandora &pandora, const std::string &algorithmType, ExternalParameters *const pExternalParameters)
 Set the external parameters associated with an algorithm instance of a specific type, created by the given Pandora instance.
 

Protected Types

typedef std::map< unsigned int, LArTPCHitListVolumeIdToHitListMap
 
typedef std::vector< StitchingBaseTool * > StitchingToolVector
 
typedef std::vector< CosmicRayTaggingBaseTool * > CosmicRayTaggingToolVector
 
typedef std::vector< SliceIdBaseTool * > SliceIdToolVector
 
typedef std::vector< SliceSelectionBaseTool * > SliceSelectionToolVector
 

Protected Member Functions

pandora::StatusCode InitializeWorkerInstances ()
 Initialize pandora worker instances.
 
pandora::StatusCode CopyMCParticles () const
 Copy mc particles in the named input list to all pandora worker instances.
 
pandora::StatusCode GetVolumeIdToHitListMap (VolumeIdToHitListMap &volumeIdToHitListMap) const
 Get the mapping from lar tpc volume id to lists of all hits, and truncated hits.
 
pandora::StatusCode RunCosmicRayReconstruction (const VolumeIdToHitListMap &volumeIdToHitListMap) const
 Run the cosmic-ray reconstruction worker instances.
 
pandora::StatusCode RecreateCosmicRayPfos (PfoToLArTPCMap &pfoToLArTPCMap) const
 Recreate cosmic-ray pfos (created by worker instances) in the master instance.
 
pandora::StatusCode StitchCosmicRayPfos (PfoToLArTPCMap &pfoToLArTPCMap, PfoToFloatMap &stitchedPfosToX0Map) const
 Stitch together cosmic-ray pfos crossing between adjacent lar tpcs.
 
pandora::StatusCode TagCosmicRayPfos (const PfoToFloatMap &stitchedPfosToX0Map, pandora::PfoList &clearCosmicRayPfos, pandora::PfoList &ambiguousPfos) const
 Tag clear, unambiguous cosmic-ray pfos.
 
pandora::StatusCode RunCosmicRayHitRemoval (const pandora::PfoList &ambiguousPfos) const
 Run cosmic-ray hit removal, freeing hits in ambiguous pfos for further processing.
 
pandora::StatusCode RunSlicing (const VolumeIdToHitListMap &volumeIdToHitListMap, SliceVector &sliceVector) const
 Run the event slicing procedures, dividing available hits up into distinct 3D regions.
 
pandora::StatusCode RunSliceReconstruction (SliceVector &sliceVector, SliceHypotheses &nuSliceHypotheses, SliceHypotheses &crSliceHypotheses) const
 Process each slice under different reconstruction hypotheses.
 
pandora::StatusCode SelectBestSliceHypotheses (const SliceHypotheses &nuSliceHypotheses, const SliceHypotheses &crSliceHypotheses) const
 Examine slice hypotheses to identify the most appropriate to provide in final event output.
 
pandora::StatusCode Reset ()
 Reset all worker instances.
 
pandora::StatusCode Copy (const pandora::Pandora *const pPandora, const pandora::CaloHit *const pCaloHit) const
 Copy a specified calo hit to the provided pandora instance.
 
pandora::StatusCode Copy (const pandora::Pandora *const pPandora, const pandora::MCParticle *const pMCParticle, const LArMCParticleFactory *const pMCParticleFactory) const
 Copy a specified mc particle to the provided pandora instance.
 
pandora::StatusCode Recreate (const pandora::PfoList &inputPfoList, pandora::PfoList &newPfoList) const
 Recreate a specified list of pfos in the current pandora instance.
 
pandora::StatusCode Recreate (const pandora::ParticleFlowObject *const pInputPfo, const pandora::ParticleFlowObject *const pNewParentPfo, pandora::PfoList &newPfoList) const
 Recreate a specified pfo in the current pandora instance.
 
const pandora::CaloHitCreateCaloHit (const pandora::CaloHit *const pInputCaloHit, const pandora::CaloHit *const pParentCaloHit) const
 Create a new calo hit in the current pandora instance, based upon the provided input calo hit.
 
const pandora::ClusterCreateCluster (const pandora::Cluster *const pInputCluster, const pandora::CaloHitList &newCaloHitList, const pandora::CaloHitList &newIsolatedCaloHitList) const
 Create a new cluster in the current pandora instance, based upon the provided input cluster.
 
const pandora::VertexCreateVertex (const pandora::Vertex *const pInputVertex) const
 Create a new vertex in the current pandora instance, based upon the provided input vertex.
 
const pandora::ParticleFlowObjectCreatePfo (const pandora::ParticleFlowObject *const pInputPfo, const pandora::ClusterList &newClusterList, const pandora::VertexList &newVertexList) const
 Create a new pfo in the current pandora instance, based upon the provided input pfo.
 
const pandora::PandoraCreateWorkerInstance (const pandora::LArTPC &larTPC, const pandora::DetectorGapList &gapList, const std::string &settingsFile, const std::string &name) const
 Create a pandora worker instance to handle a single LArTPC.
 
const pandora::PandoraCreateWorkerInstance (const pandora::LArTPCMap &larTPCMap, const pandora::DetectorGapList &gapList, const std::string &settingsFile, const std::string &name) const
 Create a pandora worker instance to handle a number of LArTPCs.
 
pandora::StatusCode ReadExternalSettings (const ExternalSteeringParameters *const pExternalParameters, const pandora::InputBool inputBool, const pandora::TiXmlHandle xmlHandle, const std::string &xmlTag, bool &outputBool)
 Read settings from external steering parameters block, if present, otherwise from xml as standard.
 
bool ExternalParametersPresent () const
 Whether external parameters are present.
 
ExternalParametersGetExternalParameters () const
 Get the external parameters associated with algorithm instances created by a given Pandora instance. A single call to this function per algorithm type, per Pandora instance is enforced to prevent misuse.
 
virtual StatusCode Initialize ()
 Perform any operations that must occur after reading settings, but before running the process.
 
StatusCode RegisterDetails (const Pandora *const pPandora, const std::string &type, const std::string &instanceName)
 Register i) the pandora instance that will run the process and ii) the process type.
 

Protected Attributes

bool m_workerInstancesInitialized
 Whether all worker instances have been initialized.
 
unsigned int m_larCaloHitVersion
 The LArCaloHit version for LArCaloHitFactory.
 
bool m_shouldRunAllHitsCosmicReco
 Whether to run all hits cosmic-ray reconstruction.
 
bool m_shouldRunStitching
 Whether to stitch cosmic-ray muons crossing between volumes.
 
bool m_shouldRunCosmicHitRemoval
 Whether to remove hits from tagged cosmic-rays.
 
bool m_shouldRunSlicing
 Whether to slice events into separate regions for processing.
 
bool m_shouldRunNeutrinoRecoOption
 Whether to run neutrino reconstruction for each slice.
 
bool m_shouldRunCosmicRecoOption
 Whether to run cosmic-ray reconstruction for each slice.
 
bool m_shouldPerformSliceId
 Whether to identify slices and select most appropriate pfos.
 
bool m_printOverallRecoStatus
 Whether to print current operation status messages.
 
bool m_visualizeOverallRecoStatus
 Whether to display results of current operations.
 
bool m_shouldRemoveOutOfTimeHits
 Whether to remove out of time hits.
 
PandoraInstanceList m_crWorkerInstances
 The list of cosmic-ray reconstruction worker instances.
 
const pandora::Pandoram_pSlicingWorkerInstance
 The slicing worker instance.
 
const pandora::Pandoram_pSliceNuWorkerInstance
 The per-slice neutrino reconstruction worker instance.
 
const pandora::Pandoram_pSliceCRWorkerInstance
 The per-slice cosmic-ray reconstruction worker instance.
 
bool m_fullWidthCRWorkerWireGaps
 Whether wire-type line gaps in cosmic-ray worker instances should cover all drift time.
 
bool m_passMCParticlesToWorkerInstances
 Whether to pass mc particle details (and links to calo hits) to worker instances.
 
StitchingToolVector m_stitchingToolVector
 The stitching tool vector.
 
CosmicRayTaggingToolVector m_cosmicRayTaggingToolVector
 The cosmic-ray tagging tool vector.
 
SliceIdToolVector m_sliceIdToolVector
 The slice id tool vector.
 
SliceSelectionToolVector m_sliceSelectionToolVector
 The slice selection tool vector.
 
std::string m_filePathEnvironmentVariable
 The environment variable providing a list of paths to xml files.
 
std::string m_crSettingsFile
 The cosmic-ray reconstruction settings file.
 
std::string m_nuSettingsFile
 The neutrino reconstruction settings file.
 
std::string m_slicingSettingsFile
 The slicing settings file.
 
std::string m_inputMCParticleListName
 The input mc particle list name.
 
std::string m_inputHitListName
 The input hit list name.
 
std::string m_recreatedPfoListName
 The output recreated pfo list name.
 
std::string m_recreatedClusterListName
 The output recreated cluster list name.
 
std::string m_recreatedVertexListName
 The output recreated vertex list name.
 
float m_inTimeMaxX0
 Cut on X0 to determine whether particle is clear cosmic ray.
 
LArCaloHitFactory m_larCaloHitFactory
 Factory for creating LArCaloHits during hit copying.
 
const Pandoram_pPandora
 The pandora object that will run the process.
 
std::string m_type
 The process type.
 
std::string m_instanceName
 The process instance name.
 

Private Member Functions

pandora::StatusCode Run ()
 Run the algorithm.
 
pandora::StatusCode RegisterCustomContent (const pandora::Pandora *const pPandora) const
 Register custom content, such as algorithms or algorithm tools, with a specified pandora instance.
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 Read the algorithm settings.
 

Static Private Attributes

static ExternalParametersMap m_externalParametersMap
 The external parameters map.
 

Detailed Description

MasterAlgorithm class.

Definition at line 19 of file DLMasterAlgorithm.h.

Member Typedef Documentation

◆ CosmicRayTaggingToolVector

typedef std::vector<CosmicRayTaggingBaseTool *> lar_content::MasterAlgorithm::CosmicRayTaggingToolVector
protectedinherited

Definition at line 334 of file MasterAlgorithm.h.

◆ PfoToLArTPCMap

typedef std::unordered_map<const pandora::ParticleFlowObject *, const pandora::LArTPC *> lar_content::MasterAlgorithm::PfoToLArTPCMap
inherited

Definition at line 62 of file MasterAlgorithm.h.

◆ SliceIdToolVector

typedef std::vector<SliceIdBaseTool *> lar_content::MasterAlgorithm::SliceIdToolVector
protectedinherited

Definition at line 335 of file MasterAlgorithm.h.

◆ SliceSelectionToolVector

typedef std::vector<SliceSelectionBaseTool *> lar_content::MasterAlgorithm::SliceSelectionToolVector
protectedinherited

Definition at line 336 of file MasterAlgorithm.h.

◆ StitchingToolVector

typedef std::vector<StitchingBaseTool *> lar_content::MasterAlgorithm::StitchingToolVector
protectedinherited

Definition at line 333 of file MasterAlgorithm.h.

◆ VolumeIdToHitListMap

typedef std::map<unsigned int, LArTPCHitList> lar_content::MasterAlgorithm::VolumeIdToHitListMap
protectedinherited

Definition at line 94 of file MasterAlgorithm.h.

Constructor & Destructor Documentation

◆ DLMasterAlgorithm()

lar_dl_content::DLMasterAlgorithm::DLMasterAlgorithm ( )
default

Default constructor.

Member Function Documentation

◆ Copy() [1/2]

StatusCode lar_content::MasterAlgorithm::Copy ( const pandora::Pandora *const  pPandora,
const pandora::CaloHit *const  pCaloHit 
) const
protectedinherited

Copy a specified calo hit to the provided pandora instance.

Parameters
pPandorathe address of the target pandora instance
pCaloHitthe address of the calo hit

Definition at line 647 of file MasterAlgorithm.cc.

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

◆ Copy() [2/2]

StatusCode lar_content::MasterAlgorithm::Copy ( const pandora::Pandora *const  pPandora,
const pandora::MCParticle *const  pMCParticle,
const LArMCParticleFactory *const  pMCParticleFactory 
) const
protectedinherited

Copy a specified mc particle to the provided pandora instance.

Parameters
pPandorathe address of the target pandora instance
pMCParticlethe address of the mc particle
pMCParticleFactorythe address of the mc particle factory, allowing decoration of instances with information beyond that expected by sdk

Definition at line 678 of file MasterAlgorithm.cc.

Here is the call graph for this function:

◆ CopyMCParticles()

StatusCode lar_content::MasterAlgorithm::CopyMCParticles ( ) const
protectedinherited

Copy mc particles in the named input list to all pandora worker instances.

Definition at line 239 of file MasterAlgorithm.cc.

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

◆ CreateCaloHit()

const CaloHit * lar_content::MasterAlgorithm::CreateCaloHit ( const pandora::CaloHit *const  pInputCaloHit,
const pandora::CaloHit *const  pParentCaloHit 
) const
protectedinherited

Create a new calo hit in the current pandora instance, based upon the provided input calo hit.

Parameters
pInputCaloHitthe address of the input calo hit
pParentCaloHitthe address of the parent calo hit
Returns
the address of the new calo hit

Definition at line 814 of file MasterAlgorithm.cc.

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

◆ CreateCluster()

const Cluster * lar_content::MasterAlgorithm::CreateCluster ( const pandora::Cluster *const  pInputCluster,
const pandora::CaloHitList newCaloHitList,
const pandora::CaloHitList newIsolatedCaloHitList 
) const
protectedinherited

Create a new cluster in the current pandora instance, based upon the provided input cluster.

Parameters
pInputClusterthe address of the input cluster
newCaloHitListthe list of calo hits for the new cluster
newIsolatedCaloHitListthe list of isolated calo hits for the new cluster
Returns
the address of the new cluster

Definition at line 851 of file MasterAlgorithm.cc.

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

◆ CreatePfo()

const ParticleFlowObject * lar_content::MasterAlgorithm::CreatePfo ( const pandora::ParticleFlowObject *const  pInputPfo,
const pandora::ClusterList newClusterList,
const pandora::VertexList newVertexList 
) const
protectedinherited

Create a new pfo in the current pandora instance, based upon the provided input pfo.

Parameters
pInputPfothe address of the input pfo
newClusterListthe list of clusters for the new pfo
newVertexListthe list of vertices for the new pfo
Returns
the address of the new pfo

Definition at line 885 of file MasterAlgorithm.cc.

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

◆ CreateVertex()

const Vertex * lar_content::MasterAlgorithm::CreateVertex ( const pandora::Vertex *const  pInputVertex) const
protectedinherited

Create a new vertex in the current pandora instance, based upon the provided input vertex.

Parameters
pInputVertexthe address of the input vertex
Returns
the address of the new vertex

Definition at line 870 of file MasterAlgorithm.cc.

Here is the call graph for this function:

◆ CreateWorkerInstance() [1/2]

const Pandora * lar_content::MasterAlgorithm::CreateWorkerInstance ( const pandora::LArTPC larTPC,
const pandora::DetectorGapList gapList,
const std::string &  settingsFile,
const std::string &  name 
) const
protectedinherited

Create a pandora worker instance to handle a single LArTPC.

Parameters
larTPCthe lar tpc
gapListthe gap list
settingsFilethe pandora settings file
namethe pandora instance name
Returns
the address of the pandora instance

Definition at line 907 of file MasterAlgorithm.cc.

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

◆ CreateWorkerInstance() [2/2]

const Pandora * lar_content::MasterAlgorithm::CreateWorkerInstance ( const pandora::LArTPCMap larTPCMap,
const pandora::DetectorGapList gapList,
const std::string &  settingsFile,
const std::string &  name 
) const
protectedinherited

Create a pandora worker instance to handle a number of LArTPCs.

Parameters
larTPCMapthe lar tpc map
gapListthe gap list
settingsFilethe pandora settings file
namethe pandora instance name
Returns
the address of the pandora instance

Definition at line 975 of file MasterAlgorithm.cc.

Here is the call graph for this function:

◆ ExternalParametersPresent()

bool pandora::ExternallyConfiguredAlgorithm::ExternalParametersPresent ( ) const
protectedinherited

Whether external parameters are present.

Returns
boolean

Definition at line 58 of file ExternallyConfiguredAlgorithm.cc.

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

◆ GetExternalParameters()

ExternalParameters * pandora::ExternallyConfiguredAlgorithm::GetExternalParameters ( ) const
protectedinherited

Get the external parameters associated with algorithm instances created by a given Pandora instance. A single call to this function per algorithm type, per Pandora instance is enforced to prevent misuse.

Returns
the address of the external parameters

Definition at line 65 of file ExternallyConfiguredAlgorithm.cc.

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

◆ GetInstanceName()

const std::string & pandora::Process::GetInstanceName ( ) const
inlineinherited

Get the instance name.

Returns
The instance name

Definition at line 109 of file Process.h.

◆ GetPandora()

const Pandora & pandora::Process::GetPandora ( ) const
inlineinherited

Get the associated pandora instance.

Returns
the associated pandora instance

Definition at line 116 of file Process.h.

◆ GetType()

const std::string & pandora::Process::GetType ( ) const
inlineinherited

Get the type.

Returns
The type

Definition at line 102 of file Process.h.

◆ GetVolumeIdToHitListMap()

StatusCode lar_content::MasterAlgorithm::GetVolumeIdToHitListMap ( VolumeIdToHitListMap volumeIdToHitListMap) const
protectedinherited

Get the mapping from lar tpc volume id to lists of all hits, and truncated hits.

Parameters
volumeIdToHitListMapto receive the populated volume id to hit list map

Definition at line 265 of file MasterAlgorithm.cc.

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

◆ Initialize()

StatusCode pandora::Process::Initialize ( )
inlineprotectedvirtualinherited

Perform any operations that must occur after reading settings, but before running the process.

Reimplemented in lar_content::BdtBeamParticleIdTool, lar_content::BeamParticleIdTool, lar_content::CosmicRayTaggingTool, lar_content::EventReadingAlgorithm, lar_content::EventWritingAlgorithm, lar_content::LArPseudoLayerPlugin, lar_content::LArRotationalTransformationPlugin, EventReadingAlgorithm, and EventWritingAlgorithm.

Definition at line 126 of file Process.h.

Here is the caller graph for this function:

◆ InitializeWorkerInstances()

StatusCode lar_content::MasterAlgorithm::InitializeWorkerInstances ( )
protectedinherited

Initialize pandora worker instances.

Definition at line 200 of file MasterAlgorithm.cc.

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

◆ ReadExternalSettings()

StatusCode lar_content::MasterAlgorithm::ReadExternalSettings ( const ExternalSteeringParameters *const  pExternalParameters,
const pandora::InputBool  inputBool,
const pandora::TiXmlHandle  xmlHandle,
const std::string &  xmlTag,
bool &  outputBool 
)
protectedinherited

Read settings from external steering parameters block, if present, otherwise from xml as standard.

Parameters
pExternalParametersthe address of the external parameters (if present)
inputBoolthe input boolean value, from the external parameters (if present)
xmlHandlethe xml handle
xmlTagthe xml tag
outputBoolto receive the output boolean value

Definition at line 1223 of file MasterAlgorithm.cc.

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

◆ ReadSettings()

StatusCode lar_dl_content::DLMasterAlgorithm::ReadSettings ( const pandora::TiXmlHandle  xmlHandle)
privatevirtual

Read the algorithm settings.

Parameters
xmlHandlethe relevant xml handle

Implements pandora::Process.

Definition at line 37 of file DLMasterAlgorithm.cc.

◆ Recreate() [1/2]

StatusCode lar_content::MasterAlgorithm::Recreate ( const pandora::ParticleFlowObject *const  pInputPfo,
const pandora::ParticleFlowObject *const  pNewParentPfo,
pandora::PfoList newPfoList 
) const
protectedinherited

Recreate a specified pfo in the current pandora instance.

Parameters
pInputPfothe input pfo
pNewParentPfothe new parent of the new output pfo (nullptr if none)
newPfoListto receive the list of new pfos

Definition at line 751 of file MasterAlgorithm.cc.

Here is the call graph for this function:

◆ Recreate() [2/2]

StatusCode lar_content::MasterAlgorithm::Recreate ( const pandora::PfoList inputPfoList,
pandora::PfoList newPfoList 
) const
protectedinherited

Recreate a specified list of pfos in the current pandora instance.

Parameters
inputPfoListthe input pfo list
newPfoListto receive the list of new pfos

Definition at line 703 of file MasterAlgorithm.cc.

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

◆ RecreateCosmicRayPfos()

StatusCode lar_content::MasterAlgorithm::RecreateCosmicRayPfos ( PfoToLArTPCMap pfoToLArTPCMap) const
protectedinherited

Recreate cosmic-ray pfos (created by worker instances) in the master instance.

Parameters
pfoToLArTPCMapto receive the populated pfo to lar tpc map

Definition at line 324 of file MasterAlgorithm.cc.

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

◆ RegisterCustomContent()

StatusCode lar_dl_content::DLMasterAlgorithm::RegisterCustomContent ( const pandora::Pandora *const  pPandora) const
privatevirtual

Register custom content, such as algorithms or algorithm tools, with a specified pandora instance.

Parameters
pPandorathe address of the pandora instance

Reimplemented from lar_content::MasterAlgorithm.

Definition at line 28 of file DLMasterAlgorithm.cc.

Here is the call graph for this function:

◆ RegisterDetails()

StatusCode pandora::Process::RegisterDetails ( const Pandora *const  pPandora,
const std::string &  type,
const std::string &  instanceName 
)
inlineprotectedinherited

Register i) the pandora instance that will run the process and ii) the process type.

Parameters
pPandoraaddress of the pandora object that will run the process
typethe process type
instanceNamethe process instance name

Definition at line 146 of file Process.h.

Here is the caller graph for this function:

◆ Reset()

StatusCode lar_content::MasterAlgorithm::Reset ( )
protectedvirtualinherited

Reset all worker instances.

Reimplemented from pandora::Process.

Definition at line 628 of file MasterAlgorithm.cc.

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

◆ Run()

StatusCode lar_dl_content::DLMasterAlgorithm::Run ( )
privatevirtual

Run the algorithm.

Implements pandora::Algorithm.

Definition at line 21 of file DLMasterAlgorithm.cc.

◆ RunCosmicRayHitRemoval()

StatusCode lar_content::MasterAlgorithm::RunCosmicRayHitRemoval ( const pandora::PfoList ambiguousPfos) const
protectedinherited

Run cosmic-ray hit removal, freeing hits in ambiguous pfos for further processing.

Parameters
ambiguousPfosthe list of ambiguous cosmic-ray pfos

Definition at line 418 of file MasterAlgorithm.cc.

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

◆ RunCosmicRayReconstruction()

StatusCode lar_content::MasterAlgorithm::RunCosmicRayReconstruction ( const VolumeIdToHitListMap volumeIdToHitListMap) const
protectedinherited

Run the cosmic-ray reconstruction worker instances.

Parameters
volumeIdToHitListMapthe volume id to hit list map

Definition at line 298 of file MasterAlgorithm.cc.

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

◆ RunSliceReconstruction()

StatusCode lar_content::MasterAlgorithm::RunSliceReconstruction ( SliceVector sliceVector,
SliceHypotheses nuSliceHypotheses,
SliceHypotheses crSliceHypotheses 
) const
protectedinherited

Process each slice under different reconstruction hypotheses.

Parameters
sliceVectorthe slice vector
nuSliceHypothesesto receive the vector of slice neutrino hypotheses
crSliceHypothesesto receive the vector of slice cosmic-ray hypotheses

Definition at line 515 of file MasterAlgorithm.cc.

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

◆ RunSlicing()

StatusCode lar_content::MasterAlgorithm::RunSlicing ( const VolumeIdToHitListMap volumeIdToHitListMap,
SliceVector sliceVector 
) const
protectedinherited

Run the event slicing procedures, dividing available hits up into distinct 3D regions.

Parameters
volumeIdToHitListMapthe volume id to hit list map
sliceVectorto receive the populated slice vector

Definition at line 457 of file MasterAlgorithm.cc.

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

◆ SelectBestSliceHypotheses()

StatusCode lar_content::MasterAlgorithm::SelectBestSliceHypotheses ( const SliceHypotheses nuSliceHypotheses,
const SliceHypotheses crSliceHypotheses 
) const
protectedinherited

Examine slice hypotheses to identify the most appropriate to provide in final event output.

Parameters
nuSliceHypothesesthe vector of slice neutrino hypotheses
crSliceHypothesesthe vector of slice cosmic-ray hypotheses

Definition at line 600 of file MasterAlgorithm.cc.

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

◆ SetExternalParameters()

StatusCode pandora::ExternallyConfiguredAlgorithm::SetExternalParameters ( const Pandora pandora,
const std::string &  algorithmType,
ExternalParameters *const  pExternalParameters 
)
staticinherited

Set the external parameters associated with an algorithm instance of a specific type, created by the given Pandora instance.

Parameters
pandorathe pandora instance
algorithmTypethe algorithm type
pExternalParametersthe address of the external parameters instance

Definition at line 51 of file ExternallyConfiguredAlgorithm.cc.

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

◆ ShiftPfoHierarchy()

void lar_content::MasterAlgorithm::ShiftPfoHierarchy ( const pandora::ParticleFlowObject *const  pParentPfo,
const PfoToLArTPCMap pfoToLArTPCMap,
const float  x0 
) const
inherited

Shift a Pfo hierarchy by a specified x0 value.

Parameters
pPfothe address of the parent pfo
stitchingInfothe source for additional, local, stitching information
x0the x0 correction relative to the input pfo

Definition at line 60 of file MasterAlgorithm.cc.

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

◆ StitchCosmicRayPfos()

StatusCode lar_content::MasterAlgorithm::StitchCosmicRayPfos ( PfoToLArTPCMap pfoToLArTPCMap,
PfoToFloatMap stitchedPfosToX0Map 
) const
protectedinherited

Stitch together cosmic-ray pfos crossing between adjacent lar tpcs.

Parameters
pfoToLArTPCMapthe pfo to lar tpc map
stitchedPfosToX0Mapto receive the map of cosmic-ray pfos that have been stitched between lar tpcs to the X0 shift

Definition at line 345 of file MasterAlgorithm.cc.

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

◆ StitchPfos()

void lar_content::MasterAlgorithm::StitchPfos ( const pandora::ParticleFlowObject *const  pPfoToEnlarge,
const pandora::ParticleFlowObject *const  pPfoToDelete,
PfoToLArTPCMap pfoToLArTPCMap 
) const
inherited

Stitch together a pair of pfos.

Parameters
pPfoToEnlargethe address of the pfo to enlarge
pPfoToDeletethe address of the pfo to delete (will become a dangling pointer)
stitchingInfothe source for additional, local, stitching information

Definition at line 112 of file MasterAlgorithm.cc.

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

◆ TagCosmicRayPfos()

StatusCode lar_content::MasterAlgorithm::TagCosmicRayPfos ( const PfoToFloatMap stitchedPfosToX0Map,
pandora::PfoList clearCosmicRayPfos,
pandora::PfoList ambiguousPfos 
) const
protectedinherited

Tag clear, unambiguous cosmic-ray pfos.

Parameters
stitchedPfosToX0Mapa map of cosmic-ray pfos that have been stitched between lar tpcs to the X0 shift
clearCosmicRayPfosto receive the list of clear cosmic-ray pfos
ambiguousPfosto receive the list of ambiguous cosmic-ray pfos for further analysis

Definition at line 370 of file MasterAlgorithm.cc.

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

Member Data Documentation

◆ m_cosmicRayTaggingToolVector

CosmicRayTaggingToolVector lar_content::MasterAlgorithm::m_cosmicRayTaggingToolVector
protectedinherited

The cosmic-ray tagging tool vector.

Definition at line 339 of file MasterAlgorithm.h.

◆ m_crSettingsFile

std::string lar_content::MasterAlgorithm::m_crSettingsFile
protectedinherited

The cosmic-ray reconstruction settings file.

Definition at line 344 of file MasterAlgorithm.h.

◆ m_crWorkerInstances

PandoraInstanceList lar_content::MasterAlgorithm::m_crWorkerInstances
protectedinherited

The list of cosmic-ray reconstruction worker instances.

Definition at line 325 of file MasterAlgorithm.h.

◆ m_externalParametersMap

ExternallyConfiguredAlgorithm::ExternalParametersMap pandora::ExternallyConfiguredAlgorithm::m_externalParametersMap
staticprivateinherited

The external parameters map.

Definition at line 143 of file ExternallyConfiguredAlgorithm.h.

◆ m_filePathEnvironmentVariable

std::string lar_content::MasterAlgorithm::m_filePathEnvironmentVariable
protectedinherited

The environment variable providing a list of paths to xml files.

Definition at line 343 of file MasterAlgorithm.h.

◆ m_fullWidthCRWorkerWireGaps

bool lar_content::MasterAlgorithm::m_fullWidthCRWorkerWireGaps
protectedinherited

Whether wire-type line gaps in cosmic-ray worker instances should cover all drift time.

Definition at line 330 of file MasterAlgorithm.h.

◆ m_inputHitListName

std::string lar_content::MasterAlgorithm::m_inputHitListName
protectedinherited

The input hit list name.

Definition at line 349 of file MasterAlgorithm.h.

◆ m_inputMCParticleListName

std::string lar_content::MasterAlgorithm::m_inputMCParticleListName
protectedinherited

The input mc particle list name.

Definition at line 348 of file MasterAlgorithm.h.

◆ m_instanceName

std::string pandora::Process::m_instanceName
protectedinherited

The process instance name.

Definition at line 89 of file Process.h.

◆ m_inTimeMaxX0

float lar_content::MasterAlgorithm::m_inTimeMaxX0
protectedinherited

Cut on X0 to determine whether particle is clear cosmic ray.

Definition at line 354 of file MasterAlgorithm.h.

◆ m_larCaloHitFactory

LArCaloHitFactory lar_content::MasterAlgorithm::m_larCaloHitFactory
protectedinherited

Factory for creating LArCaloHits during hit copying.

Definition at line 355 of file MasterAlgorithm.h.

◆ m_larCaloHitVersion

unsigned int lar_content::MasterAlgorithm::m_larCaloHitVersion
protectedinherited

The LArCaloHit version for LArCaloHitFactory.

Definition at line 312 of file MasterAlgorithm.h.

◆ m_nuSettingsFile

std::string lar_content::MasterAlgorithm::m_nuSettingsFile
protectedinherited

The neutrino reconstruction settings file.

Definition at line 345 of file MasterAlgorithm.h.

◆ m_passMCParticlesToWorkerInstances

bool lar_content::MasterAlgorithm::m_passMCParticlesToWorkerInstances
protectedinherited

Whether to pass mc particle details (and links to calo hits) to worker instances.

Definition at line 331 of file MasterAlgorithm.h.

◆ m_pPandora

const Pandora* pandora::Process::m_pPandora
protectedinherited

The pandora object that will run the process.

Definition at line 87 of file Process.h.

◆ m_printOverallRecoStatus

bool lar_content::MasterAlgorithm::m_printOverallRecoStatus
protectedinherited

Whether to print current operation status messages.

Definition at line 321 of file MasterAlgorithm.h.

◆ m_pSliceCRWorkerInstance

const pandora::Pandora* lar_content::MasterAlgorithm::m_pSliceCRWorkerInstance
protectedinherited

The per-slice cosmic-ray reconstruction worker instance.

Definition at line 328 of file MasterAlgorithm.h.

◆ m_pSliceNuWorkerInstance

const pandora::Pandora* lar_content::MasterAlgorithm::m_pSliceNuWorkerInstance
protectedinherited

The per-slice neutrino reconstruction worker instance.

Definition at line 327 of file MasterAlgorithm.h.

◆ m_pSlicingWorkerInstance

const pandora::Pandora* lar_content::MasterAlgorithm::m_pSlicingWorkerInstance
protectedinherited

The slicing worker instance.

Definition at line 326 of file MasterAlgorithm.h.

◆ m_recreatedClusterListName

std::string lar_content::MasterAlgorithm::m_recreatedClusterListName
protectedinherited

The output recreated cluster list name.

Definition at line 351 of file MasterAlgorithm.h.

◆ m_recreatedPfoListName

std::string lar_content::MasterAlgorithm::m_recreatedPfoListName
protectedinherited

The output recreated pfo list name.

Definition at line 350 of file MasterAlgorithm.h.

◆ m_recreatedVertexListName

std::string lar_content::MasterAlgorithm::m_recreatedVertexListName
protectedinherited

The output recreated vertex list name.

Definition at line 352 of file MasterAlgorithm.h.

◆ m_shouldPerformSliceId

bool lar_content::MasterAlgorithm::m_shouldPerformSliceId
protectedinherited

Whether to identify slices and select most appropriate pfos.

Definition at line 320 of file MasterAlgorithm.h.

◆ m_shouldRemoveOutOfTimeHits

bool lar_content::MasterAlgorithm::m_shouldRemoveOutOfTimeHits
protectedinherited

Whether to remove out of time hits.

Definition at line 323 of file MasterAlgorithm.h.

◆ m_shouldRunAllHitsCosmicReco

bool lar_content::MasterAlgorithm::m_shouldRunAllHitsCosmicReco
protectedinherited

Whether to run all hits cosmic-ray reconstruction.

Definition at line 314 of file MasterAlgorithm.h.

◆ m_shouldRunCosmicHitRemoval

bool lar_content::MasterAlgorithm::m_shouldRunCosmicHitRemoval
protectedinherited

Whether to remove hits from tagged cosmic-rays.

Definition at line 316 of file MasterAlgorithm.h.

◆ m_shouldRunCosmicRecoOption

bool lar_content::MasterAlgorithm::m_shouldRunCosmicRecoOption
protectedinherited

Whether to run cosmic-ray reconstruction for each slice.

Definition at line 319 of file MasterAlgorithm.h.

◆ m_shouldRunNeutrinoRecoOption

bool lar_content::MasterAlgorithm::m_shouldRunNeutrinoRecoOption
protectedinherited

Whether to run neutrino reconstruction for each slice.

Definition at line 318 of file MasterAlgorithm.h.

◆ m_shouldRunSlicing

bool lar_content::MasterAlgorithm::m_shouldRunSlicing
protectedinherited

Whether to slice events into separate regions for processing.

Definition at line 317 of file MasterAlgorithm.h.

◆ m_shouldRunStitching

bool lar_content::MasterAlgorithm::m_shouldRunStitching
protectedinherited

Whether to stitch cosmic-ray muons crossing between volumes.

Definition at line 315 of file MasterAlgorithm.h.

◆ m_sliceIdToolVector

SliceIdToolVector lar_content::MasterAlgorithm::m_sliceIdToolVector
protectedinherited

The slice id tool vector.

Definition at line 340 of file MasterAlgorithm.h.

◆ m_sliceSelectionToolVector

SliceSelectionToolVector lar_content::MasterAlgorithm::m_sliceSelectionToolVector
protectedinherited

The slice selection tool vector.

Definition at line 341 of file MasterAlgorithm.h.

◆ m_slicingSettingsFile

std::string lar_content::MasterAlgorithm::m_slicingSettingsFile
protectedinherited

The slicing settings file.

Definition at line 346 of file MasterAlgorithm.h.

◆ m_stitchingToolVector

StitchingToolVector lar_content::MasterAlgorithm::m_stitchingToolVector
protectedinherited

The stitching tool vector.

Definition at line 338 of file MasterAlgorithm.h.

◆ m_type

std::string pandora::Process::m_type
protectedinherited

The process type.

Definition at line 88 of file Process.h.

◆ m_visualizeOverallRecoStatus

bool lar_content::MasterAlgorithm::m_visualizeOverallRecoStatus
protectedinherited

Whether to display results of current operations.

Definition at line 322 of file MasterAlgorithm.h.

◆ m_workerInstancesInitialized

bool lar_content::MasterAlgorithm::m_workerInstancesInitialized
protectedinherited

Whether all worker instances have been initialized.

Definition at line 310 of file MasterAlgorithm.h.


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