:: cppu ::

class OWeakAggObject


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

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