24#ifndef INCLUDED_UNO_DISPATCHER_HXX 
   25#define INCLUDED_UNO_DISPATCHER_HXX 
   51class UnoInterfaceReference
 
   57        { 
return m_pUnoI != NULL; }
 
   59    inline ~UnoInterfaceReference();
 
   60    inline UnoInterfaceReference();
 
   63    inline UnoInterfaceReference( UnoInterfaceReference 
const & ref );
 
   65#if defined LIBO_INTERNAL_ONLY 
   66    UnoInterfaceReference(UnoInterfaceReference && other) noexcept :
 
   67        m_pUnoI(other.m_pUnoI)
 
   68    { other.m_pUnoI = 
nullptr; }
 
   74    inline UnoInterfaceReference & set(
 
   76    inline UnoInterfaceReference & set(
 
   80    UnoInterfaceReference & operator = (
 
   81        UnoInterfaceReference 
const & ref )
 
   82        { 
return set( ref.m_pUnoI ); }
 
   83    UnoInterfaceReference & operator = (
 
   85        { 
return set( pUnoI ); }
 
   87#if defined LIBO_INTERNAL_ONLY 
   88    UnoInterfaceReference & operator =(UnoInterfaceReference && other) {
 
   89        if (m_pUnoI != 
nullptr) {
 
   90            (*m_pUnoI->release)(m_pUnoI);
 
   92        m_pUnoI = other.m_pUnoI;
 
   93        other.m_pUnoI = 
nullptr;
 
   99        struct _typelib_TypeDescription 
const * pMemberType,
 
  100        void * pReturn, 
void * pArgs [], 
uno_Any ** ppException ) 
const;
 
  104inline UnoInterfaceReference::~UnoInterfaceReference()
 
  107        (*m_pUnoI->release)( m_pUnoI );
 
  111inline UnoInterfaceReference::UnoInterfaceReference()
 
  117inline UnoInterfaceReference::UnoInterfaceReference(
 
  124inline UnoInterfaceReference::UnoInterfaceReference( 
uno_Interface * pUnoI )
 
  128        (*m_pUnoI->acquire)( m_pUnoI );
 
  132inline UnoInterfaceReference::UnoInterfaceReference(
 
  133    UnoInterfaceReference 
const & ref )
 
  134    : m_pUnoI( ref.m_pUnoI )
 
  137        (*m_pUnoI->acquire)( m_pUnoI );
 
  141inline UnoInterfaceReference & UnoInterfaceReference::set(
 
  145        (*pUnoI->acquire)( pUnoI );
 
  147        (*m_pUnoI->release)( m_pUnoI );
 
  153inline UnoInterfaceReference & UnoInterfaceReference::set(
 
  157        (*m_pUnoI->release)( m_pUnoI );
 
  163inline void UnoInterfaceReference::clear()
 
  167        (*m_pUnoI->release)( m_pUnoI );
 
  173inline void UnoInterfaceReference::dispatch(
 
  175    void * pReturn, 
void * pArgs [], 
uno_Any ** ppException )
 const 
  177    (*m_pUnoI->pDispatcher)(
 
  178        m_pUnoI, pMemberType, pReturn, pArgs, ppException );
 
__sal_NoAcquire
Definition types.h:371
struct SAL_DLLPUBLIC_RTTI _uno_Any uno_Any
This is the binary specification of a UNO any.
struct SAL_DLLPUBLIC_RTTI _uno_Interface uno_Interface
The binary C uno interface description.
Definition typedescription.hxx:43
Full type description of a type.
Definition typedescription.h:76