All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CustomParticleCreationAlgorithm.h
Go to the documentation of this file.
1 /**
2  * @file larpandoracontent/LArCustomParticles/CustomParticleCreationAlgorithm.h
3  *
4  * @brief Header file for the 3D particle creation algorithm class.
5  *
6  * $Log: $
7  */
8 #ifndef LAR_CUSTOM_PARTICLE_CREATION_ALGORITHM_H
9 #define LAR_CUSTOM_PARTICLE_CREATION_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
13 namespace lar_content
14 {
15 
16 /**
17  * @brief CustomParticleCreationAlgorithm class
18  */
19 class CustomParticleCreationAlgorithm : public pandora::Algorithm
20 {
21 protected:
22  virtual pandora::StatusCode Run();
23  virtual pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
24 
25  /**
26  * @brief Create specialised Pfo from an generic input Pfo
27  *
28  * @param pInputPfo the address of the input Pfo
29  * @param pOutputPfo the address of the output Pfo
30  */
31  virtual void CreatePfo(const pandora::ParticleFlowObject *const pInputPfo, const pandora::ParticleFlowObject *&pOutputPfo) const = 0;
32 
33 private:
34  std::string m_pfoListName; ///< The name of the input pfo list
35  std::string m_vertexListName; ///< The name of the input vertex list
36 };
37 
38 } // namespace lar_content
39 
40 #endif // #ifndef LAR_CUSTOM_PARTICLE_CREATION_ALGORITHM_H
virtual pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
std::string m_vertexListName
The name of the input vertex list.
std::string m_pfoListName
The name of the input pfo list.
virtual void CreatePfo(const pandora::ParticleFlowObject *const pInputPfo, const pandora::ParticleFlowObject *&pOutputPfo) const =0
Create specialised Pfo from an generic input Pfo.