CMS 3D CMS Logo

lat::Callback2< T1, T2 > Class Template Reference

#include <Iguana/Utilities/classlib/utils/Callback.h>

List of all members.

Public Member Functions

 Callback2 (const Callback2 &x)
 Callback2 (Callback2Rep< T1, T2 > *implementation=0)
 operator bool (void) const
void operator() (T1, T2) const
Callback2operator= (const Callback2 &x)
bool operator== (const Callback2 &x) const
 ~Callback2 (void)

Private Attributes

Callback2Rep< T1, T2 > * m_rep


Detailed Description

template<class T1, class T2>
class lat::Callback2< T1, T2 >

Definition at line 107 of file Callback.h.


Constructor & Destructor Documentation

template<class T1, class T2>
lat::Callback2< T1, T2 >::Callback2 ( Callback2Rep< T1, T2 > *  implementation = 0  )  [inline]

Definition at line 797 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

00798     : m_rep (implementation)
00799 { if (m_rep) m_rep->ref (); }

template<class T1, class T2>
lat::Callback2< T1, T2 >::Callback2 ( const Callback2< T1, T2 > &  x  )  [inline]

Definition at line 803 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

00804     : m_rep (x.m_rep)
00805 { if (m_rep) m_rep->ref (); }

template<class T1, class T2>
lat::Callback2< T1, T2 >::~Callback2 ( void   )  [inline]

Definition at line 809 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

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


Member Function Documentation

template<class T1, class T2>
lat::Callback2< T1, T2 >::operator bool ( void   )  const [inline]

Definition at line 832 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

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

template<class T1, class T2>
void lat::Callback2< T1, T2 >::operator() ( T1  a,
T2  b 
) const [inline]

Definition at line 837 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

00838 { m_rep->call (a, b); }

template<class T1, class T2>
Callback2< T1, T2 > & lat::Callback2< T1, T2 >::operator= ( const Callback2< T1, T2 > &  x  )  [inline]

Definition at line 814 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

00815 {
00816     if (m_rep != x.m_rep)
00817     {
00818         if (m_rep) m_rep->unref ();
00819         m_rep = x.m_rep;
00820         if (m_rep) m_rep->ref ();
00821     }
00822     return *this;
00823 }

template<class T1, class T2>
bool lat::Callback2< T1, T2 >::operator== ( const Callback2< T1, T2 > &  x  )  const [inline]

Definition at line 827 of file Callback.h.

References lat::Callback2< T1, T2 >::m_rep.

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


Member Data Documentation

template<class T1, class T2>
Callback2Rep<T1,T2>* lat::Callback2< T1, T2 >::m_rep [private]

Definition at line 120 of file Callback.h.

Referenced by lat::Callback2< T1, T2 >::Callback2(), lat::Callback2< T1, T2 >::operator bool(), lat::Callback2< T1, T2 >::operator()(), lat::Callback2< T1, T2 >::operator=(), lat::Callback2< T1, T2 >::operator==(), and lat::Callback2< T1, T2 >::~Callback2().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:48:23 2009 for CMSSW by  doxygen 1.5.4