LibreOffice Module bridges (master)  1
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
bridges::cpp_uno::shared::CppInterfaceProxy Class Reference

A cpp proxy wrapping a uno interface. More...

#include <cppinterfaceproxy.hxx>

Collaboration diagram for bridges::cpp_uno::shared::CppInterfaceProxy:
[legend]

Public Member Functions

BridgegetBridge ()
 
uno_Interface * getUnoI ()
 
typelib_InterfaceTypeDescription * getTypeDescr ()
 
const OUString & getOid () const
 
void acquireProxy ()
 
void releaseProxy ()
 

Static Public Member Functions

static com::sun::star::uno::XInterface * create (Bridge *pBridge, uno_Interface *pUnoI, typelib_InterfaceTypeDescription *pTypeDescr, OUString const &rOId)
 
static CppInterfaceProxycastInterfaceToProxy (void *pInterface)
 

Private Member Functions

 CppInterfaceProxy (CppInterfaceProxy const &)=delete
 
CppInterfaceProxyoperator= (const CppInterfaceProxy &)=delete
 
 CppInterfaceProxy (Bridge *pBridge_, uno_Interface *pUnoI_, typelib_InterfaceTypeDescription *pTypeDescr_, OUString const &rOId_)
 
 ~CppInterfaceProxy ()
 

Static Private Member Functions

static com::sun::star::uno::XInterface * castProxyToInterface (CppInterfaceProxy *pProxy)
 

Private Attributes

std::atomic< std::size_t > nRef
 
BridgepBridge
 
uno_Interface * pUnoI
 
typelib_InterfaceTypeDescription * pTypeDescr
 
OUString oid
 
VtableFactory::Slotvtables [1] = {}
 

Friends

void freeCppInterfaceProxy (uno_ExtEnvironment *pEnv, void *pInterface)
 

Detailed Description

A cpp proxy wrapping a uno interface.

Definition at line 46 of file cppinterfaceproxy.hxx.

Constructor & Destructor Documentation

bridges::cpp_uno::shared::CppInterfaceProxy::CppInterfaceProxy ( CppInterfaceProxy const &  )
privatedelete

Referenced by create().

bridges::cpp_uno::shared::CppInterfaceProxy::CppInterfaceProxy ( Bridge pBridge_,
uno_Interface *  pUnoI_,
typelib_InterfaceTypeDescription *  pTypeDescr_,
OUString const &  rOId_ 
)
private
bridges::cpp_uno::shared::CppInterfaceProxy::~CppInterfaceProxy ( )
private

Member Function Documentation

void bridges::cpp_uno::shared::CppInterfaceProxy::acquireProxy ( )
CppInterfaceProxy * bridges::cpp_uno::shared::CppInterfaceProxy::castInterfaceToProxy ( void pInterface)
static
com::sun::star::uno::XInterface * bridges::cpp_uno::shared::CppInterfaceProxy::castProxyToInterface ( CppInterfaceProxy pProxy)
staticprivate

Definition at line 123 of file cppinterfaceproxy.cxx.

References vtables.

Referenced by acquireProxy(), create(), and releaseProxy().

com::sun::star::uno::XInterface * bridges::cpp_uno::shared::CppInterfaceProxy::create ( Bridge pBridge,
uno_Interface *  pUnoI,
typelib_InterfaceTypeDescription *  pTypeDescr,
OUString const &  rOId 
)
static
Bridge* bridges::cpp_uno::shared::CppInterfaceProxy::getBridge ( )
inline

Definition at line 57 of file cppinterfaceproxy.hxx.

References pBridge.

Referenced by cpp2uno_call(), cpp_mediate(), and cpp_vtable_call().

const OUString& bridges::cpp_uno::shared::CppInterfaceProxy::getOid ( ) const
inline

Definition at line 60 of file cppinterfaceproxy.hxx.

References oid.

Referenced by cpp_mediate(), and cpp_vtable_call().

typelib_InterfaceTypeDescription* bridges::cpp_uno::shared::CppInterfaceProxy::getTypeDescr ( )
inline

Definition at line 59 of file cppinterfaceproxy.hxx.

References pTypeDescr.

Referenced by cpp_mediate(), and cpp_vtable_call().

uno_Interface* bridges::cpp_uno::shared::CppInterfaceProxy::getUnoI ( )
inline

Definition at line 58 of file cppinterfaceproxy.hxx.

References pUnoI.

Referenced by cpp2uno_call().

CppInterfaceProxy& bridges::cpp_uno::shared::CppInterfaceProxy::operator= ( const CppInterfaceProxy )
privatedelete
void bridges::cpp_uno::shared::CppInterfaceProxy::releaseProxy ( )

Friends And Related Function Documentation

void freeCppInterfaceProxy ( uno_ExtEnvironment *  pEnv,
void pInterface 
)
friend

Definition at line 34 of file cppinterfaceproxy.cxx.

Referenced by acquireProxy().

Member Data Documentation

std::atomic<std::size_t> bridges::cpp_uno::shared::CppInterfaceProxy::nRef
private

Definition at line 82 of file cppinterfaceproxy.hxx.

Referenced by acquireProxy(), and releaseProxy().

OUString bridges::cpp_uno::shared::CppInterfaceProxy::oid
private

Definition at line 88 of file cppinterfaceproxy.hxx.

Referenced by acquireProxy(), CppInterfaceProxy(), and getOid().

Bridge* bridges::cpp_uno::shared::CppInterfaceProxy::pBridge
private
typelib_InterfaceTypeDescription* bridges::cpp_uno::shared::CppInterfaceProxy::pTypeDescr
private
uno_Interface* bridges::cpp_uno::shared::CppInterfaceProxy::pUnoI
private
VtableFactory::Slot* bridges::cpp_uno::shared::CppInterfaceProxy::vtables[1] = {}
private

Definition at line 90 of file cppinterfaceproxy.hxx.

Referenced by castInterfaceToProxy(), castProxyToInterface(), and create().


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