Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:44

0001 #ifndef RecoEcal_EgammaCoreTools_SuperClusterShapeAlgo_h
0002 #define RecoEcal_EgammaCoreTools_SuperClusterShapeAlgo_h
0003 
0004 /** \class ClusterShapeAlgo
0005  *  
0006  * calculates and creates a ClusterShape object 
0007  *
0008  * \author Michael A. Balazs, UVa
0009  * 
0010  *
0011  */
0012 
0013 #include <map>
0014 
0015 #include "FWCore/Framework/interface/ESHandle.h"
0016 
0017 #include "DataFormats/EgammaReco/interface/SuperCluster.h"
0018 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0019 #include "DataFormats/EcalRecHit/interface/EcalRecHit.h"
0020 #include "DataFormats/DetId/interface/DetId.h"
0021 #include "DataFormats/Math/interface/Point3D.h"
0022 #include "RecoEcal/EgammaCoreTools/interface/PositionCalc.h"
0023 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
0024 
0025 class CaloSubdetectorTopology;
0026 
0027 class SuperClusterShapeAlgo {
0028 public:
0029   SuperClusterShapeAlgo(const EcalRecHitCollection* hits, const CaloSubdetectorGeometry* geometry);
0030 
0031   void Calculate_Covariances(const reco::SuperCluster& passedCluster);
0032 
0033   double etaWidth() { return etaWidth_; }
0034   double phiWidth() { return phiWidth_; }
0035 
0036 private:
0037   const EcalRecHitCollection* recHits_;
0038   const CaloSubdetectorGeometry* geometry_;
0039 
0040   double etaWidth_, phiWidth_;
0041 };
0042 
0043 #endif