ATLAS Offline Software
Loading...
Searching...
No Matches
AthExElephantino Class Reference

object with 4 legs, so it is best modeled with a vector of ElementLink. More...

#include <AthExElephantino.h>

Collaboration diagram for AthExElephantino:

Public Member Functions

 AthExElephantino ()
 Default constructor:
 AthExElephantino (const AthExElephantino &rhs)
 Copy constructor:
AthExElephantinooperator= (const AthExElephantino &rhs)
 Assignment operator:
virtual ~AthExElephantino ()
 Constructor with parameters:
const AthExIParticleleg1 () const
const AthExIParticleleg2 () const
const AthExIParticleleg3 () const
const AthExIParticleleg4 () const
const AthExIParticleear1 () const
const AthExIParticleear2 () const
void setLegs (const ElementLink< AthExIParticles > &p1, const ElementLink< AthExIParticles > &p2, const ElementLink< AthExIParticles > &p3, const ElementLink< AthExIParticles > &p4)
void setEars (const ElementLink< AthExIParticles > &e1, const ElementLink< AthExIParticles > &e4)

Protected Attributes

ElementLinkVector< AthExIParticlesm_legs
ElementLinkVector< AthExIParticlesm_ears

Friends

class AthExElephantinoCnv_p1

Detailed Description

object with 4 legs, so it is best modeled with a vector of ElementLink.

Definition at line 32 of file AthExElephantino.h.

Constructor & Destructor Documentation

◆ AthExElephantino() [1/2]

AthExElephantino::AthExElephantino ( )

Default constructor:

Definition at line 25 of file AthExElephantino.cxx.

25 :
26 m_legs(),
27 m_ears()
28{}
ElementLinkVector< AthExIParticles > m_legs
ElementLinkVector< AthExIParticles > m_ears

◆ AthExElephantino() [2/2]

AthExElephantino::AthExElephantino ( const AthExElephantino & rhs)

Copy constructor:

Definition at line 30 of file AthExElephantino.cxx.

30 :
31 m_legs( rhs.m_legs ),
32 m_ears( rhs.m_ears )
33{}

◆ ~AthExElephantino()

AthExElephantino::~AthExElephantino ( )
virtual

Constructor with parameters:

Destructor:

Definition at line 46 of file AthExElephantino.cxx.

47{}

Member Function Documentation

◆ ear1()

const AthExIParticle * AthExElephantino::ear1 ( ) const

Definition at line 85 of file AthExElephantino.cxx.

86{
87 assert (m_ears.size() == 2);
88 if (m_ears[0].isValid()) { return *m_ears[0];
89 } else { return 0;
90 }
91}
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
Definition AtlasPID.h:878

◆ ear2()

const AthExIParticle * AthExElephantino::ear2 ( ) const

Definition at line 93 of file AthExElephantino.cxx.

94{
95 assert (m_ears.size() == 2);
96 if (m_ears[1].isValid()) { return *m_ears[1];
97 } else { return 0;
98 }
99}

◆ leg1()

const AthExIParticle * AthExElephantino::leg1 ( ) const

Definition at line 53 of file AthExElephantino.cxx.

54{
55 assert( m_legs.size() == 4 );
56 if ( m_legs[0].isValid() ) { return *m_legs[0];
57 } else { return 0;
58 }
59}

◆ leg2()

const AthExIParticle * AthExElephantino::leg2 ( ) const

Definition at line 61 of file AthExElephantino.cxx.

62{
63 assert( m_legs.size() == 4 );
64 if ( m_legs[1].isValid() ) { return *m_legs[1];
65 } else { return 0;
66 }
67}

◆ leg3()

const AthExIParticle * AthExElephantino::leg3 ( ) const

Definition at line 69 of file AthExElephantino.cxx.

70{
71 assert( m_legs.size() == 4 );
72 if ( m_legs[2].isValid() ) { return *m_legs[2];
73 } else { return 0;
74 }
75}

◆ leg4()

const AthExIParticle * AthExElephantino::leg4 ( ) const

Definition at line 77 of file AthExElephantino.cxx.

78{
79 assert( m_legs.size() == 4 );
80 if ( m_legs[3].isValid() ) { return *m_legs[3];
81 } else { return 0;
82 }
83}

◆ operator=()

AthExElephantino & AthExElephantino::operator= ( const AthExElephantino & rhs)

Assignment operator:

Definition at line 35 of file AthExElephantino.cxx.

36{
37 if ( this != &rhs ) {
38 m_legs = rhs.m_legs;
39 m_ears = rhs.m_ears;
40 }
41 return *this;
42}

◆ setEars()

void AthExElephantino::setEars ( const ElementLink< AthExIParticles > & e1,
const ElementLink< AthExIParticles > & e4 )

Definition at line 118 of file AthExElephantino.cxx.

120{
121 m_ears.clear();
122 m_ears.reserve( 2 );
123 m_ears.push_back( ear1 );
124 m_ears.push_back( ear2 );
125}
const AthExIParticle * ear1() const
const AthExIParticle * ear2() const

◆ setLegs()

void AthExElephantino::setLegs ( const ElementLink< AthExIParticles > & p1,
const ElementLink< AthExIParticles > & p2,
const ElementLink< AthExIParticles > & p3,
const ElementLink< AthExIParticles > & p4 )

Definition at line 105 of file AthExElephantino.cxx.

109{
110 m_legs.clear();
111 m_legs.reserve( 4 );
112 m_legs.push_back( leg1 );
113 m_legs.push_back( leg2 );
114 m_legs.push_back( leg3 );
115 m_legs.push_back( leg4 );
116}
const AthExIParticle * leg4() const
const AthExIParticle * leg3() const
const AthExIParticle * leg1() const
const AthExIParticle * leg2() const

◆ AthExElephantinoCnv_p1

friend class AthExElephantinoCnv_p1
friend

Definition at line 36 of file AthExElephantino.h.

Member Data Documentation

◆ m_ears

ElementLinkVector<AthExIParticles> AthExElephantino::m_ears
protected

Definition at line 92 of file AthExElephantino.h.

◆ m_legs

ElementLinkVector<AthExIParticles> AthExElephantino::m_legs
protected

Definition at line 91 of file AthExElephantino.h.


The documentation for this class was generated from the following files: