ATLAS Offline Software
Loading...
Searching...
No Matches
Athena::Callback1< T1 > Class Template Reference

#include <SealSharedLib.h>

Collaboration diagram for Athena::Callback1< T1 >:

Public Member Functions

 Callback1 (Callback1Rep< T1 > *implementation=0)
 Callback1 (const Callback1 &x)
 ~Callback1 (void)
Callback1operator= (const Callback1 &x)
bool operator== (const Callback1 &x) const
 operator bool (void) const
void operator() (T1)

Private Attributes

Callback1Rep< T1 > * m_rep

Detailed Description

template<class T1>
class Athena::Callback1< T1 >

Definition at line 50 of file SealSharedLib.h.

Constructor & Destructor Documentation

◆ Callback1() [1/2]

template<class T1>
Athena::Callback1< T1 >::Callback1 ( Callback1Rep< T1 > * implementation = 0)
inline

Definition at line 91 of file SealSharedLib.h.

93{ if (m_rep) m_rep->ref (); }
Callback1Rep< T1 > * m_rep

◆ Callback1() [2/2]

template<class T1>
Athena::Callback1< T1 >::Callback1 ( const Callback1< T1 > & x)
inline

Definition at line 97 of file SealSharedLib.h.

98 : m_rep (x.m_rep)
99{ if (m_rep) m_rep->ref (); }

◆ ~Callback1()

template<class T1>
Athena::Callback1< T1 >::~Callback1 ( void )
inline

Definition at line 103 of file SealSharedLib.h.

104{ if (m_rep) m_rep->unref (); }

Member Function Documentation

◆ operator bool()

template<class T1>
Athena::Callback1< T1 >::operator bool ( void ) const
inline

Definition at line 126 of file SealSharedLib.h.

127{ return m_rep ? true : false; } // FIXME: for Sun CC 4.2 (no bool)

◆ operator()()

template<class T1>
void Athena::Callback1< T1 >::operator() ( T1 a)
inline

Definition at line 131 of file SealSharedLib.h.

132{ m_rep->call (a); }

◆ operator=()

template<class T1>
Callback1< T1 > & Athena::Callback1< T1 >::operator= ( const Callback1< T1 > & x)
inline

Definition at line 108 of file SealSharedLib.h.

109{
110 if (m_rep != x.m_rep)
111 {
112 if (m_rep) m_rep->unref ();
113 m_rep = x.m_rep;
114 if (m_rep) m_rep->ref ();
115 }
116 return *this;
117}

◆ operator==()

template<class T1>
bool Athena::Callback1< T1 >::operator== ( const Callback1< T1 > & x) const
inline

Definition at line 121 of file SealSharedLib.h.

122{ return m_rep == x.m_rep || (m_rep && x.m_rep && m_rep->equal (x.m_rep)); }

Member Data Documentation

◆ m_rep

template<class T1>
Callback1Rep<T1>* Athena::Callback1< T1 >::m_rep
private

Definition at line 63 of file SealSharedLib.h.


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