LibreOffice LibreOffice 5.3 SDK C/C++ API Reference

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cppu::OWeakAggObject Class Reference

Base class to implement an UNO object supporting weak references, i.e. More...

`#include <weakagg.hxx>`

Inheritance diagram for cppu::OWeakAggObject:

## Public Member Functions
| OWeakAggObject ()
| Constructor. More...
virtual void | acquire () SAL_OVERRIDE throw ()
| If a delegator is set, then the delegators gets acquired. More...
virtual void | release () SAL_OVERRIDE throw ()
| If a delegator is set, then the delegators gets released. More...
virtual css::uno::Any | queryInterface (const css::uno::Type &rType) SAL_OVERRIDE throw (css::uno::RuntimeException, std::exception)
| If a delegator is set, then the delegator is queried for the demanded interface. More...
virtual void | setDelegator (const css::uno::Reference< css::uno::XInterface > &Delegator) SAL_OVERRIDE throw (css::uno::RuntimeException, std::exception)
| Set the delegator. More...
virtual css::uno::Any | queryAggregation (const css::uno::Type &rType) SAL_OVERRIDE throw (css::uno::RuntimeException, std::exception)
| Called by the delegator or queryInterface. More...
Public Member Functions inherited from cppu::OWeakObject
| OWeakObject ()
| Default Constructor. More...
| OWeakObject (const OWeakObject &rObj)
| Dummy copy constructor. More...
OWeakObject & | operator= (const OWeakObject &)
| Dummy assignment operator. More...
virtual css::uno::Reference< css::uno::XAdapter > | queryAdapter () SAL_OVERRIDE throw (css::uno::RuntimeException, std::exception)
| XWeak::queryAdapter() implementation. More...
| operator css::uno::Reference< css::uno::XInterface > ()
| Cast operator to XInterface reference. More...

## Protected Member Functions
virtual | ~OWeakAggObject () SAL_OVERRIDE
| Virtual dtor. More...
Protected Member Functions inherited from cppu::OWeakObject
virtual | ~OWeakObject ()
| Virtual dtor. More...
void | disposeWeakConnectionPoint ()
| disposes and resets m_pWeakConnectionPoint More...

## Protected Attributes
css::uno::WeakReferenceHelper | xDelegator
| weak reference to delegator. More...
Protected Attributes inherited from cppu::OWeakObject
oslInterlockedCount | m_refCount
| reference count. More...

## Detailed Description

Base class to implement an UNO object supporting weak references, i.e.

