CMS 3D CMS Logo

Mustache.h
Go to the documentation of this file.
1 #ifndef RecoEcal_EgammaCoreTools_Mustache_h
2 #define RecoEcal_EgammaCoreTools_Mustache_h
3 
4 #include <vector>
8 
9 namespace reco {
10  namespace MustacheKernel {
11  bool inMustache(
12  const float maxEta, const float maxPhi, const float ClustE, const float ClusEta, const float ClusPhi);
14  const float seedEta, const float seedPhi, const float ClustE, const float ClusEta, const float clusPhi);
15 
16  } // namespace MustacheKernel
17 
18  class Mustache {
19  public:
20  void MustacheID(const CaloClusterPtrVector& clusters, int& nclusters, float& EoutsideMustache);
21  void MustacheID(const std::vector<const CaloCluster*>&, int& nclusers, float& EoutsideMustache);
22  void MustacheID(const reco::SuperCluster& sc, int& nclusters, float& EoutsideMustache);
23 
24  void MustacheClust(const std::vector<CaloCluster>& clusters,
25  std::vector<unsigned int>& insideMust,
26  std::vector<unsigned int>& outsideMust);
27 
28  void FillMustacheVar(const std::vector<CaloCluster>& clusters);
29  //return Functions for Mustache Variables:
30  float MustacheE() { return Energy_In_Mustache_; }
32  float MustacheEtOut() { return Et_Outside_Mustache_; }
34  int InsideMust() { return included_; }
35  int OutsideMust() { return excluded_; }
36 
37  private:
38  template <class RandomAccessPtrIterator>
39  void MustacheID(const RandomAccessPtrIterator&,
40  const RandomAccessPtrIterator&,
41  int& nclusters,
42  float& EoutsideMustache);
43 
48  int excluded_;
49  int included_;
50  };
51 
52 } // namespace reco
53 
54 #endif
reco::Mustache::Et_Outside_Mustache_
float Et_Outside_Mustache_
Definition: Mustache.h:46
reco::SuperCluster
Definition: SuperCluster.h:18
reco::Mustache::InsideMust
int InsideMust()
Definition: Mustache.h:34
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
reco::Mustache::Energy_Outside_Mustache_
float Energy_Outside_Mustache_
Definition: Mustache.h:45
reco::Mustache
Definition: Mustache.h:18
reco::Mustache::MustacheE
float MustacheE()
Definition: Mustache.h:30
HLT_2018_cff.maxPhi
maxPhi
Definition: HLT_2018_cff.py:51498
edm::PtrVector< CaloCluster >
reco::Mustache::FillMustacheVar
void FillMustacheVar(const std::vector< CaloCluster > &clusters)
Definition: Mustache.cc:231
maxEta
double maxEta
Definition: PFJetBenchmarkAnalyzer.cc:76
reco::Mustache::excluded_
int excluded_
Definition: Mustache.h:48
CaloClusterFwd.h
reco::MustacheKernel::inDynamicDPhiWindow
bool inDynamicDPhiWindow(const float seedEta, const float seedPhi, const float ClustE, const float ClusEta, const float clusPhi)
Definition: Mustache.cc:68
reco::Mustache::MustacheClust
void MustacheClust(const std::vector< CaloCluster > &clusters, std::vector< unsigned int > &insideMust, std::vector< unsigned int > &outsideMust)
Definition: Mustache.cc:196
bsc_activity_cfg.clusters
clusters
Definition: bsc_activity_cfg.py:36
reco::Mustache::Energy_In_Mustache_
float Energy_In_Mustache_
Definition: Mustache.h:44
reco::Mustache::MustacheEOut
float MustacheEOut()
Definition: Mustache.h:31
reco::Mustache::MustacheID
void MustacheID(const CaloClusterPtrVector &clusters, int &nclusters, float &EoutsideMustache)
Definition: Mustache.cc:148
reco::Mustache::OutsideMust
int OutsideMust()
Definition: Mustache.h:35
SuperCluster.h
reco::Mustache::LowestClusterEInMustache_
float LowestClusterEInMustache_
Definition: Mustache.h:47
reco::Mustache::MustacheEtOut
float MustacheEtOut()
Definition: Mustache.h:32
reco::Mustache::LowestMustClust
float LowestMustClust()
Definition: Mustache.h:33
reco::MustacheKernel::inMustache
bool inMustache(const float maxEta, const float maxPhi, const float ClustE, const float ClusEta, const float ClusPhi)
Definition: Mustache.cc:9
reco::Mustache::included_
int included_
Definition: Mustache.h:49
CaloCluster.h