All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MCParticleMonitoringAlgorithm.h
Go to the documentation of this file.
1 /**
2  * @file larpandoracontent/LArMonitoring/MCParticleMonitoringAlgorithm.h
3  *
4  * @brief Header file for the mc particle monitoring algorithm.
5  *
6  * $Log: $
7  */
8 #ifndef LAR_MC_PARTICLE_MONITORING_ALGORITHM_H
9 #define LAR_MC_PARTICLE_MONITORING_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
14 
15 namespace lar_content
16 {
17 
18 /**
19  * @brief MCParticleMonitoringAlgorithm class
20  */
21 class MCParticleMonitoringAlgorithm : public pandora::Algorithm
22 {
23 public:
24  /**
25  * @brief Default constructor
26  */
28 
29 private:
30  pandora::StatusCode Run();
31  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
32 
33  /**
34  * @brief Extract details of each mc primary in a given mc contribution map
35  *
36  * @param mcContributionMap the mc contribution map
37  */
38  void PrintPrimaryMCParticles(const LArMCParticleHelper::MCContributionMap &mcContributionMap) const;
39 
40  /**
41  * @brief Print information for a given mc particle to screen
42  *
43  * @param pMCParticle the address of the mc particle
44  * @param mcToTrueHitListMap the mc to true hit list map
45  * @param depth the depth in the mc particle decay hierarchy
46  */
47  void PrintMCParticle(const pandora::MCParticle *const pMCParticle, const LArMCParticleHelper::MCContributionMap &mcToTrueHitListMap,
48  const int depth) const;
49 
50  std::string m_caloHitListName; ///< Name of input calo hit list
51  std::string m_mcParticleListName; ///< Name of input MC particle list
52 
53  bool m_useTrueNeutrinosOnly; ///< Whether to consider only mc particles that were neutrino induced
54  unsigned int m_minHitsForDisplay; ///< Min hits associated with mc particle to warrant display to terminal
55 };
56 
57 } // namespace lar_content
58 
59 #endif // LAR_MC_PARTICLE_MONITORING_ALGORITHM_H
std::unordered_map< const pandora::MCParticle *, pandora::CaloHitList > MCContributionMap
bool m_useTrueNeutrinosOnly
Whether to consider only mc particles that were neutrino induced.
unsigned int m_minHitsForDisplay
Min hits associated with mc particle to warrant display to terminal.
void PrintMCParticle(const pandora::MCParticle *const pMCParticle, const LArMCParticleHelper::MCContributionMap &mcToTrueHitListMap, const int depth) const
Print information for a given mc particle to screen.
Header file for the lar monte carlo particle helper helper class.
std::string m_caloHitListName
Name of input calo hit list.
void PrintPrimaryMCParticles(const LArMCParticleHelper::MCContributionMap &mcContributionMap) const
Extract details of each mc primary in a given mc contribution map.
std::string m_mcParticleListName
Name of input MC particle list.
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)