ATLAS Offline Software
Loading...
Searching...
No Matches
AllocTestWriteWithoutAlloc.cxx
Go to the documentation of this file.
1/*
2 * Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration.
3 */
10
11
14
15
16namespace DMTest {
17
18
23{
24 ATH_CHECK( m_containerKey.initialize() );
25 return StatusCode::SUCCESS;
26}
27
28
32StatusCode AllocTestWriteWithoutAlloc::execute (const EventContext& ctx) const
33{
34 static const SG::AuxElement::Accessor<int> atInt3 ("atInt3");
35 static const SG::AuxElement::Accessor<int> atInt4 ("atInt4");
36
38 ATH_CHECK( cont.record (std::make_unique<AllocTestContainer>(),
39 std::make_unique<AllocTestAuxContainer>()) );
40
41 for (size_t i = 0; i < 10; i++) {
42 cont->push_back (std::make_unique<AllocTest>());
43 cont->back()->setAtInt1 (ctx.evt()*100 + i);
44 cont->back()->setAtInt2 (ctx.evt()*100 + i + 10);
45 atInt3(*cont->back()) = ctx.evt()*100 + i + 20;
46 atInt4(*cont->back()) = ctx.evt()*100 + i + 30;
47 }
48 return StatusCode::SUCCESS;
49}
50
51
52} // namespace DMTest
#define ATH_CHECK
Evaluate an expression and check for errors.
Testing an xAOD object with a non-standard memory allocator.
SG::WriteHandleKey< AllocTestContainer > m_containerKey
virtual StatusCode initialize() override
Gaudi initialize method.
virtual StatusCode execute(const EventContext &ctx) const override
Algorithm event processing.
SG::Accessor< T, ALLOC > Accessor
Definition AuxElement.h:572
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
Definition B.h:23