-
Notifications
You must be signed in to change notification settings - Fork 4.2k
/
L1GctConfigProducers.h
86 lines (66 loc) · 2.06 KB
/
L1GctConfigProducers.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#ifndef L1GCTCONFIGPRODUCERS_H_
#define L1GCTCONFIGPRODUCERS_H_
// -*- C++ -*-
//
// Package: GctConfigProducers
// Class: L1GctConfigProducers
//
/**\class L1GctConfigProducers L1GctConfigProducers.h L1Trigger/L1GctConfigProducers/interface/L1GctConfigProducers.h
Description: <one line class summary>
Implementation:
<Notes on implementation>
*/
//
// Original Author: Gregory Heath
// Created: Thu Mar 1 15:10:47 CET 2007
//
//
// system include files
#include <memory>
#include <vector>
// user include files
#include "FWCore/Framework/interface/Frameworkfwd.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Framework/interface/ModuleFactory.h"
#include "FWCore/Framework/interface/ESProducer.h"
#include "FWCore/Framework/interface/ESHandle.h"
class L1CaloGeometry;
class L1GctJetFinderParams;
class L1GctChannelMask;
class L1GctJetFinderParamsRcd;
class L1GctChannelMaskRcd;
class L1CaloGeometryRecord;
//
// class declaration
//
class L1GctConfigProducers : public edm::ESProducer {
public:
L1GctConfigProducers(const edm::ParameterSet&);
~L1GctConfigProducers() override;
using JfParamsReturnType = std::unique_ptr<L1GctJetFinderParams>;
using ChanMaskReturnType = std::unique_ptr<L1GctChannelMask>;
JfParamsReturnType produceJfParams(const L1GctJetFinderParamsRcd&);
ChanMaskReturnType produceChanMask(const L1GctChannelMaskRcd&);
std::vector<double> etToEnergyConversion(const L1CaloGeometry* geom) const;
private:
// ----------member data ---------------------------
double m_rgnEtLsb;
double m_htLsb;
double m_CenJetSeed;
double m_FwdJetSeed;
double m_TauJetSeed;
double m_tauIsoThresh;
double m_htJetThresh;
double m_mhtJetThresh;
unsigned m_EtaBoundry;
unsigned m_corrFunType;
bool m_convertToEnergy;
std::vector<std::vector<double> > m_jetCalibFunc;
std::vector<std::vector<double> > m_tauCalibFunc;
edm::ESGetToken<L1CaloGeometry, L1CaloGeometryRecord> m_caloGeomToken;
unsigned m_metEtaMask;
unsigned m_tetEtaMask;
unsigned m_mhtEtaMask;
unsigned m_thtEtaMask;
};
#endif