40 #ifndef INCLUDED_WEAK_REFERENCE_H 
   41 #define INCLUDED_WEAK_REFERENCE_H 
   48     class WeakReferenceable;
 
  102                 : _referent( referent )
 
  115                     _referent->NotifyWeakReferenceDestroyed( 
this );
 
  120             WeakReferenceable* GetReferent() 
const DISTI_METHOD_OVERRIDE { 
return _referent; }
 
  123             void NotifyReferentDestroyed()
 
  146             SetWeakReference( weakReferenceable );
 
  172             SetWeakReference( weakReferenceable );
 
  202             return ( _weakReference.IsNull() || NULL == _weakReference->GetReferent() );
 
  215                 ret = 
dynamic_cast<T*
>( _weakReference->GetReferent() );
 
  226             return !_weakReference.IsNull() ? _weakReference->GetReferent() : NULL;
 
  233             if( weakReferenceable )
 
  237                 weakRef = 
new WeakReferenceImpl( weakReferenceable );
 
  241             _weakReference.Reset( weakRef );
 
  244         ScopedPtr<WeakReference> _weakReference; 
 
WeakRef(const WeakRef &w)
Definition: weak_reference.h:152
virtual WeakReferenceable * GetReferent() const  =0
WeakRef & operator=(WeakReferenceable *weakReferenceable)
Definition: weak_reference.h:170
WeakRef & operator=(const WeakRef< U > &w)
Definition: weak_reference.h:191
virtual void AddWeakReference(WeakReference *weakRef)=0
WeakRef(const WeakRef< U > &w)
Definition: weak_reference.h:161
WeakRef()
Definition: weak_reference.h:136
#define GLS_ASSERT(exp)
Definition: disti_assert.h:132
T * Get() const 
Definition: weak_reference.h:208
Definition: weak_reference.h:51
WeakRef(WeakReferenceable *weakReferenceable)
Definition: weak_reference.h:144
Definition: weak_reference.h:64
virtual void NotifyReferentDestroyed()=0
WeakReferenceable * GetWeakReferenceable() const 
Definition: weak_reference.h:224
Definition: weak_reference.h:91
bool IsNull() const 
Definition: weak_reference.h:200
Contains the DistiAssert macro. 
WeakRef & operator=(const WeakRef &w)
Definition: weak_reference.h:180
virtual void NotifyWeakReferenceDestroyed(WeakReference *weakReference)=0
Definition: bmpimage.h:46