LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
NeutrinoEventValidationAlgorithm.h
Go to the documentation of this file.
1 
8 #ifndef LAR_NEUTRINO_EVENT_VALIDATION_ALGORITHM_H
9 #define LAR_NEUTRINO_EVENT_VALIDATION_ALGORITHM_H 1
10 
11 #include "Pandora/Algorithm.h"
12 
14 
16 
17 #ifdef MONITORING
18 #include "PandoraMonitoringApi.h"
19 #endif
20 
21 #include <map>
22 
23 namespace lar_content
24 {
25 
30 {
31 public:
36 
41 
42 private:
51  void FillValidationInfo(const pandora::MCParticleList *const pMCParticleList, const pandora::CaloHitList *const pCaloHitList,
52  const pandora::PfoList *const pPfoList, ValidationInfo &validationInfo) const;
53 
54  typedef std::unordered_map<const pandora::ParticleFlowObject *, unsigned int> PfoToIdMap;
55 
64  void ProcessOutput(const ValidationInfo &validationInfo, const bool useInterpretedMatching, const bool printToScreen, const bool fillTree) const;
65 
66  pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle);
67 
68  typedef std::vector<pandora::HitType> HitTypeVector;
69 
71 };
72 
73 } // namespace lar_content
74 
75 #endif // LAR_NEUTRINO_EVENT_VALIDATION_ALGORITHM_H
void FillValidationInfo(const pandora::MCParticleList *const pMCParticleList, const pandora::CaloHitList *const pCaloHitList, const pandora::PfoList *const pPfoList, ValidationInfo &validationInfo) const
Fill the validation info containers.
bool m_useTrueNeutrinosOnly
Whether to consider only mc particles that were neutrino induced.
Header file for the event validation algorithm.
Header file for the lar monte carlo particle helper helper class.
std::unordered_map< const pandora::ParticleFlowObject *, unsigned int > PfoToIdMap
void ProcessOutput(const ValidationInfo &validationInfo, const bool useInterpretedMatching, const bool printToScreen, const bool fillTree) const
Print matching information in a provided validation info object, and write information to tree if con...
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)