struct CCL::ITypeInfo

Overview

Type information interface. More…

#include <iobject.h>

struct ITypeInfo: public CCL::IUnknown
{
    // enums

    enum DataTypes;
    enum Flags;

    // structs

    struct MethodDefinition;
    struct PropertyDefinition;

    // methods

    virtual const ITypeInfo*CCL_API getParentType () const = 0;
    virtual int CCL_API getClassFlags () const = 0;
    virtual CStringPtr CCL_API getClassName () const = 0;
    virtual CStringPtr CCL_API getClassNamespace () const = 0;
    virtual UIDRef CCL_API getClassID () const = 0;
    virtual const MethodDefinition*CCL_API getMethodNames () const = 0;
    virtual const PropertyDefinition*CCL_API getPropertyNames () const = 0;
    virtual ModuleRef CCL_API getModuleReference () const = 0;
    virtual IUnknown*CCL_API createInstance () 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 information interface.

Methods

virtual const ITypeInfo*CCL_API getParentType () const = 0

Get type info of parent class (returns null for base class).

virtual int CCL_API getClassFlags () const = 0

Get class flags.

virtual CStringPtr CCL_API getClassName () const = 0

Get class name as null-terminated ASCII string.

virtual CStringPtr CCL_API getClassNamespace () const = 0

Get class namespace as null-terminated ASCII string, optional.

virtual UIDRef CCL_API getClassID () const = 0

Get unique class identifier if available, empty otherwise.

virtual const MethodDefinition*CCL_API getMethodNames () const = 0

Get null-terminated array of method definitions (optional).

virtual const PropertyDefinition*CCL_API getPropertyNames () const = 0

Get null-terminated array of property definitions (optional).

virtual ModuleRef CCL_API getModuleReference () const = 0

Get reference of module this class resides in.

virtual IUnknown*CCL_API createInstance () const = 0

Create object instance of this class.