The classes and interfaces of this package appear as parameter and result types of the
interfaces in the kernel.extension
package. Parameter objects resemble
additional context data provided to the extension, while result objects are required from the
extension.
On the kernel level the context information is usually empty, i.e., the respective interface is only a marker interface. Higher layers of the tool architecture may extend these interfaces with additional pieces of information. Here, the kernel is only the mediator between plugable parts of the tool.
Some of the result objects provide additional methods, which are used by the
kernel at a later time after requesting it from the extension (e.g. once the
ITopLevelElement
is known to the kernel, the runAsCommand
method will be called whenever some change to the model must be applied).