the object can be held weakly (by a css::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.

Derive:

Inherit from this class and delegate acquire()/ release() calls. Re-implement XAggregation::queryInterface().

## Constructor & Destructor Documentation

## ◆ OWeakAggObject()

cppu::OWeakAggObject::OWeakAggObject | ( |  | ) |
| inline

Constructor.

No delegator set.

## ◆ ~OWeakAggObject()

virtual cppu::OWeakAggObject::~OWeakAggObject | ( |  | ) |
| protected virtual

Virtual dtor.

Called when reference count is 0.

Attention
  Despite the fact that a RuntimeException is allowed to be thrown, you must not throw any exception upon destruction!

## Member Function Documentation

## ◆ acquire()

virtual void cppu::OWeakAggObject::acquire | ( |  | ) |
throw | ( |
| ) |  |
| virtual

If a delegator is set, then the delegators gets acquired.

Otherwise call is delegated to base class cppu::OWeakObject.

Reimplemented from cppu::OWeakObject.

Reimplemented in cppu::WeakAggImplHelper13< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, Ifc13 >, cppu::WeakAggImplHelper12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12 >, cppu::WeakAggImplHelper11< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11 >, cppu::WeakAggImplHelper10< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10 >, cppu::WeakAggImplHelper9< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9 >, cppu::WeakAggImplHelper8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8 >, cppu::WeakAggImplHelper7< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7 >, cppu::WeakAggImplHelper6< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6 >, cppu::WeakAggImplHelper5< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5 >, cppu::WeakAggImplHelper1< Ifc1 >, cppu::WeakAggImplHelper4< Ifc1, Ifc2, Ifc3, Ifc4 >, cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >, cppu::WeakAggImplHelper2< Ifc1, Ifc2 >, and cppu::OComponentHelper.

## ◆ queryAggregation()

virtual css::uno::Any cppu::OWeakAggObject::queryAggregation | ( | const css::uno::Type & | rType | ) |
throw | ( | css::uno::RuntimeException,
|  | std::exception
| ) |  |
| virtual

Called by the delegator or queryInterface.

Re-implement this method instead of queryInterface.

See also
  queryInterface

Reimplemented in cppu::WeakAggImplHelper13< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, Ifc13 >, cppu::WeakAggImplHelper12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12 >, cppu::WeakAggImplHelper11< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11 >, cppu::WeakAggImplHelper10< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10 >, cppu::WeakAggImplHelper9< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9 >, cppu::WeakAggImplHelper8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8 >, cppu::WeakAggImplHelper7< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7 >, cppu::WeakAggImplHelper6< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6 >, cppu::WeakAggImplHelper5< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5 >, cppu::WeakAggImplHelper1< Ifc1 >, cppu::WeakAggImplHelper4< Ifc1, Ifc2, Ifc3, Ifc4 >, cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >, cppu::WeakAggImplHelper2< Ifc1, Ifc2 >, and cppu::OComponentHelper.

## ◆ queryInterface()

virtual css::uno::Any cppu::OWeakAggObject::queryInterface | ( | const css::uno::Type & | rType | ) |
throw | ( | css::uno::RuntimeException,
|  | std::exception
| ) |  |
| virtual

If a delegator is set, then the delegator is queried for the demanded interface.

If the delegator cannot provide the demanded interface, it calls queryAggregation() on its aggregated objects.

Parameters

  rType | demanded interface type

Returns
  demanded type or empty any

See also
  queryAggregation.

Reimplemented from cppu::OWeakObject.

Reimplemented in cppu::WeakAggImplHelper13< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, Ifc13 >, cppu::WeakAggImplHelper12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12 >, cppu::WeakAggImplHelper11< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11 >, cppu::WeakAggImplHelper10< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10 >, cppu::WeakAggImplHelper9< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9 >, cppu::WeakAggImplHelper8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8 >, cppu::WeakAggImplHelper7< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7 >, cppu::WeakAggImplHelper6< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6 >, cppu::WeakAggImplHelper5< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5 >, cppu::WeakAggImplHelper1< Ifc1 >, cppu::WeakAggImplHelper4< Ifc1, Ifc2, Ifc3, Ifc4 >, cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >, cppu::WeakAggImplHelper2< Ifc1, Ifc2 >, and cppu::OComponentHelper.

## ◆ release()

virtual void cppu::OWeakAggObject::release | ( |  | ) |
throw | ( |
| ) |  |
| virtual

If a delegator is set, then the delegators gets released.

Otherwise call is delegated to base class cppu::OWeakObject.

Reimplemented from cppu::OWeakObject.

Reimplemented in cppu::WeakAggImplHelper13< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12, Ifc13 >, cppu::WeakAggImplHelper12< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11, Ifc12 >, cppu::WeakAggImplHelper11< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10, Ifc11 >, cppu::WeakAggImplHelper10< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9, Ifc10 >, cppu::WeakAggImplHelper9< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8, Ifc9 >, cppu::WeakAggImplHelper8< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7, Ifc8 >, cppu::WeakAggImplHelper7< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6, Ifc7 >, cppu::WeakAggImplHelper6< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5, Ifc6 >, cppu::WeakAggImplHelper5< Ifc1, Ifc2, Ifc3, Ifc4, Ifc5 >, cppu::WeakAggImplHelper1< Ifc1 >, cppu::WeakAggImplHelper4< Ifc1, Ifc2, Ifc3, Ifc4 >, cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >, cppu::WeakAggImplHelper2< Ifc1, Ifc2 >, and cppu::OComponentHelper.

## ◆ setDelegator()

virtual void cppu::OWeakAggObject::setDelegator | ( | const css::uno::Reference< css::uno::XInterface > & | Delegator | ) |
throw | ( | css::uno::RuntimeException,
|  | std::exception
| ) |  |
| virtual

Set the delegator.

The delegator member reference is a weak reference.

Parameters

  Delegator | the object that delegate its queryInterface to this aggregate.

## Member Data Documentation

## ◆ xDelegator

css::uno::WeakReferenceHelper cppu::OWeakAggObject::xDelegator
| protected

weak reference to delegator.

The documentation for this class was generated from the following file:

- cppuhelper/weakagg.hxx