CMS 3D CMS Logo

EcalHaloData.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_METRECO_ECALHALODATA_H
2 #define DATAFORMATS_METRECO_ECALHALODATA_H
3 /*
4  [class]: EcalHaloData
5  [authors]: R. Remington, The University of Florida
6  [description]: Container class to store beam halo data specific to the Ecal subdetector
7  [date]: October 15, 2009
8 */
10 #include <cmath>
19 
20 
21 namespace reco {
22  class EcalHaloData {
23  public:
24  //Constructor
25  EcalHaloData();
26  //Destructor
28 
29  // Number of Halo-like superclusters as a function of the roundness and angular cuts
30  //int NumberOfHaloSuperClusters(int iRoundness=2, int iAngle=2) const;
31  int NumberOfHaloSuperClusters(float roundness=100., float angle=4.0) const;
32 
33  // Return collection of 5-degree Phi Wedges built from Ecal RecHits
34  const std::vector<PhiWedge>& GetPhiWedges() const {return PhiWedgeCollection;}
35  std::vector<PhiWedge>& GetPhiWedges(){return PhiWedgeCollection;}
36 
37  // Get Reference to the SuperClusters
40 
41 
42  // Store Shower Shape variables for SuperClusters
45 
48 
49 
50  const std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEB() const {return thehaloclustercands_eb;}
51  std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEB(){return thehaloclustercands_eb;}
52  const std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEE() const {return thehaloclustercands_ee;}
53  std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEE(){return thehaloclustercands_ee;}
54 
55  void setHaloClusterCandidatesEB(const std::vector<HaloClusterCandidateECAL>& x) {thehaloclustercands_eb =x;}
56  void setHaloClusterCandidatesEE(const std::vector<HaloClusterCandidateECAL>& x) {thehaloclustercands_ee =x;}
57  private:
58  std::vector<PhiWedge> PhiWedgeCollection;
60 
63 
64  std::vector<HaloClusterCandidateECAL> thehaloclustercands_eb;
65  std::vector<HaloClusterCandidateECAL> thehaloclustercands_ee;
66 
67  };
68 }
69 
70 #endif
std::vector< HaloClusterCandidateECAL > thehaloclustercands_ee
Definition: EcalHaloData.h:65
edm::ValueMap< float > & GetShowerShapesRoundness()
Definition: EcalHaloData.h:43
edm::RefVector< reco::SuperClusterCollection > TheSuperClusterRefs
Definition: EcalHaloData.h:59
const std::vector< PhiWedge > & GetPhiWedges() const
Definition: EcalHaloData.h:34
edm::RefVector< reco::SuperClusterCollection > & GetSuperClusters()
Definition: EcalHaloData.h:38
edm::ValueMap< float > & GetShowerShapesAngle()
Definition: EcalHaloData.h:46
int NumberOfHaloSuperClusters(float roundness=100., float angle=4.0) const
Definition: EcalHaloData.cc:14
std::vector< PhiWedge > & GetPhiWedges()
Definition: EcalHaloData.h:35
std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEE()
Definition: EcalHaloData.h:53
const edm::ValueMap< float > & GetShowerShapesRoundness() const
Definition: EcalHaloData.h:44
const std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEB() const
Definition: EcalHaloData.h:50
void setHaloClusterCandidatesEE(const std::vector< HaloClusterCandidateECAL > &x)
Definition: EcalHaloData.h:56
void setHaloClusterCandidatesEB(const std::vector< HaloClusterCandidateECAL > &x)
Definition: EcalHaloData.h:55
edm::ValueMap< float > ShowerShapes_Angle
Definition: EcalHaloData.h:62
std::vector< HaloClusterCandidateECAL > thehaloclustercands_eb
Definition: EcalHaloData.h:64
edm::ValueMap< float > ShowerShapes_Roundness
Definition: EcalHaloData.h:61
std::vector< PhiWedge > PhiWedgeCollection
Definition: EcalHaloData.h:58
const edm::RefVector< reco::SuperClusterCollection > & GetSuperClusters() const
Definition: EcalHaloData.h:39
fixed size matrix
const edm::ValueMap< float > & GetShowerShapesAngle() const
Definition: EcalHaloData.h:47
const std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEE() const
Definition: EcalHaloData.h:52
std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEB()
Definition: EcalHaloData.h:51
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11