|
ATLAS Offline Software
|
Go to the documentation of this file.
43 return StatusCode::SUCCESS;
51 auto trigEventInfoContainer = std::make_unique< xAOD::TrigCompositeContainer>();
52 auto trigEventInfoContainerAux = std::make_unique< xAOD::TrigCompositeAuxContainer>();
54 trigEventInfoContainer->setStore(trigEventInfoContainerAux.get());
58 trigEventInfoContainer->push_back(trigEI);
61 ATH_CHECK(trigEventInfoHandle.
record( std::move( trigEventInfoContainer ),
62 std::move( trigEventInfoContainerAux ) ) );
67 return StatusCode::SUCCESS;
78 double rho=0, rho_EMT = 0;
89 eventShape = rhRhoKey_PF.
cptr();
92 ATH_MSG_WARNING(
"Event density not found in handle, but handle found.");
93 ATH_MSG_FATAL(
"Could not retrieve xAOD::EventShape::Density from xAOD::EventShape.");
94 return StatusCode::FAILURE;
108 for (
unsigned int i_vtx = 0; i_vtx < vertex_container->
size(); i_vtx++)
110 privtx = vertex_container->
at(i_vtx);
124 ATH_MSG_VERBOSE(
"Found event density container HLT_Kt4EMTopoEventShape");
125 eventShape = rhRhoKey_EMT.
cptr();
127 ATH_MSG_WARNING(
"Event density not found in handle, but handle found.");
128 ATH_MSG_FATAL(
"Could not retrieve xAOD::EventShape::Density from xAOD::EventShape.");
129 return StatusCode::FAILURE;
135 ATH_MSG_DEBUG(
"Retrieved Jet Density Rho(EMTopo): " << rho_EMT);
142 SG::makeHandle<double>(
m_rhoEMTDecor, context)(*trigEI) = rho_EMT;
144 SG::makeHandle<float>(
m_muDecor, context)(*trigEI) = avgmu;
146 SG::makeHandle<int>(
m_numPVDecor, context)(*trigEI) = NPV;
148 return StatusCode::SUCCESS;
SG::WriteDecorHandleKey< xAOD::TrigCompositeContainer > m_muDecor
bool getDensity(EventDensityID id, double &v) const
Get a density variable from the object.
SG::ReadHandleKey< xAOD::EventShape > m_rhoKeyEMT
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
const_pointer_type cptr()
Dereference the pointer.
TrigComposite_v1 TrigComposite
Declare the latest version of the class.
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)
SG::WriteDecorHandleKey< xAOD::TrigCompositeContainer > m_rhoDecor
SG::WriteDecorHandleKey< xAOD::TrigCompositeContainer > m_rhoEMTDecor
ToolHandle< ILumiBlockMuTool > m_lumiBlockMuTool
#define ATH_MSG_VERBOSE(x)
Gaudi::Property< bool > m_decoratePFlowInfo
An algorithm that can be simultaneously executed in multiple threads.
Handle class for recording to StoreGate.
SG::WriteDecorHandleKey< xAOD::TrigCompositeContainer > m_numPVDecor
Gaudi::Property< bool > m_decorateEMTopoInfo
::StatusCode StatusCode
StatusCode definition for legacy code.
const_pointer_type get() const
Dereference the pointer, but don't cache anything.
SG::WriteHandleKey< xAOD::TrigCompositeContainer > m_TrigEventInfoKey
Handle class for adding a decoration to an object.
StatusCode decorateWithEventInfo(const EventContext &ctx, xAOD::TrigComposite *trigEI) const
Class used to describe composite objects in the HLT.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Data class for event shapes.
Gaudi::Property< bool > m_renounceAll
Class describing a Vertex.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
TrigEventInfoRecorderAlg(const std::string &name, ISvcLocator *pSvcLocator)
#define ATH_MSG_WARNING(x)
virtual StatusCode execute(const EventContext &ctx) const override
const T * at(size_type n) const
Access an element, as an rvalue.
Handle class for reading from StoreGate.
SG::ReadHandleKey< xAOD::VertexContainer > m_PrimaryVxInputName
SG::ReadHandleKey< xAOD::EventShape > m_rhoKeyPF
size_type size() const noexcept
Returns the number of elements in the collection.
virtual StatusCode initialize() override