ATLAS Offline Software
Loading...
Searching...
No Matches
getIsolationDecorator.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5// Local include(s):
7
8// System include(s):
9#include <iostream>
10
12#define DEFINE_DECORATOR(TYPE) \
13 case xAOD::Iso::TYPE: \
14{ \
15 static const SG::AuxElement::Decorator< float > a( #TYPE); \
16 return &a; \
17} \
18break;
19
20
21namespace xAOD {
22
25 switch( type ) {
26 //EtCone variables
27 DEFINE_DECORATOR( etcone20 );
28 DEFINE_DECORATOR( etcone30 );
29 DEFINE_DECORATOR( etcone40 );
30 //PtCone variables
31 DEFINE_DECORATOR( ptcone20 );
32 DEFINE_DECORATOR( ptcone30 );
33 DEFINE_DECORATOR( ptcone40 );
34 DEFINE_DECORATOR( ptcone50 );
35 // TopoEtcone variables:
36 DEFINE_DECORATOR( topoetcone20 );
37 DEFINE_DECORATOR( topoetcone30 );
38 DEFINE_DECORATOR( topoetcone40 );
39 // Mini-Isolation (http://arxiv.org/abs/1007.2221) variables:
40 DEFINE_DECORATOR(ptvarcone20);
41 DEFINE_DECORATOR(ptvarcone30);
42 DEFINE_DECORATOR(ptvarcone40);
43 // Ptcone variables for high mu:
44 DEFINE_DECORATOR(ptcone20_Nonprompt_All_MaxWeightTTVA_pt500);
45 DEFINE_DECORATOR(ptcone30_Nonprompt_All_MaxWeightTTVA_pt500);
46 DEFINE_DECORATOR(ptcone40_Nonprompt_All_MaxWeightTTVA_pt500);
47 DEFINE_DECORATOR(ptcone20_Nonprompt_All_MaxWeightTTVA_pt1000);
48 DEFINE_DECORATOR(ptcone30_Nonprompt_All_MaxWeightTTVA_pt1000);
49 DEFINE_DECORATOR(ptcone40_Nonprompt_All_MaxWeightTTVA_pt1000);
50 DEFINE_DECORATOR(ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
51 DEFINE_DECORATOR(ptcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
52 DEFINE_DECORATOR(ptcone40_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
53 DEFINE_DECORATOR(ptcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
54 DEFINE_DECORATOR(ptcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
55 DEFINE_DECORATOR(ptcone40_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
56 // Mini-Isolation (http://arxiv.org/abs/1007.2221) variables for high mu:
57 DEFINE_DECORATOR(ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt500);
58 DEFINE_DECORATOR(ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt500);
59 DEFINE_DECORATOR(ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt500);
60 DEFINE_DECORATOR(ptvarcone20_Nonprompt_All_MaxWeightTTVA_pt1000);
61 DEFINE_DECORATOR(ptvarcone30_Nonprompt_All_MaxWeightTTVA_pt1000);
62 DEFINE_DECORATOR(ptvarcone40_Nonprompt_All_MaxWeightTTVA_pt1000);
63 DEFINE_DECORATOR(ptvarcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
64 DEFINE_DECORATOR(ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
65 DEFINE_DECORATOR(ptvarcone40_Nonprompt_All_MaxWeightTTVALooseCone_pt500);
66 DEFINE_DECORATOR(ptvarcone20_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
67 DEFINE_DECORATOR(ptvarcone30_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
68 DEFINE_DECORATOR(ptvarcone40_Nonprompt_All_MaxWeightTTVALooseCone_pt1000);
69 // neutral eflow
70 DEFINE_DECORATOR(neflowisol20);
71 DEFINE_DECORATOR(neflowisol30);
72 DEFINE_DECORATOR(neflowisol40);
73 default:
74 std::cerr << "xAOD::Primitives ERROR Unknown float IsolationType ("
75 << type << ") requested" << std::endl;
76 return nullptr;
77 }
78 }
79}// namespace xAOD
SG::Decorator< T, ALLOC > Decorator
Definition AuxElement.h:575
#define DEFINE_DECORATOR(TYPE)
Helper macro for Accessor objects.
IsolationType
Overall enumeration for isolation types in xAOD files.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
const SG::AuxElement::Decorator< float > * getIsolationDecorator(Iso::IsolationType type)
Get the Decorator object for a given isolation type.