CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
QGTagger.h
Go to the documentation of this file.
1 #ifndef JetProducers_QGTagger_h
2 #define JetProducers_QGTagger_h
3 #include <tuple>
4 
7 
10 
13 
14 class QGTagger : public edm::EDProducer{
15  public:
16  explicit QGTagger(const edm::ParameterSet&);
17  ~QGTagger(){ delete qgLikelihood;};
18  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
19 
20  private:
21  virtual void produce(edm::Event&, const edm::EventSetup&);
22  std::tuple<int, float, float> calcVariables(const reco::Jet*, edm::Handle<reco::VertexCollection>&);
23  template <typename T> void putInEvent(std::string, const edm::Handle<edm::View<reco::Jet>>&, std::vector<T>*, edm::Event&);
24  bool isPackedCandidate(const reco::Candidate* candidate);
25 
34 };
35 
36 #endif
Base class for all types of Jets.
Definition: Jet.h:20
edm::EDGetTokenT< reco::VertexCollection > vertexToken
Definition: QGTagger.h:28
const bool useJetCorr
Definition: QGTagger.h:31
virtual void produce(edm::Event &, const edm::EventSetup &)
Produce qgLikelihood using {mult, ptD, -log(axis2)}.
Definition: QGTagger.cc:55
QGLikelihoodCalculator * qgLikelihood
Definition: QGTagger.h:33
~QGTagger()
Definition: QGTagger.h:17
std::string systLabel
Definition: QGTagger.h:30
QGTagger(const edm::ParameterSet &)
Definition: QGTagger.cc:29
const bool produceSyst
Definition: QGTagger.h:31
bool isPackedCandidate(const reco::Candidate *candidate)
Function to tell us if we are using packedCandidates, only test for first candidate.
Definition: QGTagger.cc:123
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Descriptions method.
Definition: QGTagger.cc:214
std::tuple< int, float, float > calcVariables(const reco::Jet *, edm::Handle< reco::VertexCollection > &)
Calculation of axis2, mult and ptD.
Definition: QGTagger.cc:135
edm::EDGetTokenT< edm::View< reco::Jet > > jetsToken
Definition: QGTagger.h:26
std::string jetsLabel
Definition: QGTagger.h:30
edm::EDGetTokenT< double > rhoToken
Definition: QGTagger.h:29
bool weAreUsingPackedCandidates
Definition: QGTagger.h:32
void putInEvent(std::string, const edm::Handle< edm::View< reco::Jet >> &, std::vector< T > *, edm::Event &)
Function to put product into event.
Definition: QGTagger.cc:112
bool weStillNeedToCheckJetCandidates
Definition: QGTagger.h:32
edm::EDGetTokenT< reco::JetCorrector > jetCorrectorToken
Definition: QGTagger.h:27
const bool useQC
Definition: QGTagger.h:31