LibreOffice
LibreOffice 25.2 SDK C/C++ API Reference
 
Loading...
Searching...
No Matches
typedescription.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20/*
21 * This file is part of LibreOffice published API.
22 */
23#ifndef INCLUDED_TYPELIB_TYPEDESCRIPTION_H
24#define INCLUDED_TYPELIB_TYPEDESCRIPTION_H
25
26#include "cppu/cppudllapi.h"
27#include "typelib/uik.h"
28#include "typelib/typeclass.h"
29#include "rtl/ustring.h"
30
31#ifdef __cplusplus
32extern "C"
33{
34#endif
35
37
38#if defined( _WIN32)
39#pragma pack(push, 8)
40#endif
41
70
120
146
171
184
206
226
244
291
346
425
443
462
483
484#if defined( _WIN32)
485#pragma pack(pop)
486#endif
487
499 rtl_uString * pTypeName,
500 sal_Int32 nDefaultValue,
501 sal_Int32 nEnumValues,
502 rtl_uString ** ppEnumNames,
503 sal_Int32 * pEnumValues )
505
523 typelib_TypeClass eTypeClass,
524 rtl_uString * pTypeName,
526 sal_Int32 nMembers,
527 typelib_CompoundMember_Init * pMembers )
529
542 rtl_uString * pTypeName,
544 sal_Int32 nMembers,
545 typelib_StructMember_Init * pMembers )
547
566 rtl_uString * pTypeName,
567 sal_uInt32 nUik1, sal_uInt16 nUik2, sal_uInt16 nUik3, sal_uInt32 nUik4, sal_uInt32 nUik5,
568 typelib_TypeDescriptionReference * pBaseInterface,
569 sal_Int32 nMembers,
572
591 rtl_uString * pTypeName,
592 sal_uInt32 nUik1, sal_uInt16 nUik2, sal_uInt16 nUik3, sal_uInt32 nUik4, sal_uInt32 nUik5,
593 sal_Int32 nBaseInterfaces,
594 typelib_TypeDescriptionReference ** ppBaseInterfaces,
595 sal_Int32 nMembers,
598
614 sal_Int32 nAbsolutePosition,
615 sal_Bool bOneWay,
616 rtl_uString * pMethodName,
617 typelib_TypeClass eReturnTypeClass,
618 rtl_uString * pReturnTypeName,
619 sal_Int32 nParams,
620 typelib_Parameter_Init * pParams,
621 sal_Int32 nExceptions,
622 rtl_uString ** ppExceptionNames )
624
640 sal_Int32 nAbsolutePosition,
641 rtl_uString * pAttributeName,
642 typelib_TypeClass eAttributeTypeClass,
643 rtl_uString * pAttributeTypeName,
644 sal_Bool bReadOnly )
646
666 sal_Int32 nAbsolutePosition,
667 rtl_uString * pAttributeName,
668 typelib_TypeClass eAttributeTypeClass,
669 rtl_uString * pAttributeTypeName,
670 sal_Bool bReadOnly,
671 sal_Int32 nGetExceptions, rtl_uString ** ppGetExceptionNames,
672 sal_Int32 nSetExceptions, rtl_uString ** ppSetExceptionNames )
674
682
691
698 typelib_TypeDescription ** ppNewDescription )
700
708 const typelib_TypeDescription * p1, const typelib_TypeDescription * p2 )
710
717 typelib_TypeDescription ** ppRet, rtl_uString * pName )
719
727 sal_Int32 nNewSize )
729
737typedef void (SAL_CALL * typelib_typedescription_Callback)(
738 void * pContext, typelib_TypeDescription ** ppRet, rtl_uString * pTypeName );
739
746 void * pContext, typelib_typedescription_Callback pCallback )
748
755 void * pContext, typelib_typedescription_Callback pCallback )
757
758
759/*----------------------------------------------------------------------------*/
760/*----------------------------------------------------------------------------*/
761/*----------------------------------------------------------------------------*/
762
772 typelib_TypeClass eTypeClass,
773 rtl_uString * pTypeName )
775
785 typelib_TypeClass eTypeClass,
786 const char * pTypeName )
788
796
805
815
825
835
843 typelib_TypeDescription * pAssignable,
846
857
868 typelib_TypeClass eTypeClass )
870
879 typelib_TypeClass eTypeClass, const char * pTypeName )
881
889 typelib_TypeDescriptionReference * pElementType )
891
907 typelib_TypeClass eTypeClass, const char * pTypeName,
909 sal_Int32 nMembers, typelib_TypeDescriptionReference ** ppMembers )
911
928 typelib_TypeDescriptionReference ** ppRef, const char * pTypeName,
930 sal_Int32 nMembers, typelib_TypeDescriptionReference ** ppMembers,
931 sal_Bool const * pParameterizedTypes )
933
942 const char * pTypeName,
945
958 const char * pTypeName,
959 sal_Int32 nBaseTypes,
960 typelib_TypeDescriptionReference ** ppBaseTypes )
962
971 const char * pTypeName,
972 sal_Int32 nDefaultValue )
974
984 typelib_TypeDescription ** ppTypeDescr )
986
988
996#if defined LIBO_INTERNAL_ONLY && defined __cplusplus
997constexpr
998#endif
999inline bool TYPELIB_TYPEDESCRIPTIONREFERENCE_ISREALLYWEAK( _typelib_TypeClass eTypeClass )
1000{
1001 return (eTypeClass == typelib_TypeClass_INTERFACE_METHOD) ||
1003}
1004
1010inline void TYPELIB_DANGER_GET( typelib_TypeDescription** ppMacroTypeDescr,
1011 typelib_TypeDescriptionReference* pMacroTypeRef )
1012{
1013 if (TYPELIB_TYPEDESCRIPTIONREFERENCE_ISREALLYWEAK( pMacroTypeRef->eTypeClass ))
1014 {
1015 typelib_typedescriptionreference_getDescription( ppMacroTypeDescr, pMacroTypeRef );
1016 }
1017 else if (!pMacroTypeRef->pType || !pMacroTypeRef->pType->pWeakRef)
1018 {
1019 typelib_typedescriptionreference_getDescription( ppMacroTypeDescr, pMacroTypeRef );
1020 if (*ppMacroTypeDescr)
1021 typelib_typedescription_release( *ppMacroTypeDescr );
1022 }
1023 else
1024 {
1025 *ppMacroTypeDescr = pMacroTypeRef->pType;
1026 }
1027}
1028
1032inline void TYPELIB_DANGER_RELEASE( typelib_TypeDescription* pDescription )
1033{
1034 if (TYPELIB_TYPEDESCRIPTIONREFERENCE_ISREALLYWEAK( pDescription->eTypeClass ))
1035 typelib_typedescription_release( pDescription );
1036}
1037
1039
1040#ifdef __cplusplus
1041}
1042#endif
1043
1044#endif
1045
1046/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
unsigned char sal_Bool
Definition types.h:38
#define SAL_THROW_EXTERN_C()
Nothrow specification for C functions.
Definition types.h:352
_typelib_TypeClass
This type class enum is binary compatible with the IDL enum com.sun.star.uno.TypeClass.
Definition typeclass.h:30
@ typelib_TypeClass_INTERFACE_ATTRIBUTE
type class of interface attribute
Definition typeclass.h:90
@ typelib_TypeClass_INTERFACE_METHOD
type class of interface method
Definition typeclass.h:88
enum _typelib_TypeClass typelib_TypeClass
This type class enum is binary compatible with the IDL enum com.sun.star.uno.TypeClass.
CPPU_DLLPUBLIC void typelib_typedescription_newInterface(typelib_InterfaceTypeDescription **ppRet, rtl_uString *pTypeName, sal_uInt32 nUik1, sal_uInt16 nUik2, sal_uInt16 nUik3, sal_uInt32 nUik4, sal_uInt32 nUik5, typelib_TypeDescriptionReference *pBaseInterface, sal_Int32 nMembers, typelib_TypeDescriptionReference **ppMembers) SAL_THROW_EXTERN_C()
Creates an interface type description.
struct SAL_DLLPUBLIC_RTTI _typelib_TypeDescription typelib_TypeDescription
Full type description of a type.
struct SAL_DLLPUBLIC_RTTI _typelib_InterfaceTypeDescription typelib_InterfaceTypeDescription
Type description of an interface.
CPPU_DLLPUBLIC sal_Bool typelib_typedescription_isAssignableFrom(typelib_TypeDescription *pAssignable, typelib_TypeDescription *pFrom) SAL_THROW_EXTERN_C()
Tests if values of type pAssignable can be assigned by values of type pFrom.
struct _typelib_CompoundTypeDescription typelib_CompoundTypeDescription
Type description for exception types.
CPPU_DLLPUBLIC sal_Bool typelib_typedescriptionreference_isAssignableFrom(typelib_TypeDescriptionReference *pAssignable, typelib_TypeDescriptionReference *pFrom) SAL_THROW_EXTERN_C()
Tests if values of type pAssignable can be assigned by values of type pFrom.
CPPU_DLLPUBLIC void typelib_static_enum_type_init(typelib_TypeDescriptionReference **ppRef, const char *pTypeName, sal_Int32 nDefaultValue) SAL_THROW_EXTERN_C()
Inits incomplete static enum type reference.
CPPU_DLLPUBLIC void typelib_static_sequence_type_init(typelib_TypeDescriptionReference **ppRef, typelib_TypeDescriptionReference *pElementType) SAL_THROW_EXTERN_C()
Inits static sequence type reference.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_release(typelib_TypeDescriptionReference *pRef) SAL_THROW_EXTERN_C()
Increments reference count of type description reference.
CPPU_DLLPUBLIC void typelib_typedescription_newInterfaceMethod(typelib_InterfaceMethodTypeDescription **ppRet, sal_Int32 nAbsolutePosition, sal_Bool bOneWay, rtl_uString *pMethodName, typelib_TypeClass eReturnTypeClass, rtl_uString *pReturnTypeName, sal_Int32 nParams, typelib_Parameter_Init *pParams, sal_Int32 nExceptions, rtl_uString **ppExceptionNames) SAL_THROW_EXTERN_C()
Creates an interface method type description.
CPPU_DLLPUBLIC void typelib_static_compound_type_init(typelib_TypeDescriptionReference **ppRef, typelib_TypeClass eTypeClass, const char *pTypeName, typelib_TypeDescriptionReference *pBaseType, sal_Int32 nMembers, typelib_TypeDescriptionReference **ppMembers) SAL_THROW_EXTERN_C()
Inits incomplete static compound type reference.
CPPU_DLLPUBLIC void typelib_static_interface_type_init(typelib_TypeDescriptionReference **ppRef, const char *pTypeName, typelib_TypeDescriptionReference *pBaseType) SAL_THROW_EXTERN_C()
Inits incomplete static interface type reference.
struct _typelib_StructMember_Init typelib_StructMember_Init
Init struct of members for typelib_typedescription_newStruct().
CPPU_DLLPUBLIC void typelib_static_struct_type_init(typelib_TypeDescriptionReference **ppRef, const char *pTypeName, typelib_TypeDescriptionReference *pBaseType, sal_Int32 nMembers, typelib_TypeDescriptionReference **ppMembers, sal_Bool const *pParameterizedTypes) SAL_THROW_EXTERN_C()
Inits incomplete static struct type reference.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_new(typelib_TypeDescriptionReference **ppTDR, typelib_TypeClass eTypeClass, rtl_uString *pTypeName) SAL_THROW_EXTERN_C()
Creates a type description reference.
CPPU_DLLPUBLIC sal_Bool typelib_typedescription_equals(const typelib_TypeDescription *p1, const typelib_TypeDescription *p2) SAL_THROW_EXTERN_C()
Tests whether two types descriptions are equal, i.e.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_getDescription(typelib_TypeDescription **ppRet, typelib_TypeDescriptionReference *pRef) SAL_THROW_EXTERN_C()
Retrieves the type description for a given reference.
struct _typelib_MethodParameter typelib_MethodParameter
Description of an interface method parameter.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_acquire(typelib_TypeDescriptionReference *pRef) SAL_THROW_EXTERN_C()
Increments reference count of type description reference.
struct SAL_DLLPUBLIC_RTTI _typelib_TypeDescriptionReference typelib_TypeDescriptionReference
Holds a weak reference to a type description.
CPPU_DLLPUBLIC void typelib_typedescription_revokeCallback(void *pContext, typelib_typedescription_Callback pCallback) SAL_THROW_EXTERN_C()
Revokes a previously registered callback function.
void(* typelib_typedescription_Callback)(void *pContext, typelib_TypeDescription **ppRet, rtl_uString *pTypeName)
Function pointer declaration of callback function get additional descriptions.
Definition typedescription.h:737
CPPU_DLLPUBLIC void typelib_typedescription_registerCallback(void *pContext, typelib_typedescription_Callback pCallback) SAL_THROW_EXTERN_C()
Registers callback function providing additional type descriptions.
struct _typelib_InterfaceMemberTypeDescription typelib_InterfaceMemberTypeDescription
Common base type description of typelib_InterfaceMethodTypeDescription and typelib_InterfaceAttribute...
struct _typelib_CompoundMember_Init typelib_CompoundMember_Init
Init struct of compound members for typelib_typedescription_new().
struct _typelib_Parameter_Init typelib_Parameter_Init
Init struct of interface methods for typelib_typedescription_new().
CPPU_DLLPUBLIC void typelib_typedescription_newStruct(typelib_TypeDescription **ppRet, rtl_uString *pTypeName, typelib_TypeDescriptionReference *pType, sal_Int32 nMembers, typelib_StructMember_Init *pMembers) SAL_THROW_EXTERN_C()
Creates a new struct type description.
CPPU_DLLPUBLIC void typelib_typedescription_acquire(typelib_TypeDescription *pDesc) SAL_THROW_EXTERN_C()
Increments reference count of given type description.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_assign(typelib_TypeDescriptionReference **ppDest, typelib_TypeDescriptionReference *pSource) SAL_THROW_EXTERN_C()
Assigns a type.
CPPU_DLLPUBLIC void typelib_typedescription_newMIInterface(typelib_InterfaceTypeDescription **ppRet, rtl_uString *pTypeName, sal_uInt32 nUik1, sal_uInt16 nUik2, sal_uInt16 nUik3, sal_uInt32 nUik4, sal_uInt32 nUik5, sal_Int32 nBaseInterfaces, typelib_TypeDescriptionReference **ppBaseInterfaces, sal_Int32 nMembers, typelib_TypeDescriptionReference **ppMembers) SAL_THROW_EXTERN_C()
Creates a multiple-inheritance interface type description.
struct _typelib_InterfaceAttributeTypeDescription typelib_InterfaceAttributeTypeDescription
The description of an interface attribute.
CPPU_DLLPUBLIC typelib_TypeDescriptionReference ** typelib_static_type_getByTypeClass(typelib_TypeClass eTypeClass) SAL_THROW_EXTERN_C()
Gets static type reference of standard types by type class.
struct _typelib_StructTypeDescription typelib_StructTypeDescription
Type description for struct types.
CPPU_DLLPUBLIC void typelib_typedescription_newExtendedInterfaceAttribute(typelib_InterfaceAttributeTypeDescription **ppRet, sal_Int32 nAbsolutePosition, rtl_uString *pAttributeName, typelib_TypeClass eAttributeTypeClass, rtl_uString *pAttributeTypeName, sal_Bool bReadOnly, sal_Int32 nGetExceptions, rtl_uString **ppGetExceptionNames, sal_Int32 nSetExceptions, rtl_uString **ppSetExceptionNames) SAL_THROW_EXTERN_C()
Creates an extended interface attribute type description.
CPPU_DLLPUBLIC void typelib_typedescription_newInterfaceAttribute(typelib_InterfaceAttributeTypeDescription **ppRet, sal_Int32 nAbsolutePosition, rtl_uString *pAttributeName, typelib_TypeClass eAttributeTypeClass, rtl_uString *pAttributeTypeName, sal_Bool bReadOnly) SAL_THROW_EXTERN_C()
Creates an interface attribute type description.
CPPU_DLLPUBLIC void typelib_typedescription_new(typelib_TypeDescription **ppRet, typelib_TypeClass eTypeClass, rtl_uString *pTypeName, typelib_TypeDescriptionReference *pType, sal_Int32 nMembers, typelib_CompoundMember_Init *pMembers) SAL_THROW_EXTERN_C()
Creates a new type description.
CPPU_DLLPUBLIC void typelib_typedescription_release(typelib_TypeDescription *pDesc) SAL_THROW_EXTERN_C()
Decrements reference count of given type.
CPPU_DLLPUBLIC void typelib_typedescription_register(typelib_TypeDescription **ppNewDescription) SAL_THROW_EXTERN_C()
Registers a type description and creates a type description reference.
struct _typelib_EnumTypeDescription typelib_EnumTypeDescription
Type description of an enum.
CPPU_DLLPUBLIC void typelib_typedescription_getByName(typelib_TypeDescription **ppRet, rtl_uString *pName) SAL_THROW_EXTERN_C()
Retrieves a type description via its fully qualified name.
CPPU_DLLPUBLIC void typelib_static_type_init(typelib_TypeDescriptionReference **ppRef, typelib_TypeClass eTypeClass, const char *pTypeName) SAL_THROW_EXTERN_C()
Inits static type reference.
struct _typelib_IndirectTypeDescription typelib_IndirectTypeDescription
Type description of a sequence.
CPPU_DLLPUBLIC void typelib_typedescriptionreference_newByAsciiName(typelib_TypeDescriptionReference **ppTDR, typelib_TypeClass eTypeClass, const char *pTypeName) SAL_THROW_EXTERN_C()
Creates a type description reference.
CPPU_DLLPUBLIC void typelib_static_mi_interface_type_init(typelib_TypeDescriptionReference **ppRef, const char *pTypeName, sal_Int32 nBaseTypes, typelib_TypeDescriptionReference **ppBaseTypes) SAL_THROW_EXTERN_C()
Inits incomplete static multiple-inheritance interface type reference.
CPPU_DLLPUBLIC sal_Bool typelib_typedescription_complete(typelib_TypeDescription **ppTypeDescr) SAL_THROW_EXTERN_C()
Completes a typedescription to be used for, e.g., marshalling values.
CPPU_DLLPUBLIC void typelib_typedescription_newEnum(typelib_TypeDescription **ppRet, rtl_uString *pTypeName, sal_Int32 nDefaultValue, sal_Int32 nEnumValues, rtl_uString **ppEnumNames, sal_Int32 *pEnumValues) SAL_THROW_EXTERN_C()
Creates an enum type description.
CPPU_DLLPUBLIC void typelib_setCacheSize(sal_Int32 nNewSize) SAL_THROW_EXTERN_C()
Sets size of type description cache.
CPPU_DLLPUBLIC sal_Bool typelib_typedescriptionreference_equals(const typelib_TypeDescriptionReference *p1, const typelib_TypeDescriptionReference *p2) SAL_THROW_EXTERN_C()
Tests whether two types description references are equal, i.e.
struct _typelib_InterfaceMethodTypeDescription typelib_InterfaceMethodTypeDescription
Type description of an interface method.
struct _typelib_Uik typelib_Uik
Binary typelib uik struct.
#define CPPU_DLLPUBLIC
Definition cppudllapi.h:13
Holds a weak reference to a type description.
Definition typedescription.h:45
sal_Int32 nRefCount
reference count of type; don't ever modify this by yourself, use typelib_typedescriptionreference_acq...
Definition typedescription.h:49
void * pUniqueIdentifier
pointer to optimize the runtime; not for public use
Definition typedescription.h:65
typelib_TypeClass eTypeClass
type class of type
Definition typedescription.h:56
struct _typelib_TypeDescription * pType
pointer to full typedescription; this value is only valid if the type is never swapped out
Definition typedescription.h:62
void * pReserved
reserved for future use; 0 if not used
Definition typedescription.h:68
sal_Int32 nStaticRefCount
number of static references of type, because of the fact that some types are needed until program ter...
Definition typedescription.h:53
rtl_uString * pTypeName
fully qualified name of type
Definition typedescription.h:59
Full type description of a type.
Definition typedescription.h:76
sal_Int32 nSize
size of type
Definition typedescription.h:109
sal_Int32 nRefCount
reference count; don't ever modify this by yourself, use typelib_typedescription_acquire() and typeli...
Definition typedescription.h:80
struct _typelib_TypeDescription * pSelf
pointer to self to distinguish reference from description; for internal use only
Definition typedescription.h:93
sal_Bool bComplete
flag to determine whether the description is complete: compound types lack of member names,...
Definition typedescription.h:106
rtl_uString * pTypeName
fully qualified name of type
Definition typedescription.h:90
sal_Bool bOnDemand
determines, if type can be unloaded (and it is possible to reloaded it)
Definition typedescription.h:118
sal_Int32 nStaticRefCount
number of static references of type, because of the fact that some types are needed until program ter...
Definition typedescription.h:84
sal_Int32 nAlignment
alignment of type
Definition typedescription.h:112
typelib_TypeClass eTypeClass
type class of type
Definition typedescription.h:87
typelib_TypeDescriptionReference * pWeakRef
pointer to weak reference
Definition typedescription.h:115
void * pReserved
reserved for future use; 0 if not used
Definition typedescription.h:99
void * pUniqueIdentifier
pointer to optimize the runtime; not for public use
Definition typedescription.h:96
Type description for exception types.
Definition typedescription.h:124
sal_Int32 nMembers
number of members
Definition typedescription.h:135
typelib_TypeDescriptionReference ** ppTypeRefs
members of the struct or exception
Definition typedescription.h:141
struct _typelib_CompoundTypeDescription * pBaseTypeDescription
pointer to base type description, else 0
Definition typedescription.h:131
rtl_uString ** ppMemberNames
member names of the struct or exception
Definition typedescription.h:144
sal_Int32 * pMemberOffsets
byte offsets of each member including the size the base type
Definition typedescription.h:138
typelib_TypeDescription aBase
inherits all members of typelib_TypeDescription
Definition typedescription.h:127
Type description for struct types.
Definition typedescription.h:157
typelib_CompoundTypeDescription aBase
Derived from typelib_CompoundTypeDescription.
Definition typedescription.h:161
sal_Bool * pParameterizedTypes
Flags for direct members, specifying whether they are of parameterized type (true) or explicit type (...
Definition typedescription.h:169
Type description of a sequence.
Definition typedescription.h:175
typelib_TypeDescription aBase
inherits all members of typelib_TypeDescription
Definition typedescription.h:178
typelib_TypeDescriptionReference * pType
pointer to element type
Definition typedescription.h:182
Type description of an enum.
Definition typedescription.h:188
sal_Int32 * pEnumValues
values of enum (corresponding to names in similar order)
Definition typedescription.h:204
sal_Int32 nDefaultEnumValue
first value of the enum
Definition typedescription.h:195
sal_Int32 nEnumValues
number of enum values
Definition typedescription.h:198
typelib_TypeDescription aBase
inherits all members of typelib_TypeDescription
Definition typedescription.h:191
rtl_uString ** ppEnumNames
names of enum values
Definition typedescription.h:201
Description of an interface method parameter.
Definition typedescription.h:210
typelib_TypeDescriptionReference * pTypeRef
type of parameter
Definition typedescription.h:216
rtl_uString * pName
name of parameter
Definition typedescription.h:213
sal_Bool bIn
true: the call type of this parameter is [in] or [inout] false: the call type of this parameter is [o...
Definition typedescription.h:220
sal_Bool bOut
true: the call type of this parameter is [out] or [inout] false: the call type of this parameter is [...
Definition typedescription.h:224
Common base type description of typelib_InterfaceMethodTypeDescription and typelib_InterfaceAttribute...
Definition typedescription.h:231
typelib_TypeDescription aBase
inherits all members of typelib_TypeDescription
Definition typedescription.h:234
sal_Int32 nPosition
position of member in the interface including the number of members of any base interfaces
Definition typedescription.h:239
rtl_uString * pMemberName
name of member
Definition typedescription.h:242
Type description of an interface method.
Definition typedescription.h:249
typelib_InterfaceMemberTypeDescription aBase
inherits all members of typelib_InterfaceMemberTypeDescription
Definition typedescription.h:252
typelib_MethodParameter * pParams
array of parameters
Definition typedescription.h:262
typelib_TypeDescriptionReference ** ppExceptions
array of exception types
Definition typedescription.h:268
typelib_TypeDescriptionReference * pBaseRef
the inherited direct base method (null for a method that is not inherited)
Definition typedescription.h:281
sal_Int32 nParams
number of parameters
Definition typedescription.h:259
typelib_TypeDescriptionReference * pReturnTypeRef
type of the return value
Definition typedescription.h:256
sal_Int32 nIndex
if pBaseRef is null, the member position of this method within pInterface, not counting members inher...
Definition typedescription.h:289
sal_Int32 nExceptions
number of exceptions
Definition typedescription.h:265
struct _typelib_InterfaceTypeDescription * pInterface
the interface description this method is a member of
Definition typedescription.h:275
sal_Bool bOneWay
determines whether method is declared oneway
Definition typedescription.h:271
The description of an interface attribute.
Definition typedescription.h:296
typelib_InterfaceMemberTypeDescription aBase
inherits all members of typelib_InterfaceMemberTypeDescription
Definition typedescription.h:299
sal_Int32 nSetExceptions
number of setter exceptions
Definition typedescription.h:339
typelib_TypeDescriptionReference * pAttributeTypeRef
type of the attribute
Definition typedescription.h:306
sal_Int32 nIndex
if pBaseRef is null, the member position of this attribute within pInterface, not counting members in...
Definition typedescription.h:324
typelib_TypeDescriptionReference ** ppSetExceptions
array of setter exception types
Definition typedescription.h:344
sal_Bool bReadOnly
determines whether attribute is read only
Definition typedescription.h:303
typelib_TypeDescriptionReference * pBaseRef
the inherited direct base attribute (null for an attribute that is not inherited)
Definition typedescription.h:316
struct _typelib_InterfaceTypeDescription * pInterface
the interface description this attribute is a member of
Definition typedescription.h:310
sal_Int32 nGetExceptions
number of getter exceptions
Definition typedescription.h:329
typelib_TypeDescriptionReference ** ppGetExceptions
array of getter exception types
Definition typedescription.h:334
Type description of an interface.
Definition typedescription.h:375
typelib_TypeDescriptionReference ** ppMembers
array of members; references attributes or methods
Definition typedescription.h:397
sal_Int32 nMembers
number of members
Definition typedescription.h:394
sal_Int32 * pMapMemberIndexToFunctionIndex
array mapping index of the member description to an index doubling for read-write attributes (called ...
Definition typedescription.h:407
sal_Int32 nAllMembers
number of members including members of base interface
Definition typedescription.h:400
sal_Int32 * pMapFunctionIndexToMemberIndex
array mapping function index to member index; size of array is nMapFunctionIndexToMemberIndex
Definition typedescription.h:413
sal_Int32 nBaseTypes
number of base types
Definition typedescription.h:418
typelib_TypeDescription aBase
inherits all members of typelib_TypeDescription
Definition typedescription.h:378
struct _typelib_InterfaceTypeDescription * pBaseTypeDescription
pointer to base type description, else 0
Definition typedescription.h:385
sal_Int32 nMapFunctionIndexToMemberIndex
number of members plus number of read-write attributes
Definition typedescription.h:410
struct _typelib_InterfaceTypeDescription ** ppBaseTypes
array of base type descriptions
Definition typedescription.h:423
typelib_Uik aUik
unique identifier of interface
Definition typedescription.h:391
typelib_TypeDescriptionReference ** ppAllMembers
array of members including members of base interface; references attributes or methods
Definition typedescription.h:403
Init struct of compound members for typelib_typedescription_new().
Definition typedescription.h:429
rtl_uString * pTypeName
name of type of compound member
Definition typedescription.h:438
typelib_TypeClass eTypeClass
type class of compound member
Definition typedescription.h:432
rtl_uString * pMemberName
name of compound member
Definition typedescription.h:441
Init struct of members for typelib_typedescription_newStruct().
Definition typedescription.h:450
sal_Bool bParameterizedType
Flag specifying whether the member is of parameterized type (true) or explicit type (false).
Definition typedescription.h:460
typelib_CompoundMember_Init aBase
Derived from typelib_CompoundMember_Init;.
Definition typedescription.h:454
Init struct of interface methods for typelib_typedescription_new().
Definition typedescription.h:466
rtl_uString * pTypeName
name of parameter
Definition typedescription.h:472
rtl_uString * pParamName
name of parameter
Definition typedescription.h:475
sal_Bool bIn
true, if parameter is [in] or [inout]
Definition typedescription.h:478
typelib_TypeClass eTypeClass
type class of parameter
Definition typedescription.h:469
sal_Bool bOut
true, if parameter is [out] or [inout]
Definition typedescription.h:481