LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
Loading...
Searching...
No Matches
_typelib_InterfaceTypeDescription Struct Reference

Type description of an interface. More...

#include <typedescription.h>

Public Attributes

typelib_TypeDescription aBase
 inherits all members of typelib_TypeDescription
 
struct _typelib_InterfaceTypeDescriptionpBaseTypeDescription
 pointer to base type description, else 0
 
typelib_Uik aUik
 unique identifier of interface
 
sal_Int32 nMembers
 number of members
 
typelib_TypeDescriptionReference ** ppMembers
 array of members; references attributes or methods
 
sal_Int32 nAllMembers
 number of members including members of base interface
 
typelib_TypeDescriptionReference ** ppAllMembers
 array of members including members of base interface; references attributes or methods
 
sal_Int32 * pMapMemberIndexToFunctionIndex
 array mapping index of the member description to an index doubling for read-write attributes (called function index); size of array is nAllMembers
 
sal_Int32 nMapFunctionIndexToMemberIndex
 number of members plus number of read-write attributes
 
sal_Int32 * pMapFunctionIndexToMemberIndex
 array mapping function index to member index; size of array is nMapFunctionIndexToMemberIndex
 
sal_Int32 nBaseTypes
 number of base types
 
struct _typelib_InterfaceTypeDescription ** ppBaseTypes
 array of base type descriptions
 

Detailed Description

Type description of an interface.

Not all members are always initialized (not yet initialized members being null); there are three levels:

  • Minimally, only aBase, pBaseTypeDescription, aUik, nBaseTypes, and ppBaseTypes are initialized; aBase.bComplete is false. This only happens when an interface type description is created with typelib_static_mi_interface_type_init or typelib_static_interface_type_init.

  • At the next level, nMembers, ppMembers, nAllMembers, ppAllMembers are also initialized; aBase.bComplete is still false. This happens when an interface type description is created with typelib_typedescription_newMIInterface or typelib_typedescription_newInterface.

  • At the final level, pMapMemberIndexToFunctionIndex, nMapFunctionIndexToMemberIndex, and pMapFunctionIndexToMemberIndex are also initialized; aBase.bComplete is true. This happens after a call to typelib_typedescription_complete.

Member Data Documentation

◆ aBase

typelib_TypeDescription _typelib_InterfaceTypeDescription::aBase

inherits all members of typelib_TypeDescription

◆ aUik

typelib_Uik _typelib_InterfaceTypeDescription::aUik

unique identifier of interface

Deprecated
should always contain all-zeros

◆ nAllMembers

sal_Int32 _typelib_InterfaceTypeDescription::nAllMembers

number of members including members of base interface

◆ nBaseTypes

sal_Int32 _typelib_InterfaceTypeDescription::nBaseTypes

number of base types

Since
UDK 3.2.0

◆ nMapFunctionIndexToMemberIndex

sal_Int32 _typelib_InterfaceTypeDescription::nMapFunctionIndexToMemberIndex

number of members plus number of read-write attributes

◆ nMembers

sal_Int32 _typelib_InterfaceTypeDescription::nMembers

number of members

◆ pBaseTypeDescription

struct _typelib_InterfaceTypeDescription* _typelib_InterfaceTypeDescription::pBaseTypeDescription

pointer to base type description, else 0

Deprecated
use nBaseTypes and ppBaseTypes instead

◆ pMapFunctionIndexToMemberIndex

sal_Int32* _typelib_InterfaceTypeDescription::pMapFunctionIndexToMemberIndex

array mapping function index to member index; size of array is nMapFunctionIndexToMemberIndex

◆ pMapMemberIndexToFunctionIndex

sal_Int32* _typelib_InterfaceTypeDescription::pMapMemberIndexToFunctionIndex

array mapping index of the member description to an index doubling for read-write attributes (called function index); size of array is nAllMembers

◆ ppAllMembers

typelib_TypeDescriptionReference** _typelib_InterfaceTypeDescription::ppAllMembers

array of members including members of base interface; references attributes or methods

◆ ppBaseTypes

struct _typelib_InterfaceTypeDescription** _typelib_InterfaceTypeDescription::ppBaseTypes

array of base type descriptions

Since
UDK 3.2.0

◆ ppMembers

typelib_TypeDescriptionReference** _typelib_InterfaceTypeDescription::ppMembers

array of members; references attributes or methods


The documentation for this struct was generated from the following file: