ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthenaExamples
AthExThinning
AthExThinning
AthExFatObject.h
Go to the documentation of this file.
1
2
3
/*
4
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// AthExFatObject.h
8
// Header file for class AthExFatObject
9
// Author: S.Binet<binet@cern.ch>
11
#ifndef ATHEXTHINNING_ATHEXFATOBJECT_H
12
#define ATHEXTHINNING_ATHEXFATOBJECT_H 1
13
14
// STL includes
15
#include <iosfwd>
16
17
// AthExThinning includes
18
#include "
AthExThinning/AthExParticles.h
"
19
20
// datamodel
21
#include "
AthenaKernel/CLASS_DEF.h
"
22
#include "AthLinks/ElementLink.h"
23
24
// Forward declaration
25
class
AthExFatObjectSlimmer;
26
27
28
class
AthExFatObject
29
{
30
// for slimming
31
friend
class
AthExFatObjectSlimmer
;
32
33
// Make the AthenaPoolCnv class our friend
34
friend
class
AthExFatObjectCnv_p1
;
35
37
// Public typedefs:
39
public
:
40
typedef
ElementLink<AthExParticles>
AthExParticleLink_t
;
41
43
// Public methods:
45
public
:
46
48
AthExFatObject
();
49
51
AthExFatObject
(
const
AthExFatObject
& rhs );
52
54
AthExFatObject
&
operator=
(
const
AthExFatObject
& rhs );
55
57
AthExFatObject
(
const
ElementLink<AthExParticles>
&
particle
);
58
60
virtual
~AthExFatObject
();
61
63
// Const methods:
65
68
const
AthExParticle
*
particle
()
const
{
return
m_particle
; }
69
72
const
AthExParticleLink_t
&
particleLink
()
const
{
return
m_particleLink
; }
73
75
// Non-const methods:
77
80
void
setLink
(
const
AthExParticleLink_t
& link);
81
83
// Private data:
85
private
:
86
89
const
AthExParticle
*
m_particle
;
90
93
AthExParticleLink_t
m_particleLink
;
94
};
95
96
97
// for storegate
98
CLASS_DEF
(
AthExFatObject
, 166093780 , 1 )
99
100
#endif
//> !ATHEXTHINNING_ATHEXFATOBJECT_H
AthExParticleLink_t
AthExFatObject::AthExParticleLink_t AthExParticleLink_t
Definition
AthExFatObject.cxx:18
AthExParticles.h
CLASS_DEF.h
macros to associate a CLID to a type
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition
Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:67
AthExFatObject
Definition
AthExFatObject.h:29
AthExFatObject::particleLink
const AthExParticleLink_t & particleLink() const
element link access
Definition
AthExFatObject.h:72
AthExFatObject::operator=
AthExFatObject & operator=(const AthExFatObject &rhs)
Assignment operator:
Definition
AthExFatObject.cxx:37
AthExFatObject::setLink
void setLink(const AthExParticleLink_t &link)
set the internals of the fat object
Definition
AthExFatObject.cxx:63
AthExFatObject::AthExFatObjectSlimmer
friend class AthExFatObjectSlimmer
Definition
AthExFatObject.h:31
AthExFatObject::~AthExFatObject
virtual ~AthExFatObject()
Destructor:
Definition
AthExFatObject.cxx:53
AthExFatObject::particle
const AthExParticle * particle() const
raw pointer access
Definition
AthExFatObject.h:68
AthExFatObject::AthExParticleLink_t
ElementLink< AthExParticles > AthExParticleLink_t
Definition
AthExFatObject.h:40
AthExFatObject::m_particleLink
AthExParticleLink_t m_particleLink
a persistable pointer to an AthExParticle
Definition
AthExFatObject.h:93
AthExFatObject::AthExFatObjectCnv_p1
friend class AthExFatObjectCnv_p1
Definition
AthExFatObject.h:34
AthExFatObject::m_particle
const AthExParticle * m_particle
a raw pointer to an AthExParticle
Definition
AthExFatObject.h:89
AthExFatObject::AthExFatObject
AthExFatObject()
Default constructor:
Definition
AthExFatObject.cxx:26
AthExParticle
Definition
AthExParticle.h:24
ElementLink
ElementLink implementation for ROOT usage.
Definition
A/AthLinks/ElementLink.h:40
Generated on
for ATLAS Offline Software by
1.17.0