APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
CaloHit.h
Go to the documentation of this file.
1 /*
3  *
4  * CaloHit.h header template automatically generated by a class generator
5  * Creation date : lun. mars 30 2015
6  *
7  * This file is part of APRILContent libraries.
8  *
9  * APRILContent is free software: you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation, either version 3 of the License, or
12  * (at your option) any later version.
13  * based upon these libraries are permitted. Any copy of these libraries
14  * must include this copyright notice.
15  *
16  * APRILContent is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License
22  * along with APRILContent. If not, see <http://www.gnu.org/licenses/>.
23  *
24  * @author Remi Ete
25  * @copyright CNRS , IPNL
26  */
27 
28 
29 #ifndef CALOHIT_H
30 #define CALOHIT_H
31 
32 #include "Objects/CaloHit.h"
33 
34 #include "Api/PandoraApi.h"
35 #include "Api/PandoraContentApi.h"
36 
37 
40 
42 
43 namespace april_content
44 {
45 
46 class Connector;
47 class CaloHitFactory;
48 
52 class CaloHit : public pandora::CaloHit
53 {
54 public:
58  float GetSurroundingEnergy() const;
59 
63  float GetDensity() const;
64 
65  const pandora::Cluster* GetMother() const;
66  void SetMother(const pandora::Cluster* cluster);
67 
68 private:
72  CaloHit(const PandoraApi::CaloHit::Parameters &parameters);
73 
77  CaloHit(const PandoraContentApi::CaloHitFragment::Parameters &parameters);
78 
82  ~CaloHit();
83 
87  void ClearTagMap();
88 
96  pandora::StatusCode SaveReclusterMetaData(const std::string &clusterListName);
97 
105  pandora::StatusCode EndReclustering(const std::string &selectedClusterListName);
106 
107 protected:
108 
109  typedef std::map<const std::string, CaloHitMetaData *> ReclusterMetaDataMap;
110 
111  // april related meta data
112  CaloHitMetaData *m_pCaloHitMetaData;
113 
114  // re-clustering meta data
115  ReclusterMetaDataMap m_reclusterMetaDataMap;
116 
117  float m_surroundingEnergy;
118  float m_density;
119  HitTagMap m_hitTagMap;
120 
121  const pandora::Cluster* m_motherCluster;
122 
123  friend class CaloHitFactory;
124  friend class ::APRILContentApi;
125 };
126 
127 }
128 
129 #endif // CALOHIT_H
CaloHit(const PandoraApi::CaloHit::Parameters &parameters)
Constructor with pandora calo hit parameters.
Definition: CaloHit.cc:34
CaloHit class.
Definition: CaloHit.h:52
pandora::StatusCode SaveReclusterMetaData(const std::string &clusterListName)
Save the recluster meta data. Called during the reclustering process to back up the current calo hit ...
Definition: CaloHit.cc:109
void ClearTagMap()
Clear the tag map.
Definition: CaloHit.cc:102
CaloHitFactory class.
Definition: ObjectFactories.h:46
CaloHitMetaData class.
Definition: APRILMetaData.h:44
~CaloHit()
Destructor.
Definition: CaloHit.cc:66
float GetDensity() const
Get the hit density.
Definition: CaloHit.cc:81
pandora::StatusCode EndReclustering(const std::string &selectedClusterListName)
End the reclustering process for this calo hit. Reload the calo hit meta data corresponding to the se...
Definition: CaloHit.cc:125
float GetSurroundingEnergy() const
Get the surrounding hit energy.
Definition: CaloHit.cc:74