28 if(not offsetService.label().empty()) {
34 std::unique_ptr<reco::JetCorrectorImpl>
45 if ( level !=
"L1JPTOffset") {
46 throw cms::Exception(
"L1OffsetCorrector")<<
" correction level: "<<level<<
" is not L1JPTOffset";
67 offsetService_(offsetService),
81 <<
"Wrong interface correction(LorentzVector), event required!";
99 TLorentzVector JPTrawP4(rawcalojet->
px(),rawcalojet->
py(),rawcalojet->
pz(),rawcalojet->
energy());
101 values.setJPTrawP4(JPTrawP4);
102 values.setJPTrawOff(offset);
103 values.setJetE(fJet.
energy());
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
L1JPTOffsetCorrectorImplMaker(edm::ParameterSet const &, edm::ConsumesCollector)
Jets made from CaloTowers.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Base class for all types of Jets.
static void fillDescriptions(edm::ConfigurationDescriptions &iDescriptions)
reco::Particle::LorentzVector LorentzVector
double correction(const LorentzVector &fJet) const
get correction using Jet information only
const edm::RefToBase< reco::Jet > & getCaloJetRef() const
const reco::JetCorrector * offsetService_
virtual double correction(const LorentzVector &fJet) const override
get correction using Jet information only
virtual double energy() const
energy
void addDefault(ParameterSetDescription const &psetDescription)
std::shared_ptr< FactorizedJetCorrectorCalculator const > corrector_
L1JPTOffsetCorrectorImpl(std::shared_ptr< FactorizedJetCorrectorCalculator const > corrector, const reco::JetCorrector *offsetService)
Jets made from CaloJets corrected for ZSP and tracks.
ParameterDescriptionBase * add(U const &iLabel, T const &value)
std::unique_ptr< reco::JetCorrectorImpl > make(edm::Event const &, edm::EventSetup const &)
virtual double px() const
x coordinate of momentum vector
virtual double pz() const
z coordinate of momentum vector
edm::EDGetTokenT< reco::JetCorrector > offsetCorrectorToken_
static void addToDescription(edm::ParameterSetDescription &iDescription)
volatile std::atomic< bool > shutdown_flag false
std::shared_ptr< FactorizedJetCorrectorCalculator const > getCalculator(edm::EventSetup const &, std::function< void(std::string const &)> levelCheck)
virtual double py() const
y coordinate of momentum vector