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

Holding environments and mappings. More...

#include <bridge.hxx>

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

Classes

struct  Mapping
 

Public Member Functions

void acquire ()
 
void release ()
 
uno_ExtEnvironment * getCppEnv ()
 
uno_ExtEnvironment * getUnoEnv ()
 
uno_MappinggetCpp2Uno ()
 
uno_MappinggetUno2Cpp ()
 

Static Public Member Functions

static uno_MappingcreateMapping (uno_ExtEnvironment *pCppEnv, uno_ExtEnvironment *pUnoEnv, bool bExportCpp2Uno)
 

Private Member Functions

 Bridge (Bridge const &)=delete
 
Bridgeoperator= (const Bridge &)=delete
 
 Bridge (uno_ExtEnvironment *pCppEnv_, uno_ExtEnvironment *pUnoEnv_, bool bExportCpp2Uno_)
 
 ~Bridge ()
 

Private Attributes

std::atomic< std::size_t > nRef
 
uno_ExtEnvironment * pCppEnv
 
uno_ExtEnvironment * pUnoEnv
 
Mapping aCpp2Uno
 
Mapping aUno2Cpp
 
bool bExportCpp2Uno
 

Friends

void freeMapping (uno_Mapping *pMapping)
 
void acquireMapping (uno_Mapping *pMapping)
 
void releaseMapping (uno_Mapping *pMapping)
 
void cpp2unoMapping (uno_Mapping *pMapping, void **ppUnoI, void *pCppI, typelib_InterfaceTypeDescription *pTypeDescr)
 
void uno2cppMapping (uno_Mapping *pMapping, void **ppCppI, void *pUnoI, typelib_InterfaceTypeDescription *pTypeDescr)
 

Detailed Description

Holding environments and mappings.

Definition at line 54 of file bridge.hxx.

Constructor & Destructor Documentation

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

Referenced by createMapping().

bridges::cpp_uno::shared::Bridge::Bridge ( uno_ExtEnvironment *  pCppEnv_,
uno_ExtEnvironment *  pUnoEnv_,
bool  bExportCpp2Uno_ 
)
private
bridges::cpp_uno::shared::Bridge::~Bridge ( )
private

Definition at line 202 of file bridge.cxx.

References pCppEnv, and pUnoEnv.

Member Function Documentation

void bridges::cpp_uno::shared::Bridge::acquire ( )
uno_Mapping * bridges::cpp_uno::shared::Bridge::createMapping ( uno_ExtEnvironment *  pCppEnv,
uno_ExtEnvironment *  pUnoEnv,
bool  bExportCpp2Uno 
)
static

Definition at line 142 of file bridge.cxx.

References aCpp2Uno, aUno2Cpp, bridge, and Bridge().

Referenced by uno_ext_getMapping().

uno_Mapping* bridges::cpp_uno::shared::Bridge::getCpp2Uno ( )
inline

Definition at line 72 of file bridge.hxx.

References aCpp2Uno.

Referenced by cpp2uno_call(), and cpp_call().

uno_ExtEnvironment* bridges::cpp_uno::shared::Bridge::getCppEnv ( )
inline
uno_Mapping* bridges::cpp_uno::shared::Bridge::getUno2Cpp ( )
inline

Definition at line 73 of file bridge.hxx.

References aUno2Cpp.

Referenced by cpp2uno_call(), and cpp_call().

uno_ExtEnvironment* bridges::cpp_uno::shared::Bridge::getUnoEnv ( )
inline
Bridge& bridges::cpp_uno::shared::Bridge::operator= ( const Bridge )
privatedelete
void bridges::cpp_uno::shared::Bridge::release ( )

Friends And Related Function Documentation

void acquireMapping ( uno_Mapping pMapping)
friend

Definition at line 41 of file bridge.cxx.

Referenced by Bridge().

void cpp2unoMapping ( uno_Mapping pMapping,
void **  ppUnoI,
void pCppI,
typelib_InterfaceTypeDescription *  pTypeDescr 
)
friend

Definition at line 51 of file bridge.cxx.

Referenced by Bridge().

void freeMapping ( uno_Mapping pMapping)
friend

Definition at line 36 of file bridge.cxx.

Referenced by acquire().

void releaseMapping ( uno_Mapping pMapping)
friend

Definition at line 46 of file bridge.cxx.

Referenced by Bridge().

void uno2cppMapping ( uno_Mapping pMapping,
void **  ppCppI,
void pUnoI,
typelib_InterfaceTypeDescription *  pTypeDescr 
)
friend

Definition at line 97 of file bridge.cxx.

Referenced by Bridge().

Member Data Documentation

Mapping bridges::cpp_uno::shared::Bridge::aCpp2Uno
private

Definition at line 94 of file bridge.hxx.

Referenced by acquire(), Bridge(), createMapping(), getCpp2Uno(), and release().

Mapping bridges::cpp_uno::shared::Bridge::aUno2Cpp
private

Definition at line 95 of file bridge.hxx.

Referenced by acquire(), Bridge(), createMapping(), getUno2Cpp(), and release().

bool bridges::cpp_uno::shared::Bridge::bExportCpp2Uno
private

Definition at line 97 of file bridge.hxx.

Referenced by acquire(), and release().

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

Definition at line 89 of file bridge.hxx.

Referenced by acquire(), and release().

uno_ExtEnvironment* bridges::cpp_uno::shared::Bridge::pCppEnv
private
uno_ExtEnvironment* bridges::cpp_uno::shared::Bridge::pUnoEnv
private

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