File indexing completed on 2024-04-06 12:26:40
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #ifndef METProducers_SignCaloMETAlgo_h
0019 #define METProducers_SignCaloMETAlgo_h
0020
0021
0022 #include "DataFormats/METReco/interface/MET.h"
0023 #include "DataFormats/METReco/interface/CommonMETData.h"
0024 #include "DataFormats/Common/interface/Handle.h"
0025 #include "DataFormats/Common/interface/View.h"
0026 #include "DataFormats/Candidate/interface/Candidate.h"
0027 #include "DataFormats/METReco/interface/SigInputObj.h"
0028
0029 namespace metsig {
0030 class SignAlgoResolutions;
0031 }
0032
0033
0034 class SignCaloSpecificAlgo {
0035 public:
0036 SignCaloSpecificAlgo();
0037 ~SignCaloSpecificAlgo();
0038
0039 void usePreviousSignif(const std::vector<double>& values);
0040 void usePreviousSignif(const reco::METCovMatrix& matrix) { matrix_ = matrix; }
0041 double getSignificance() { return significance_; }
0042 reco::METCovMatrix getSignificanceMatrix() const { return matrix_; }
0043
0044 void calculateBaseCaloMET(edm::Handle<edm::View<reco::Candidate> > towers,
0045 const CommonMETData& met,
0046 const metsig::SignAlgoResolutions& resolutions,
0047 bool noHF,
0048 double globalthreshold);
0049
0050 private:
0051 std::vector<metsig::SigInputObj> makeVectorOutOfCaloTowers(edm::Handle<edm::View<reco::Candidate> > towers,
0052 const metsig::SignAlgoResolutions& resolutions,
0053 bool noHF,
0054 double globalthreshold);
0055
0056 double significance_;
0057 reco::METCovMatrix matrix_;
0058 };
0059
0060
0061 #endif