LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
Classes | Public Member Functions | List of all members
cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 > Class Template Reference

Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which supports weak mechanism to be held weakly (supporting css::uno::XWeak through cppu::OWeakAggObject). More...

#include <implbase3.hxx>

Inheritance diagram for cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >:
cppu::OWeakAggObject cppu::OWeakObject

Public Member Functions

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

Additional Inherited Members

- Protected Member Functions inherited from cppu::OWeakAggObject
virtual ~OWeakAggObject () SAL_OVERRIDE
 Virtual dtor. More...
 
- Protected Member Functions inherited from cppu::OWeakObject
virtual ~OWeakObject () COVERITY_NOEXCEPT_FALSE
 Virtual dtor. More...
 
void disposeWeakConnectionPoint ()
 disposes and resets m_pWeakConnectionPoint More...
 
- Protected Attributes inherited from cppu::OWeakAggObject
css::uno::WeakReferenceHelper xDelegator
 weak reference to delegator. More...
 
- Protected Attributes inherited from cppu::OWeakObject
oslInterlockedCount m_refCount
 reference count. More...
 

Detailed Description

template<class Ifc1, class Ifc2, class Ifc3>
class cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >

Implementation helper implementing interfaces css::lang::XTypeProvider and css::uno::XInterface which supports weak mechanism to be held weakly (supporting css::uno::XWeak through cppu::OWeakAggObject).

In addition, it supports also aggregation meaning object of this class can be aggregated (css::uno::XAggregation through cppu::OWeakAggObject). If a delegator is set (this object is aggregated), then incoming queryInterface() calls are delegated to the delegator object. If the delegator does not support the demanded interface, it calls queryAggregation() on its aggregated objects.

Derive:
Inherit from this class giving your interface(s) to be implemented as template argument(s). Your sub class defines method implementations for these interface(s).

Member Function Documentation

◆ acquire()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual void cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::acquire ( )
inlinevirtual

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

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

Reimplemented from cppu::OWeakAggObject.

◆ getImplementationId()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Sequence< sal_Int8 > cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::getImplementationId ( )
inlinevirtual

◆ getTypes()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Sequence< css::uno::Type > cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::getTypes ( )
inlinevirtual

◆ queryAggregation()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Any cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::queryAggregation ( css::uno::Type const &  rType)
inlinevirtual

Called by the delegator or queryInterface.

Re-implement this method instead of queryInterface.

See also
queryInterface

Reimplemented from cppu::OWeakAggObject.

◆ queryInterface()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Any cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::queryInterface ( css::uno::Type const &  rType)
inlinevirtual

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
rTypedemanded interface type
Returns
demanded type or empty any
See also
queryAggregation.

Reimplemented from cppu::OWeakAggObject.

◆ release()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual void cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >::release ( )
inlinevirtual

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

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

Reimplemented from cppu::OWeakAggObject.


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