:: cppu ::

class OWeakAggObject


Base Classes
com::sun::star::uno::XWeak (public)
  |  
  +--cppu::OWeakObject (public)
       |  
       |  com::sun::star::uno::XAggregation (public)
       |    |  
       +----+--OWeakAggObject
Known Derived Classes
WeakAggImplHelper9
WeakAggImplHelper12
WeakAggImplHelper10
WeakAggImplHelper4
WeakAggImplHelper11
WeakAggImplHelper8
OComponentHelper
WeakAggImplHelper7
WeakAggImplHelper5
WeakAggImplHelper2
WeakAggImplHelper3
WeakAggImplHelper1
WeakAggComponentImplHelperBase
WeakAggImplHelper6

virtual abstract interface template
YES NO NO NO
Description
Base class to implement an UNO object supporting weak references, i.e. the object can be held
weakly (by a ::com::sun::star::uno::WeakReference) and aggregation, i.e. the object can be
aggregated by another (delegator).
This implementation copes with reference counting.  Upon last release(), the virtual dtor
is called.

How to Derive from this Class
Inherit from this class and delegate acquire()/ release() calls.  Re-implement
XAggregation::queryInterface().
File
weakagg.hxx

Public Members

Methods


OWeakAggObject( ) throw( );
Constructor. No delegator set.
virtual void
acquire( ) throw( );
If a delegator is set, then the delegators gets acquired. Otherwise call is delegated to base class ::cppu::OWeakObject.
virtual void
release( ) throw( );
If a delegator is set, then the delegators gets released. Otherwise call is delegated to base class ::cppu::OWeakObject.
virtual ::com::sun::star::uno::Any
queryInterface( const ::com::sun::star::uno::Type & rType ) throw( ::com::sun::star::uno::RuntimeException );
virtual void
setDelegator( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > & Delegator ) throw( ::com::sun::star::uno::RuntimeException );
Set the delegator. The delegator member reference is a weak reference.
virtual ::com::sun::star::uno::Any
queryAggregation( const ::com::sun::star::uno::Type & rType ) throw( ::com::sun::star::uno::RuntimeException );
Called by the delegator or queryInterface. Re-implement this method instead of queryInterface.

Protected Members

Methods

virtual
~OWeakAggObject( ) throw( ::com::sun::star::uno::RuntimeException );
Virtual dtor. Called when reference count is 0.

Data

::com::sun::star::uno::WeakReferenceHelper xDelegator; weak reference to delegator.

Top of Page