CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 namespace reco {
21  class EcalHaloData {
22  public:
23  //Constructor
24  EcalHaloData();
25  //Destructor
27 
28  // Number of Halo-like superclusters as a function of the roundness and angular cuts
29  //int NumberOfHaloSuperClusters(int iRoundness=2, int iAngle=2) const;
30  int NumberOfHaloSuperClusters(float roundness = 100., float angle = 4.0) const;
31 
32  // Return collection of 5-degree Phi Wedges built from Ecal RecHits
33  const std::vector<PhiWedge>& GetPhiWedges() const { return PhiWedgeCollection; }
34  std::vector<PhiWedge>& GetPhiWedges() { return PhiWedgeCollection; }
35 
36  // Get Reference to the SuperClusters
39 
40  // Store Shower Shape variables for SuperClusters
43 
46 
47  const std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEB() const { return thehaloclustercands_eb; }
48  std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEB() { return thehaloclustercands_eb; }
49  const std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEE() const { return thehaloclustercands_ee; }
50  std::vector<HaloClusterCandidateECAL>& getHaloClusterCandidatesEE() { return thehaloclustercands_ee; }
51 
52  void setHaloClusterCandidatesEB(const std::vector<HaloClusterCandidateECAL>& x) { thehaloclustercands_eb = x; }
53  void setHaloClusterCandidatesEE(const std::vector<HaloClusterCandidateECAL>& x) { thehaloclustercands_ee = x; }
54 
55  private:
56  std::vector<PhiWedge> PhiWedgeCollection;
58 
61 
62  std::vector<HaloClusterCandidateECAL> thehaloclustercands_eb;
63  std::vector<HaloClusterCandidateECAL> thehaloclustercands_ee;
64  };
65 } // namespace reco
66 
67 #endif
std::vector< HaloClusterCandidateECAL > thehaloclustercands_ee
Definition: EcalHaloData.h:63
edm::ValueMap< float > & GetShowerShapesRoundness()
Definition: EcalHaloData.h:41
edm::RefVector< reco::SuperClusterCollection > TheSuperClusterRefs
Definition: EcalHaloData.h:57
const std::vector< PhiWedge > & GetPhiWedges() const
Definition: EcalHaloData.h:33
edm::RefVector< reco::SuperClusterCollection > & GetSuperClusters()
Definition: EcalHaloData.h:37
edm::ValueMap< float > & GetShowerShapesAngle()
Definition: EcalHaloData.h:44
int NumberOfHaloSuperClusters(float roundness=100., float angle=4.0) const
Definition: EcalHaloData.cc:12
std::vector< PhiWedge > & GetPhiWedges()
Definition: EcalHaloData.h:34
std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEE()
Definition: EcalHaloData.h:50
const edm::ValueMap< float > & GetShowerShapesRoundness() const
Definition: EcalHaloData.h:42
const std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEB() const
Definition: EcalHaloData.h:47
void setHaloClusterCandidatesEE(const std::vector< HaloClusterCandidateECAL > &x)
Definition: EcalHaloData.h:53
void setHaloClusterCandidatesEB(const std::vector< HaloClusterCandidateECAL > &x)
Definition: EcalHaloData.h:52
edm::ValueMap< float > ShowerShapes_Angle
Definition: EcalHaloData.h:60
std::vector< HaloClusterCandidateECAL > thehaloclustercands_eb
Definition: EcalHaloData.h:62
edm::ValueMap< float > ShowerShapes_Roundness
Definition: EcalHaloData.h:59
std::vector< PhiWedge > PhiWedgeCollection
Definition: EcalHaloData.h:56
const edm::RefVector< reco::SuperClusterCollection > & GetSuperClusters() const
Definition: EcalHaloData.h:38
const edm::ValueMap< float > & GetShowerShapesAngle() const
Definition: EcalHaloData.h:45
const std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEE() const
Definition: EcalHaloData.h:49
std::vector< HaloClusterCandidateECAL > & getHaloClusterCandidatesEB()
Definition: EcalHaloData.h:48
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11