CMS 3D CMS Logo

lat::Hook< R > Class Template Reference

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

List of all members.

Public Member Functions

 Hook (const Hook &x)
 Hook (HookRep< R > *implementation=0)
 operator bool (void) const
operator() (void) const
Hookoperator= (const Hook &x)
 ~Hook (void)

Private Attributes

HookRep< R > * m_rep


Detailed Description

template<class R>
class lat::Hook< R >

Definition at line 33 of file Hook.h.


Constructor & Destructor Documentation

template<class R>
lat::Hook< R >::Hook ( HookRep< R > *  implementation = 0  )  [inline]

Definition at line 569 of file Hook.h.

References lat::Hook< R >::m_rep.

00570     : m_rep (implementation)
00571 { if (m_rep) m_rep->ref (); }

template<class R>
lat::Hook< R >::Hook ( const Hook< R > &  x  )  [inline]

Definition at line 575 of file Hook.h.

References lat::Hook< R >::m_rep.

00576     : m_rep (x.m_rep)
00577 { if (m_rep) m_rep->ref (); }

template<class R>
lat::Hook< R >::~Hook ( void   )  [inline]

Definition at line 581 of file Hook.h.

References lat::Hook< R >::m_rep.

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


Member Function Documentation

template<class R>
lat::Hook< R >::operator bool ( void   )  const [inline]

Definition at line 599 of file Hook.h.

References lat::Hook< R >::m_rep.

00600 { return m_rep != 0; }

template<class R>
R lat::Hook< R >::operator() ( void   )  const [inline]

Definition at line 604 of file Hook.h.

References lat::Hook< R >::m_rep.

00605 { return m_rep->call (); }

template<class R>
Hook< R > & lat::Hook< R >::operator= ( const Hook< R > &  x  )  [inline]

Definition at line 586 of file Hook.h.

References lat::Hook< R >::m_rep.

00587 {
00588     if (m_rep != x.m_rep)
00589     {
00590         if (m_rep) m_rep->unref ();
00591         m_rep = x.m_rep;
00592         if (m_rep) m_rep->ref ();
00593     }
00594     return *this;
00595 }


Member Data Documentation

template<class R>
HookRep<R>* lat::Hook< R >::m_rep [private]

Definition at line 46 of file Hook.h.

Referenced by lat::Hook< R >::Hook(), lat::Hook< R >::operator bool(), lat::Hook< R >::operator()(), lat::Hook< R >::operator=(), and lat::Hook< R >::~Hook().


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