30using namespace ::
cppu;
44 typelib_TypeDescriptionReference* type_XInterface
46 typelib_InterfaceTypeDescription* pTXInterfaceDescr =
nullptr;
49 assert(pTXInterfaceDescr->ppAllMembers);
52 pTXInterfaceDescr->ppAllMembers[0]);
54 TYPELIB_DANGER_RELEASE(&pTXInterfaceDescr->aBase);
61 aArgs[ 0 ] = &pDestType;
62 (*
static_cast<uno_Interface *
>(pUnoI)->pDispatcher)(
63 static_cast<uno_Interface *
>(pUnoI), g_pQITD, &aRet, aArgs, &pExc );
65 uno_Interface * ret =
nullptr;
68 typelib_TypeDescriptionReference * ret_type = aRet.pType;
69 switch (ret_type->eTypeClass)
71 case typelib_TypeClass_VOID:
74 case typelib_TypeClass_INTERFACE:
77 ret =
static_cast<uno_Interface *
>(aRet.pReserved);
88 "exception occurred querying for interface "
89 << OUString(pDestType->pTypeName) <<
": ["
90 << OUString(pExc->pType->pTypeName) <<
"] "
91 << *
static_cast<OUString
const *
>(pExc->pData));
101 typelib_CompoundTypeDescription * pCompType )
107 void * pDest,
void * pSource,
108 typelib_CompoundTypeDescription * pTypeDescr,
116 typelib_CompoundTypeDescription * pTypeDescr,
117 uno_ReleaseFunc release )
123 void * pDest,
void *pSource,
124 typelib_CompoundTypeDescription * pTypeDescr,
131 void * pDest,
void * pSource,
132 typelib_CompoundTypeDescription * pTypeDescr,
133 uno_QueryInterfaceFunc
queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release )
140 uno_Sequence * pSource,
141 typelib_TypeDescriptionReference * pElementType,
149 uno_Sequence * pSequence,
150 typelib_TypeDescriptionReference * pType,
152 uno_ReleaseFunc release )
159 uno_Sequence * pDest, uno_Sequence * pSource,
160 typelib_TypeDescriptionReference * pElementType,
172 void * pMem, typelib_TypeDescriptionReference * pType )
186 void * pValue, typelib_TypeDescriptionReference * pType,
187 uno_ReleaseFunc release )
196 uno_ReleaseFunc release )
199 _destructData( pValue, pTypeDescr->pWeakRef, pTypeDescr, release );
203 void * pDest,
void * pSource,
204 typelib_TypeDescriptionReference * pType,
205 uno_AcquireFunc acquire )
212 void * pDest,
void * pSource,
214 uno_AcquireFunc acquire )
217 _copyConstructData( pDest, pSource, pTypeDescr->pWeakRef, pTypeDescr, acquire,
nullptr );
221 void * pDest,
void * pSource,
222 typelib_TypeDescriptionReference * pType,
230 void * pDest,
void * pSource,
235 _copyConstructData( pDest, pSource, pTypeDescr->pWeakRef, pTypeDescr,
nullptr, mapping );
239 void * pVal1, typelib_TypeDescriptionReference * pVal1Type,
240 void * pVal2, typelib_TypeDescriptionReference * pVal2Type,
241 uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release )
245 pVal1, pVal1Type,
nullptr,
253 uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release )
257 pVal1, pVal1TD->pWeakRef, pVal1TD,
258 pVal2, pVal2TD->pWeakRef,
263 void * pDest, typelib_TypeDescriptionReference * pDestType,
264 void * pSource, typelib_TypeDescriptionReference * pSourceType,
265 uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release )
269 pDest, pDestType,
nullptr,
270 pSource, pSourceType,
nullptr,
277 uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release )
281 pDest, pDestTD->pWeakRef, pDestTD,
282 pSource, pSourceTD->pWeakRef, pSourceTD,
287 typelib_TypeDescriptionReference * pAssignable,
288 void * pFrom, typelib_TypeDescriptionReference * pFromType,
289 uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release )
294 if (typelib_TypeClass_INTERFACE != pFromType->eTypeClass ||
295 typelib_TypeClass_INTERFACE != pAssignable->eTypeClass)
301 if (
nullptr == pFrom)
303 void * pInterface = *
static_cast<void **
>(pFrom);
304 if (
nullptr == pInterface)
309 void *
p = (*queryInterface)( pInterface, pAssignable );
311 return (
nullptr !=
p);
void SAL_CALL uno_any_destruct(uno_Any *pValue, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL uno_assignData(void *pDest, typelib_TypeDescription *pDestTD, void *pSource, typelib_TypeDescription *pSourceTD, uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
void SAL_CALL uno_type_destructData(void *pValue, typelib_TypeDescriptionReference *pType, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
void SAL_CALL uno_destructData(void *pValue, typelib_TypeDescription *pTypeDescr, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL uno_equalData(void *pVal1, typelib_TypeDescription *pVal1TD, void *pVal2, typelib_TypeDescription *pVal2TD, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
void SAL_CALL uno_type_copyAndConvertData(void *pDest, void *pSource, typelib_TypeDescriptionReference *pType, uno_Mapping *mapping) SAL_THROW_EXTERN_C()
void SAL_CALL uno_constructData(void *pMem, typelib_TypeDescription *pTypeDescr) SAL_THROW_EXTERN_C()
void SAL_CALL uno_type_copyData(void *pDest, void *pSource, typelib_TypeDescriptionReference *pType, uno_AcquireFunc acquire) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL uno_type_equalData(void *pVal1, typelib_TypeDescriptionReference *pVal1Type, void *pVal2, typelib_TypeDescriptionReference *pVal2Type, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
void SAL_CALL uno_copyData(void *pDest, void *pSource, typelib_TypeDescription *pTypeDescr, uno_AcquireFunc acquire) SAL_THROW_EXTERN_C()
void SAL_CALL uno_type_constructData(void *pMem, typelib_TypeDescriptionReference *pType) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL uno_type_isAssignableFromData(typelib_TypeDescriptionReference *pAssignable, void *pFrom, typelib_TypeDescriptionReference *pFromType, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL uno_type_assignData(void *pDest, typelib_TypeDescriptionReference *pDestType, void *pSource, typelib_TypeDescriptionReference *pSourceType, uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release) SAL_THROW_EXTERN_C()
void SAL_CALL uno_copyAndConvertData(void *pDest, void *pSource, typelib_TypeDescription *pTypeDescr, uno_Mapping *mapping) SAL_THROW_EXTERN_C()
#define SAL_WARN(area, stream)
struct _uno_Mapping uno_Mapping
struct _typelib_TypeDescription typelib_TypeDescription
void _release(void *p, uno_ReleaseFunc release)
typelib_TypeDescriptionReference * g_pVoidType
uno_Sequence * copyConstructSequence(uno_Sequence *pSource, typelib_TypeDescriptionReference *pElementType, uno_AcquireFunc acquire, uno_Mapping *mapping)
void _destructData(void *pValue, typelib_TypeDescriptionReference *pType, typelib_TypeDescription *pTypeDescr, uno_ReleaseFunc release)
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType, Interface1 *p1)
bool equalSequence(uno_Sequence *pDest, uno_Sequence *pSource, typelib_TypeDescriptionReference *pElementType, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release)
void _destructStruct(void *pValue, typelib_CompoundTypeDescription *pTypeDescr, uno_ReleaseFunc release)
void destructSequence(uno_Sequence *pSequence, typelib_TypeDescriptionReference *pType, typelib_TypeDescription *pTypeDescr, uno_ReleaseFunc release)
void copyConstructStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_AcquireFunc acquire, uno_Mapping *mapping)
void _defaultConstructStruct(void *pMem, typelib_CompoundTypeDescription *pTypeDescr)
void _copyConstructStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_AcquireFunc acquire, uno_Mapping *mapping)
bool assignStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release)
void _defaultConstructData(void *pMem, typelib_TypeDescriptionReference *pType, typelib_TypeDescription *pTypeDescr)
bool equalStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release)
void _copyConstructData(void *pDest, void *pSource, typelib_TypeDescriptionReference *pType, typelib_TypeDescription *pTypeDescr, uno_AcquireFunc acquire, uno_Mapping *mapping)
bool _equalSequence(uno_Sequence *pDest, uno_Sequence *pSource, typelib_TypeDescriptionReference *pElementType, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release)
bool _equalStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release)
bool _assignData(void *pDest, typelib_TypeDescriptionReference *pDestType, typelib_TypeDescription *pDestTypeDescr, void *pSource, typelib_TypeDescriptionReference *pSourceType, typelib_TypeDescription *pSourceTypeDescr, uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release)
void idestructSequence(uno_Sequence *pSeq, typelib_TypeDescriptionReference *pType, typelib_TypeDescription *pTypeDescr, uno_ReleaseFunc release)
void defaultConstructStruct(void *pMem, typelib_CompoundTypeDescription *pCompType)
void destructStruct(void *pValue, typelib_CompoundTypeDescription *pTypeDescr, uno_ReleaseFunc release)
void * binuno_queryInterface(void *pUnoI, typelib_TypeDescriptionReference *pDestType)
void _destructAny(uno_Any *pAny, uno_ReleaseFunc release)
bool _assignStruct(void *pDest, void *pSource, typelib_CompoundTypeDescription *pTypeDescr, uno_QueryInterfaceFunc queryInterface, uno_AcquireFunc acquire, uno_ReleaseFunc release)
uno_Sequence * icopyConstructSequence(uno_Sequence *pSource, typelib_TypeDescriptionReference *pElementType, uno_AcquireFunc acquire, uno_Mapping *mapping)
bool _equalData(void *pDest, typelib_TypeDescriptionReference *pDestType, typelib_TypeDescription *pDestTypeDescr, void *pSource, typelib_TypeDescriptionReference *pSourceType, uno_QueryInterfaceFunc queryInterface, uno_ReleaseFunc release)
typelib_TypeDescriptionReference **SAL_CALL typelib_static_type_getByTypeClass(typelib_TypeClass eTypeClass) SAL_THROW_EXTERN_C()
void SAL_CALL typelib_typedescriptionreference_getDescription(typelib_TypeDescription **ppRet, typelib_TypeDescriptionReference *pRef) SAL_THROW_EXTERN_C()
sal_Bool SAL_CALL typelib_typedescriptionreference_isAssignableFrom(typelib_TypeDescriptionReference *pAssignable, typelib_TypeDescriptionReference *pFrom) SAL_THROW_EXTERN_C()
void SAL_CALL typelib_typedescriptionreference_release(typelib_TypeDescriptionReference *pRef) SAL_THROW_EXTERN_C()
#define SAL_THROW_EXTERN_C()