The properties, methods, and collections that a class implements are organized into functionally related groups. Each group is implemented as a repository 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 Microsoft® Repository, use the ClassDef object or the ReposTypeLib object.
An InterfaceDef object is also a RepositoryObject object. In addition to the members described here, InterfaceDef objects also provide the members that are defined for repository objects.
Use the InterfaceDef class to:
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. |
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 ObjectCol collection of all objects in the repository that expose this interface. |
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 exposed by the interface. |
ItemInCollections | This collection is empty for interface definitions. |
Properties | The collection of all persistent properties that are attached to the InterfaceDef object. |
ReposTypeLibScopes | The collection of all Microsoft® Repository type libraries that contain this definition. |