Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
CosmicRayVertexBuildingAlgorithm.h
Go to the documentation of this file.
1
8#ifndef LAR_COSMIC_RAY_VERTEX_BUILDING_ALGORITHM_H
9#define LAR_COSMIC_RAY_VERTEX_BUILDING_ALGORITHM_H 1
10
11#include "Pandora/Algorithm.h"
12
14
15namespace lar_content
16{
17
22{
23public:
28
29private:
32
38 void GetCosmicPfos(const pandora::PfoList *const pPfoList, pandora::PfoVector &pfoVector) const;
39
46 void BuildPointingClusterMap(const pandora::PfoVector &pfoVector, LArPointingClusterMap &pointingClusterMap) const;
47
54 void BuildCosmicRayParticles(const LArPointingClusterMap &pointingClusterMap, const pandora::PfoVector &pfoVector) const;
55
62 void BuildCosmicRayParent(const LArPointingClusterMap &pointingClusterMap, const pandora::ParticleFlowObject *const pPfo) const;
63
69 void BuildCosmicRayDaughter(const pandora::ParticleFlowObject *const pPfo) const;
70
78 void SetParticleParameters(const pandora::CartesianVector &vtxPosition, const pandora::CartesianVector &vtxDirection,
79 const pandora::ParticleFlowObject *const pPfo) const;
80
83 unsigned int m_halfWindowLayers;
84 std::string m_parentPfoListName;
85 std::string m_vertexListName;
87};
88
89} // namespace lar_content
90
91#endif // #ifndef LAR_COSMIC_RAY_VERTEX_BUILDING_ALGORITHM_H
Header file for the algorithm class.
Header file for the lar pointing cluster class.
bool m_useParentShowerVertex
use the parent pfo for the shower vertices
std::string m_vertexListName
The name of the output vertex list.
void BuildCosmicRayParticles(const LArPointingClusterMap &pointingClusterMap, const pandora::PfoVector &pfoVector) const
Reconstruct the vertex and direction of a list of cosmic-ray Pfos.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
float m_maxVertexDisplacementFromTrack
The maximum separation of a close vertex from the cosmic ray track.
unsigned int m_halfWindowLayers
number of layers to use for half-window of sliding fit
void SetParticleParameters(const pandora::CartesianVector &vtxPosition, const pandora::CartesianVector &vtxDirection, const pandora::ParticleFlowObject *const pPfo) const
Set the vertex and direction of the Pfos.
void GetCosmicPfos(const pandora::PfoList *const pPfoList, pandora::PfoVector &pfoVector) const
Get the list of input pfos to this algorithm.
void BuildCosmicRayDaughter(const pandora::ParticleFlowObject *const pPfo) const
Reconstruct the vertex and direction of a daughter cosmic-ray Pfo.
std::string m_parentPfoListName
The name of the input pfo list.
void BuildCosmicRayParent(const LArPointingClusterMap &pointingClusterMap, const pandora::ParticleFlowObject *const pPfo) const
Reconstruct the vertex and direction of a parent cosmic-ray Pfo.
void BuildPointingClusterMap(const pandora::PfoVector &pfoVector, LArPointingClusterMap &pointingClusterMap) const
Build a map of 3D sliding fits from the input Pfos.
Algorithm class. Algorithm addresses are held only by the algorithm manager. They have a fully define...
Definition Algorithm.h:21
CartesianVector class.
ParticleFlowObject class.
std::unordered_map< const pandora::Cluster *, LArPointingCluster > LArPointingClusterMap
std::vector< const ParticleFlowObject * > PfoVector
StatusCode
The StatusCode enum.
MANAGED_CONTAINER< const ParticleFlowObject * > PfoList