ATLAS Offline Software
EmTauRoI_v1.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 // System include(s):
7 #include <stdexcept>
8 
9 // xAOD include(s):
11 
12 // Local include(s):
14 
15 namespace xAOD {
16 
18  : SG::AuxElement() {
19 
20  }
21 
22  void EmTauRoI_v1::initialize( uint32_t roiword, float eta, float phi ) {
23 
24  setRoIWord( roiword );
25  setEta( eta );
26  setPhi( phi );
27 
28  return;
29  }
30 
38 
39  const uint32_t roi = roiWord();
40  if( ( roi & 0xc0000000 ) == 0 ) {
41  return CPRoIWord;
42  } else if( ( roi & 0xf0000000 ) == 0xa0000000 ) {
43  return EMRoIWord;
44  } else if( ( roi & 0xf0000000 ) == 0xb0000000 ) {
45  return TauRoIWord;
46  }
47 
48  throw std::runtime_error( "xAOD::EmTauRoI_v1::roiType() "
49  "Unknown RoI word type found" );
50  return static_cast< RoIType >( -1 );
51  }
52 
56  setRoIWord )
57 
58 
62 
63  return ( roiWord() & 0xffff );
64  }
65 
66  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, core, setCore )
67  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, emClus, setEmClus )
68  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, tauClus,
69  setTauClus )
70  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, emIsol, setEmIsol )
71  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, hadIsol,
72  setHadIsol )
73  AUXSTORE_PRIMITIVE_SETTER_AND_GETTER( EmTauRoI_v1, float, hadCore,
74  setHadCore )
75 
76 
78  names( "thrNames" );
81  values( "thrValues" );
82 
86  void EmTauRoI_v1::addThreshold( const std::string& name, float value ) {
87 
88  names( *this ).push_back( name );
89  values( *this ).push_back( value );
90 
91  return;
92  }
93 
98 
99  names( *this ).clear();
100  values( *this ).clear();
101 
102  return;
103  }
104 
105  AUXSTORE_OBJECT_GETTER( EmTauRoI_v1, std::vector< std::string >, thrNames )
106  AUXSTORE_OBJECT_GETTER( EmTauRoI_v1, std::vector< float >, thrValues )
107 
108 } // namespace xAOD
xAOD::EmTauRoI_v1::CPRoIWord
@ CPRoIWord
This is a Run 1 EM/Tau RoI word.
Definition: EmTauRoI_v1.h:46
xAOD::AUXSTORE_PRIMITIVE_SETTER_AND_GETTER
AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1, float, IP2D_pb, setIP2D_pb) AUXSTORE_PRIMITIVE_SETTER_AND_GETTER(BTagging_v1
xAOD::EmTauRoI_v1::EMRoIWord
@ EMRoIWord
This is a Run 2 EM RoI word.
Definition: EmTauRoI_v1.h:47
xAOD::name
name
Definition: TriggerMenuJson_v1.cxx:29
xAOD::hadIsol
setThrPattern hadIsol
Definition: EmTauRoI_v2.cxx:68
xAOD::EmTauRoI_v1::eta
float eta() const
The pseudorapidity ( ) of the em/tau candidate.
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
xAOD::EmTauRoI_v1::setRoIWord
void setRoIWord(uint32_t value)
Set the "raw" RoI word, describing the em/tau candidate.
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
AuxStoreAccessorMacros.h
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
xAOD::EmTauRoI_v1::setPhi
void setPhi(float v)
Set the azimuthal angle of the em/tau candidate.
athena.value
value
Definition: athena.py:124
xAOD::EmTauRoI_v1::phi
float phi() const
The azimuthal angle ( ) of the em/tau candidate.
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::EmTauRoI_v1::addThreshold
void addThreshold(const std::string &name, float value)
Add a new threshold that was passed by the RoI.
Definition: EmTauRoI_v1.cxx:86
EmTauRoI_v1.h
xAOD::EmTauRoI_v1::initialize
void initialize(uint32_t roiword, float eta, float phi)
Initialise the object with its most important properties.
Definition: EmTauRoI_v1.cxx:22
xAOD::EmTauRoI_v1::clearThresholds
void clearThresholds()
Remove all the passed thresholds from the RoI.
Definition: EmTauRoI_v1.cxx:97
Amg::setPhi
Amg::RotationMatrix3D setPhi(Amg::RotationMatrix3D mat, double angle, int convention=0)
Definition: EulerAnglesHelpers.h:102
xAOD::EmTauRoI_v1::roiWord
uint32_t roiWord() const
The "raw" RoI word describing the em/tau candidate.
xAOD::EmTauRoI_v1::setEta
void setEta(float v)
Set the pseudorapidity of the em/tau candidate.
xAOD::phi
setEt phi
Definition: TrigEMCluster_v1.cxx:29
xAOD::roiWord
roiWord
Definition: TrigMissingET_v1.cxx:36
xAOD::EmTauRoI_v1::TauRoIWord
@ TauRoIWord
This is a Run 2 Tau RoI word.
Definition: EmTauRoI_v1.h:48
xAOD::EmTauRoI_v1::RoIType
RoIType
RoI word types.
Definition: EmTauRoI_v1.h:45
xAOD::EmTauRoI_v1
Class describing a LVL1 em/tau region of interest.
Definition: EmTauRoI_v1.h:35
xAOD::EmTauRoI_v1::EmTauRoI_v1
EmTauRoI_v1()
Default constructor.
Definition: EmTauRoI_v1.cxx:17
xAOD::EmTauRoI_v1::thrPattern
uint32_t thrPattern() const
The pattern describing which thresholds were passed by the jet.
xAOD::AUXSTORE_OBJECT_GETTER
AUXSTORE_OBJECT_GETTER(TrigComposite_v1, std::vector< std::string >, linkColNames) AUXSTORE_OBJECT_GETTER(TrigComposite_v1
xAOD::EmTauRoI_v1::roiType
RoIType roiType() const
Get the type of the RoI word.
Definition: EmTauRoI_v1.cxx:37