# Cognex.Designer.ToolBlockScaler

The ToolBlockScaler plugin gives you the ability to create a single Master ToolBlock from which you can generate identical instances without having to manually maintain changes between the original and each occurrence. A ToolBlockScaler plugin can save time and reduce the risk of users failing to keep copied TooBlocks in sync.

- Within each Task, different inputs can be passed into each instance to allow configuration of the instance prior to running and returning the result.

- Each instance could be configured to run in parallel in order to increase the throughput through the processing chain.

- Instances will not load on Designer startup in order to improve the impact on startup time within the development environment. This will, however, add some loading time when transitioning to Test mode.

- Changes can be made to the Master ToolBlock without affecting the run-time instances. Deploy your changes to run-time instances when finished making changes.

- Scenarios where a ToolBlockScaler could be used ..

  - When a project is configured to manage multiple identical lines / stations - The discrete data for each line could be passed to a configured Instance.

  - When a Task is to be used as a Background Worker - Multiple instances of a TaskBlock could be passed in workload data sets from a queue of pending work which can be processed by each instance simultaneously.

The sample contains a Demo Designer project using the ToolBlockScaler Component and Blocks within four separate Tasks.

Perform the following steps to use the sample plugin:

1. Copy the Cognex.Designer.ToolBlockScaler folder into a directory storing your project.

2. Open the Cognex.Designer.ToolBlockScaler solution in Visual Studio.

3. Develop and build your plugin.

Cognex Designer makes the built plugin available at the following location:

%ProgramData%\Cognex\Designer\Plugins\Samples\Cognex.Designer.ToolBlockScaler

Verify the plugin consists of the following files:

- Cognex.Designer.Experimental.ToolBlockScaler.dll

- Cognex.Designer.Experimental.ToolBlockScaler.IDE.dll

- plugin.config