LibreOffice
LibreOffice 6.4 SDK API Reference
Exported Interfaces | List of all members
TypeDescriptionManager Service Referencepublished

This service manages type descriptions and acts as a central access point to every type description. More...

import"TypeDescriptionManager.idl";

Inheritance diagram for TypeDescriptionManager:
XHierarchicalNameAccess XSet XComponent XTypeDescriptionEnumerationAccess XInterface XEnumerationAccess XInterface XInterface XElementAccess XInterface

Exported Interfaces

interface com::sun::star::container::XHierarchicalNameAccess
 Interface to retrieve type descriptions. More...
 
interface com::sun::star::container::XSet
 You can manually add or remove a providers via this interface. More...
 
interface com::sun::star::lang::XComponent
 Interface to signal shutdown to the manager. More...
 
interface XTypeDescriptionEnumerationAccess
 Interface for creating enumerations for type descriptions supported by this TypeDescriptionManager. More...
 

Additional Inherited Members

- Public Member Functions inherited from XHierarchicalNameAccess
any getByHierarchicalName ([in] string aName) raises ( com::sun::star::container::NoSuchElementException )
 
boolean hasByHierarchicalName ([in] string aName)
 
- Public Member Functions inherited from XInterface
any queryInterface ([in] type aType)
 queries for a new interface to an existing UNO object. More...
 
void acquire ()
 increases the reference counter by one. More...
 
void release ()
 decreases the reference counter by one. More...
 
- Public Member Functions inherited from XSet
boolean has ([in] any aElement)
 
void insert ([in] any aElement) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::ElementExistException )
 inserts the given element into this container. More...
 
void remove ([in] any aElement) raises ( com::sun::star::lang::IllegalArgumentException, com::sun::star::container::NoSuchElementException )
 removes the given element from this container. More...
 
- Public Member Functions inherited from XEnumerationAccess
com::sun::star::container::XEnumeration createEnumeration ()
 
- Public Member Functions inherited from XElementAccess
type getElementType ()
 
boolean hasElements ()
 
- Protected Member Functions inherited from XComponent
void dispose ()
 The owner of an object calls this method to explicitly free all resources kept by this object and thus break cyclic references. More...
 
void addEventListener ([in] XEventListener xListener)
 adds an event listener to the object. More...
 
void removeEventListener ([in] XEventListener aListener)
 removes an event listener from the listener list. More...
 
- Protected Member Functions inherited from XTypeDescriptionEnumerationAccess
XTypeDescriptionEnumeration createTypeDescriptionEnumeration ([in] string moduleName, [in] sequence< com::sun::star::uno::TypeClass > types, [in] TypeDescriptionSearchDepth depth) raises ( NoSuchTypeNameException, InvalidTypeNameException )
 Creates an enumeration for type descriptions. More...
 

Detailed Description

This service manages type descriptions and acts as a central access point to every type description.

It delegates calls for demanded types to subsequent com::sun::star::reflection::TypeDescriptionProviders and may cache type descriptions.
Using cppuhelper's bootstrapping routines bootstrapping an initial component context, there is a singleton accessible via key "/singletons/com.sun.star.reflection.theTypeDescriptionManager". This singleton object is hooked into the C UNO runtime typelib and lives until the context is shut down.

See also
com::sun::star::reflection::TypeDescriptionProvider
com::sun::star::reflection::XTypeDescription

Exported Interfaces

◆ com::sun::star::container::XHierarchicalNameAccess

Interface to retrieve type descriptions.

In addition to the semantics specified for the corresponding interface of the TypeDescriptionProvider service (which changed slightly for LibreOffice 4.1; see there), this interface allows to retrieve the following entities:

  • The simple types are accessible via "void", "boolean", "byte", "short", "unsigned short", "long", "unsigned long", "hyper", "unsigned hyper", "float", "double", "char", "string", "type", and "any".

  • Sequence types are accessible via "[]<var>ComponentType</var>"

  • Instantiated polymorphic struct types are accessible via "<var>StructType</var>&lt;<var>Parameter</var><sub>1</sub>,&hellip;,<var>Parameter</var><sub><var>n</var></sub>&gt;".

  • Members of interface types are accessible via "<var>InterfaceType</var>::<var>Member</var>".

Even though the name of this interface suggests that the used type names are hierarchical, this doesn't need to be the case. (For example, consider the names of instantiated polymorphic struct types, like "Struct&lt;long&gt;".)

◆ com::sun::star::container::XSet

You can manually add or remove a providers via this interface.

◆ com::sun::star::lang::XComponent

Interface to signal shutdown to the manager.


This signals all providers to shut down, because usually each provider references its manager, listening for disposing events.

◆ XTypeDescriptionEnumerationAccess

Interface for creating enumerations for type descriptions supported by this TypeDescriptionManager.

Since
OOo 1.1.2

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