CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HGCalMultiCluster.h
Go to the documentation of this file.
1 #ifndef DataFormats_ParticleFlowReco_HGCalMultiCluster
2 #define DataFormats_ParticleFlowReco_HGCalMultiCluster
3 
4 #include <vector>
5 #include <limits>
6 
10 
11 namespace reco {
13  public:
16 
18 
19  HGCalMultiCluster(double energy, double x, double y, double z, ClusterCollection& thecls);
20 
21  void push_back(const edm::Ptr<reco::BasicCluster>& b) { myclusters.push_back(b); }
22 
24 
25  unsigned int size() const { return myclusters.size(); }
26  component_iterator begin() const { return myclusters.begin(); }
27  component_iterator end() const { return myclusters.end(); }
28 
29  bool operator>(const HGCalMultiCluster& rhs) const { return (energy() > rhs.energy()); }
30 
31  private:
33  };
34 
35  typedef std::vector<HGCalMultiCluster> HGCalMultiClusterCollection;
36 } // namespace reco
37 #endif
void setLayer(PFLayer::Layer layer)
set layer
Definition: PFCluster.cc:49
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
Definition: PFCluster.h:42
component_iterator begin() const
double z() const
z coordinate of cluster centroid
Definition: CaloCluster.h:178
unsigned int size() const
const edm::PtrVector< reco::BasicCluster > & clusters() const
void push_back(const edm::Ptr< reco::BasicCluster > &b)
edm::PtrVector< reco::BasicCluster > myclusters
double x() const
x coordinate of cluster centroid
Definition: CaloCluster.h:172
edm::PtrVector< reco::BasicCluster >::const_iterator component_iterator
double energy() const
cluster energy
Definition: PFCluster.h:74
component_iterator end() const
double b
Definition: hdecay.h:118
double y() const
y coordinate of cluster centroid
Definition: CaloCluster.h:175
edm::PtrVector< reco::BasicCluster > ClusterCollection
bool operator>(const HGCalMultiCluster &rhs) const
std::vector< HGCalMultiCluster > HGCalMultiClusterCollection