Having defined a tool extension point, an application component must create, at runtime, an instance of each tool class that extends the extension point. The ToolSet class provides a convenient mechanism for doing this. The component simply creates a ToolSet object initialized with the extension point and a reference to the tool context. The ToolSet class creates an instance of each tool and initializes it with the specified context.
Note that IToolSet also defines an Actions property. ToolSet.Actions returns the union of calling ITool.Actions for each tool in the tool set.