ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/interface/FillerSuperClusters.h
Revision: 1.13
Committed: Mon Jul 1 20:18:00 2013 UTC (11 years, 10 months ago) by paus
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_032, Mit_031, HEAD
Changes since 1.12: +9 -1 lines
Error occurred while calculating annotation data.
Log Message:
Mono adjustments: Halo tag, ECAL timing, Cosmic muons.

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: FillerSuperClusters.h,v 1.12 2013/05/15 14:00:29 ksung Exp $
3 //
4 // FillerSuperClusters
5 //
6 // Implementation of a filler to fill EDM super clusters into our mithep::SuperCluster data
7 // structure.
8 //
9 // Authors: C.Paus, J.Bendavid, S.Xie
10 //--------------------------------------------------------------------------------------------------
11
12 #ifndef MITPROD_TREEFILLER_FILLERSUPERCLUSTERS_H
13 #define MITPROD_TREEFILLER_FILLERSUPERCLUSTERS_H
14
15 #include "MitAna/DataTree/interface/SuperClusterCol.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
28 {
29 public:
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_; }
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 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