ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthAllocators
src
Arena.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// $Id: Arena.cxx 470529 2011-11-24 23:54:22Z ssnyder $
13
14
#include "
AthAllocators/Arena.h
"
15
#include "
AthAllocators/ArenaAllocatorBase.h
"
16
17
namespace
SG
{
18
19
26
Arena::Arena
(
const
std::string&
name
, ArenaHeader*
header
/*= 0*/
)
27
:
ArenaBase
(
name
),
28
m_header
(
header
)
29
{
30
if
(!
m_header
) {
31
m_header
=
SG::ArenaHeader::defaultHeader
();
32
}
33
m_header
->addArena (
this
);
34
}
35
36
40
Arena::~Arena
()
41
{
42
m_header
->delArena (
this
);
43
}
44
45
49
ArenaHeader*
Arena::header
()
50
{
51
return
m_header
;
52
}
53
54
59
ArenaBase
*
Arena::makeCurrent
()
60
{
61
return
m_header
->setArena (
this
);
62
}
63
64
69
Arena::Push::Push
(
Arena
&
a
)
70
:
m_header
(
a
.
header
()),
71
m_prev
(
a
.
makeCurrent
())
72
{
73
}
74
75
79
Arena::Push::~Push
()
80
{
81
m_header
->setArena (
m_prev
);
82
}
83
84
85
}
// namespace SG
ArenaAllocatorBase.h
Common base class for arena allocator classes. See Arena.h for an overview of the arena-based memory ...
Arena.h
Collection of memory allocators with a common lifetime, plus subsystem summary.
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
Arena::Push::~Push
~Push()
Destructor.
Definition
Arena.cxx:79
Arena::Push::Push
Push(Arena &a)
Constructor.
Definition
Arena.cxx:69
Arena::Push::m_header
ArenaHeader * m_header
The ArenaHeader for the stack we're managing.
Definition
Arena.h:291
Arena::Push::m_prev
ArenaBase * m_prev
The previously-current arena.
Definition
Arena.h:294
Arena::makeCurrent
ArenaBase * makeCurrent()
Make this Arena the current one for its ArenaHeader.
Definition
Arena.cxx:59
Arena::header
ArenaHeader * header()
Return the ArenaHeader with which this Arena is associated.
Definition
Arena.cxx:49
Arena::m_header
ArenaHeader * m_header
The ArenaHeader with which we're associated.
Definition
Arena.h:300
Arena::Arena
Arena(const std::string &name, ArenaHeader *header=0)
Constructor.
Definition
Arena.cxx:26
Arena::~Arena
~Arena()
Destructor.
Definition
Arena.cxx:40
SG::ArenaBase::ArenaBase
ArenaBase(const std::string &name="")
Constructor.
Definition
ArenaBase.cxx:27
SG::ArenaBase::name
const std::string & name() const
Return this Arena's name.
Definition
ArenaBase.cxx:114
SG::ArenaHeader::defaultHeader
static ArenaHeader * defaultHeader()
Return the global default Header instance.
Definition
ArenaHeader.cxx:164
SG
Forward declaration.
Definition
CaloCellPacker_400_500.h:32
Generated on
for ATLAS Offline Software by
1.17.0