ATLAS Offline Software
Loading...
Searching...
No Matches
IJetTileCorrectionTool.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef JETTILECORRECTION_IJETTILECORRECTIONTOOL_H
8#define JETTILECORRECTION_IJETTILECORRECTIONTOOL_H
9
10// Framework include(s):
12
13// EDM include(s):
14#include "xAODJet/Jet.h"
15
16// Local include(s):
18
19
20//eta-phi (parametrization) coordinates
21typedef std::pair<int,int> IPair;
22
23namespace JTC{
24
25 enum class PART : unsigned int {LB, EB};
26
27 enum class TS : unsigned int {GOOD,EDGE,CORE,UNKNOWN};
28
29 enum class TYPE : unsigned int {User, DB};
30
31 struct Hole{
32 double eta1;
33 double eta2;
34 double phi1;
35 double phi2;
36 std::pair<int,int> iov;
37 };
38
39 struct Region{
40
44 float cfactor;
47
48 Region(Hole h, IPair pair, PART p, float cf, TS st, TYPE t)
49 : hole(h),
50 ep(pair),
51 part(p),
52 cfactor(cf),
53 status(st),
54 type(t)
55 {}
56
57 bool operator < (const Region& r) const {
58 return (this->cfactor < r.cfactor);
59 }
60 bool operator > (const Region& r) const {
61 return (this->cfactor > r.cfactor);
62 }
63 };
64
65}
66
67namespace CP {
68
79
82
83 public:
86
88 virtual CorrectionCode correctedCopy( const xAOD::Jet& input,
89 xAOD::Jet*& output ) = 0;
90
91
92 //status helpers
93 virtual JTC::TS getTileStatus(const xAOD::Jet& jet) = 0;
94 virtual StatusCode addTileStatus(const xAOD::Jet& jet) = 0;
95
96 //DR helper
97 virtual void setRJET(float r) = 0; //Set Jet Radius.
98 //NOTE: Only for checking overlap! The correction is only derived for EMTopo R=0.4 jets at the moment.
99
100 }; // class IJetTileCorrectionTool
101
102} // namespace CP
103
104#endif // JETTILECORRECTION_IJETTILECORRECTIONTOOL_H
#define ASG_TOOL_INTERFACE(CLASSNAME)
std::pair< int, int > IPair
Header file for AthHistogramAlgorithm.
Return value from object correction CP tools.
Interface for the tool correcting for dead Tile modules.
virtual JTC::TS getTileStatus(const xAOD::Jet &jet)=0
virtual void setRJET(float r)=0
virtual CorrectionCode applyCorrection(xAOD::Jet &jet)=0
Declare the interface that the class provides.
virtual StatusCode addTileStatus(const xAOD::Jet &jet)=0
virtual CorrectionCode correctedCopy(const xAOD::Jet &input, xAOD::Jet *&output)=0
Create a corrected copy from a constant jet.
Interface for all CP tools supporting systematic variations.
STL class.
int r
Definition globals.cxx:22
Select isolated Photons, Electrons and Muons.
Jet_v1 Jet
Definition of the current "jet version".
std::pair< int, int > iov
Region(Hole h, IPair pair, PART p, float cf, TS st, TYPE t)
bool operator>(const Region &r) const
bool operator<(const Region &r) const