LibreOffice Module cppuhelper (master) 1
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 >:
[legend]
Collaboration diagram for cppu::WeakAggImplHelper3< Ifc1, Ifc2, Ifc3 >:
[legend]

Classes

struct  cd
 

Public Member Functions

virtual css::uno::Any SAL_CALL 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 SAL_CALL queryAggregation (css::uno::Type const &rType) SAL_OVERRIDE
 Called by the delegator or queryInterface. More...
 
virtual void SAL_CALL acquire () SAL_NOEXCEPT SAL_OVERRIDE
 If a delegator is set, then the delegators gets acquired. More...
 
virtual void SAL_CALL release () SAL_NOEXCEPT SAL_OVERRIDE
 If a delegator is set, then the delegators gets released. More...
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () SAL_OVERRIDE
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () SAL_OVERRIDE
 
- Public Member Functions inherited from cppu::OWeakAggObject
 OWeakAggObject ()
 Constructor. More...
 
virtual void SAL_CALL acquire () SAL_NOEXCEPT SAL_OVERRIDE
 If a delegator is set, then the delegators gets acquired. More...
 
virtual void SAL_CALL release () SAL_NOEXCEPT SAL_OVERRIDE
 If a delegator is set, then the delegators gets released. More...
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) SAL_OVERRIDE
 If a delegator is set, then the delegator is queried for the demanded interface. More...
 
virtual void SAL_CALL setDelegator (const css::uno::Reference< css::uno::XInterface > &Delegator) SAL_OVERRIDE
 Set the delegator. More...
 
virtual css::uno::Any SAL_CALL queryAggregation (const css::uno::Type &rType) SAL_OVERRIDE
 Called by the delegator or queryInterface. More...
 
- Public Member Functions inherited from cppu::OWeakObject
 OWeakObject ()
 Default Constructor. More...
 
 OWeakObject (const OWeakObject &)
 Dummy copy constructor. More...
 
OWeakObject &SAL_CALL operator= (const OWeakObject &)
 Dummy assignment operator. More...
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) SAL_OVERRIDE
 Basic queryInterface() implementation supporting com::sun::star::uno::XWeak and com::sun::star::uno::XInterface. More...
 
virtual void SAL_CALL acquire () SAL_NOEXCEPT SAL_OVERRIDE
 increasing m_refCount More...
 
virtual void SAL_CALL release () SAL_NOEXCEPT SAL_OVERRIDE
 decreasing m_refCount More...
 
virtual css::uno::Reference< css::uno::XAdapter > SAL_CALL queryAdapter () SAL_OVERRIDE
 XWeak::queryAdapter() implementation. More...
 
SAL_CALL 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: \n
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).

Definition at line 142 of file implbase3.hxx.

Member Function Documentation

◆ acquire()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual void SAL_CALL 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.

Definition at line 153 of file implbase3.hxx.

References cppu::OWeakAggObject::acquire().

◆ getImplementationId()

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

Definition at line 159 of file implbase3.hxx.

References cppu::ImplHelper_getImplementationId().

◆ getTypes()

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

Definition at line 157 of file implbase3.hxx.

References cppu::WeakAggImplHelper_getTypes().

◆ queryAggregation()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Any SAL_CALL 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.

Definition at line 151 of file implbase3.hxx.

References cppu::WeakAggImplHelper_queryAgg().

◆ queryInterface()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual css::uno::Any SAL_CALL 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.

Definition at line 149 of file implbase3.hxx.

References cppu::OWeakAggObject::queryInterface().

◆ release()

template<class Ifc1 , class Ifc2 , class Ifc3 >
virtual void SAL_CALL 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.

Definition at line 155 of file implbase3.hxx.

References cppu::OWeakAggObject::release().


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