struct CCL::ITypeLibrary

Overview

Type library interface. More…

#include <itypelib.h>

struct ITypeLibrary: public CCL::IUnknown
{
    // methods

    virtual CStringPtr CCL_API getLibraryName () const = 0;
    virtual IUnknownIterator*CCL_API newTypeIterator () const = 0;
    virtual IUnknownIterator*CCL_API newEnumIterator () const = 0;

    virtual tresult CCL_API getTypeDetails (
        ITypeInfoDetails& result,
        const ITypeInfo& typeInfo
    ) const = 0;

    virtual const ITypeInfo* findTypeInfo (CStringPtr name) const = 0;
    virtual const IEnumTypeInfo* findEnumTypeInfo (CStringPtr name) const = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

Detailed Documentation

Type library interface.

Methods

virtual CStringPtr CCL_API getLibraryName () const = 0

Get name of type library.

virtual IUnknownIterator*CCL_API newTypeIterator () const = 0

Create iterator of ITypeInfo objects.

virtual IUnknownIterator*CCL_API newEnumIterator () const = 0

Create iterator of IEnumTypeInfo objects.

virtual tresult CCL_API getTypeDetails (
    ITypeInfoDetails& result,
    const ITypeInfo& typeInfo
) const = 0

Get details of given type (optional).

virtual const ITypeInfo* findTypeInfo (CStringPtr name) const = 0

Find ITypeInfo object by name.

virtual const IEnumTypeInfo* findEnumTypeInfo (CStringPtr name) const = 0

Find IEnumTypeInfo object by name.