IInterfaceDef Interface
See Also
The properties, methods, and collections that a class implements are organized into functionally related groups. Each group is implemented as a COM interface. The properties, methods, and collections of each interface are members of the interface. An interface definition is the template to which an interface conforms.
To add a new interface to the Repository, use the IClassDef interface or the IReposTypeLib interface.
When to Use
Use the IInterfaceDef interface to:
-
Retrieve or modify properties of an interface definition.
-
Determine which members are attached to an interface definition.
-
Determine which classes implement an interface.
-
Determine the base interface from which an interface derives.
-
Determine what interfaces derive from a particular interface.
-
Determine what Repository objects expose a particular interface.
-
Add a new property, method, or collection type to an interface definition.
Properties
Property |
Description |
Flags |
Flags that specify whether the interface is extensible, and whether the interface should be visible to Automation interface queries. |
InterfaceID |
The global interface identifier for the interface. |
TableName |
The name of the SQL table that is used to store instance information for the properties of the interface. |
Methods
IUnknown Method |
Description |
QueryInterface |
Returns pointers to supported interfaces. |
AddRef |
Increments the reference count. |
Release |
Decrements the reference count. |
IDispatch Method |
Description |
GetIDsOfNames |
Maps a single member and a set of argument names to a corresponding set of dispatch identifiers. |
GetTypeInfo |
Retrieves a type information object, which can be used to get the type information for an interface. |
GetTypeInfoCount |
Retrieves the number of type information interfaces that an object provides (either 0 or 1). |
Invoke |
Provides access to properties and methods exposed by an Automation object. |
IRepositoryDispatch Method |
Description |
get_Properties |
Retrieves the IReposProperties interface pointer. The IReposProperties interface provides access to the Properties collection. |
IInterfaceDef Method |
Description |
CreateMethodDef |
Creates a new method definition, and attaches it to the interface definition. |
CreatePropertyDef |
Creates a new property definition, and attaches it to the interface definition. |
CreateRelationshipColDef |
Creates a relationship collection type. The collection type is attached to the interface definition. |
ObjectInstances |
Materializes an IObjectCol interface pointer for the collection of all objects in the Repository that expose this interface. |
Collections
Collection |
Description |
Ancestor |
The collection of one base interface from which this interface derives. |
Classes |
The collection of classes that implement the interface. |
Descendants |
The collection of other interfaces that derive from this interface. |
Members |
The collection of members that are attached to the interface definition. |