CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PFHcalSuperClusterAlgo.h
Go to the documentation of this file.
1 #ifndef RecoParticleFlow_PFClusterProducer_PFHcalSuperClusterAlgo_h
2 #define RecoParticleFlow_PFClusterProducer_PFHcalSuperClusterAlgo_h
3 
12 
13 #include <vector>
14 
15 #include <memory>
16 
18 
28 
29  public:
30 
33 
36 
38  void enableDebugging(bool debug) { debug_ = debug;}
39 
40 
44  {return clusters_; }
45 
48 
50  std::pair<double, double> calculateWidths(const reco::PFCluster& cluster);
51 
53  std::pair<double, double> calculatePosition(const reco::PFCluster& cluster);
54 
56  void doClustering( const PFClusterHandle& clustersHandle, const PFClusterHandle& clustersHOHandle );
57 
58  // set histogram file pointer
59 // void setHistos(TFile* file);
60 
61  // write histos
62  void write();
63 
65 
67 
69  std::auto_ptr< std::vector< reco::PFCluster > >& clusters()
70  {return pfClusters_;}
71 
73  std::auto_ptr< std::vector< reco::PFSuperCluster > >& superClusters()
74  {return pfSuperClusters_;}
75 
76 
77  friend std::ostream& operator<<(std::ostream& out,const PFHcalSuperClusterAlgo& algo);
78 
79 
80  private:
83 
85  std::auto_ptr< std::vector<reco::PFCluster> > pfClusters_;
86 
88  std::auto_ptr< std::vector<reco::PFSuperCluster> > pfSuperClusters_;
89 
94 
95 
97  bool debug_;
98 
100  static unsigned prodNum_;
101 
102 };
103 
104 #endif
bool debug_
debugging on/off
Particle flow cluster, see clustering algorithm in PFClusterAlgo.
Definition: PFCluster.h:43
std::auto_ptr< std::vector< reco::PFCluster > > & clusters()
setters ----------------------------------------------———
Particle flow cluster, see clustering algorithm in PFSuperClusterAlgo.
friend std::ostream & operator<<(std::ostream &out, const PFHcalSuperClusterAlgo &algo)
static unsigned prodNum_
product number
edm::PtrVector< reco::PFCluster > clusters_
std::auto_ptr< std::vector< reco::PFSuperCluster > > & superClusters()
edm::Ptr< reco::PFCluster > PFClusterPtr
virtual ~PFHcalSuperClusterAlgo()
destructor
edm::Handle< reco::PFClusterCollection > PFClusterHandle
void doClusteringWorker(const reco::PFClusterCollection &clusters, const reco::PFClusterCollection &clustersHO)
perform clustering
std::pair< double, double > calculateWidths(const reco::PFCluster &cluster)
calculate eta-phi widths of clusters
tuple out
Definition: dbtoconf.py:99
std::auto_ptr< std::vector< reco::PFCluster > > pfClusters_
particle flow clusters
#define debug
Definition: HDRShower.cc:19
void enableDebugging(bool debug)
enable/disable debugging
std::pair< double, double > calculatePosition(const reco::PFCluster &cluster)
recalculate eta-phi position of clusters
Algorithm for particle flow superclustering.
std::vector< PFCluster > PFClusterCollection
collection of PFCluster objects
Definition: PFClusterFwd.h:9
reco::PFSuperCluster SuperCluster_
const edm::PtrVector< reco::PFCluster > & clusters() const
void doClustering(const reco::PFClusterCollection &clusters, const reco::PFClusterCollection &clustersHO)
perform clustering
std::auto_ptr< std::vector< reco::PFSuperCluster > > pfSuperClusters_
particle flow superclusters