CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IsolatorByDepositCount.h
Go to the documentation of this file.
1 #ifndef MuonIsolation_IsolatorByDepositCount_H
2 #define MuonIsolation_IsolatorByDepositCount_H
3 
15 #include <vector>
16 
17 
18 namespace muonisolation {
20 public:
22 
24  virtual float coneSize( float eta, float pt) const = 0;
25  };
26 
28  IsolatorByDepositCount(float conesize, const std::vector<double>& thresh);
29  IsolatorByDepositCount(const ConeSizeFunction * conesize, const std::vector<double>& thresh);
30 
32 
34  virtual Result result(DepositContainer deposits) const;
35 
36 
37  void setConeSize(float conesize) { theConeSize = conesize; theConeSizeFunction = 0;}
38 
39  void setConeSize(ConeSizeFunction * conesize) { theConeSizeFunction = conesize; }
40 
41 
43  virtual float coneSize(float eta, float pT) const {
45  }
46 
47  virtual ResultType resultType() const { return ISOL_INT_TYPE;}
48 
49 
50 private:
52  float theConeSize;
53  std::vector<double> theDepThresholds;
54 };
55 }
56 
57 #endif
virtual Result result(DepositContainer deposits) const
Compute the deposit within the cone and return the isolation result.
virtual float coneSize(float eta, float pt) const =0
IsolatorByDepositCount(float conesize, const std::vector< double > &thresh)
construct with non-default thresholds per deposit
T eta() const
MuIsoBaseIsolator::DepositContainer DepositContainer
virtual float coneSize(float eta, float pT) const
Get the cone size.
void setConeSize(ConeSizeFunction *conesize)
std::vector< DepositAndVetos > DepositContainer