3 |
|
// |
4 |
|
// FillerSuperClusters |
5 |
|
// |
6 |
< |
// Implementation of a filler to fill EDM super clusters into our mithep::SuperCluster |
7 |
< |
// data structure. |
6 |
> |
// Implementation of a filler to fill EDM super clusters into our mithep::SuperCluster data |
7 |
> |
// structure. |
8 |
|
// |
9 |
< |
// Authors: S.Xie |
9 |
> |
// Authors: C.Paus, J.Bendavid, S.Xie |
10 |
|
//-------------------------------------------------------------------------------------------------- |
11 |
|
|
12 |
|
#ifndef MITPROD_TREEFILLER_FILLERSUPERCLUSTERS_H |
16 |
|
#include "MitProd/TreeFiller/interface/AssociationMaps.h" |
17 |
|
#include "MitProd/TreeFiller/interface/BaseFiller.h" |
18 |
|
|
19 |
+ |
#include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h" |
20 |
+ |
|
21 |
+ |
class CaloGeometry; |
22 |
+ |
class CaloSubdetectorTopology; |
23 |
+ |
class EcalRecHit; |
24 |
+ |
|
25 |
|
namespace mithep |
26 |
|
{ |
27 |
|
class FillerSuperClusters : public BaseFiller |
30 |
|
FillerSuperClusters(const edm::ParameterSet &cfg, const char *name, bool active=1); |
31 |
|
~FillerSuperClusters(); |
32 |
|
|
33 |
< |
void BookDataBlock(TreeWriter &tws); |
34 |
< |
void FillDataBlock(const edm::Event &e, const edm::EventSetup &es); |
35 |
< |
const mithep::SuperClusterMap *GetSuperClusterMap() const { return superClusterMap_; } |
33 |
> |
void BookDataBlock(TreeWriter &tws); |
34 |
> |
void FillDataBlock(const edm::Event &e, const edm::EventSetup &es); |
35 |
> |
const mithep::SuperClusterMap *GetSuperClusterMap() const { return superClusterMap_; } |
36 |
> |
|
37 |
> |
protected: |
38 |
> |
std::vector<float> getESHits(double X, double Y, double Z, |
39 |
> |
std::map<DetId, EcalRecHit> rechits_map, |
40 |
> |
const CaloGeometry& geometry, |
41 |
> |
CaloSubdetectorTopology *topology_p, int row); |
42 |
> |
std::vector<float> getESShape(std::vector<float> ESHits0); |
43 |
> |
void SCTimeSpanCalculator(const reco::SuperCluster* scl, |
44 |
> |
double xtalEnergyThr, double seedTime, |
45 |
> |
double& SCLeadTimeSpan, |
46 |
> |
double& SCSubLeadTimeSpan, |
47 |
> |
const EcalRecHitCollection* ebRecHitCol, |
48 |
> |
const EcalRecHitCollection* eeRecHitCol); |
49 |
|
|
50 |
|
private: |
51 |
< |
std::string edmName_; //edm name of collection |
52 |
< |
std::string mitName_; //mit name of collection |
53 |
< |
std::string basicClusterMapName_; //name of imp. map wrt basic clus |
54 |
< |
std::string superClusterMapName_; //name of exported map |
55 |
< |
std::string superClusterIdMapName_; //name of exported id map |
56 |
< |
std::string caloTowerName_; //name of calotower collection |
57 |
< |
const mithep::BasicClusterMap *basicClusterMap_; //map wrt basic clusters |
58 |
< |
mithep::SuperClusterArr *superClusters_; //array of super clusters |
59 |
< |
mithep::SuperClusterMap *superClusterMap_; //map wrt super clusters |
60 |
< |
mithep::SuperClusterIdMap *superClusterIdMap_; //map of DetIds to superclusters |
51 |
> |
std::string edmName_; //edm name of collection |
52 |
> |
std::string mitName_; //mit name of collection |
53 |
> |
std::string basicClusterMapName_; //name of imp. map wrt basic clus |
54 |
> |
std::string psClusterMapName_; //name of imp. map wrt ps clus |
55 |
> |
std::string psXClusterMapName_; //name of imp. map wrt ps x clus |
56 |
> |
std::string psYClusterMapName_; //name of imp. map wrt ps y clus |
57 |
> |
std::string caloTowerDetIdMapName_; //name of imp. map wrt caloTowerDetId |
58 |
> |
std::string superClusterMapName_; //name of exported map |
59 |
> |
std::string superClusterIdMapName_; //name of exported id map |
60 |
> |
std::string caloTowerName_; //name of calotower collection |
61 |
> |
const mithep::BasicClusterMap *basicClusterMap_; //map wrt basic clusters |
62 |
> |
const mithep::PsClusterMap *psClusterMap_; //map wrt preshower clusters |
63 |
> |
const mithep::PsClusterMap *psXClusterMap_; //map wrt preshower x clusters |
64 |
> |
const mithep::PsClusterMap *psYClusterMap_; //map wrt preshower y clusters |
65 |
> |
const mithep::CaloTowerDetIdMap *caloTowerDetIdMap_; //map wrt calo tower det id's |
66 |
> |
mithep::SuperClusterArr *superClusters_; //array of super clusters |
67 |
> |
mithep::SuperClusterMap *superClusterMap_; //map wrt super clusters |
68 |
> |
mithep::SuperClusterIdMap *superClusterIdMap_; //map of DetIds to superclusters |
69 |
|
}; |
70 |
|
} |
71 |
|
#endif |