transformer
An element representing the executable objects in a package.
Attributes and Elements
Attributes
| Attribute | Description | Required |
|---|---|---|
| name | The name of the transformer. | Yes |
| displayName | An description for the transformer. | No |
| className | An .Net class name for the transformer. | No |
| classAssembly | An .Net class assembly for the transformer. | No |
| programName | An external program name for the transformer. | No |
| programArguments | A set of arguments for the transformer's external program. | No |
| configurationSheet | To support multiprocessing, a transformer must use this attribute to specify a single-row datasheet that contains the columns "MinimumIteration" and "MaximumIteration". Both columns must have a dataType of "Integer". | No |
| isPipeline | Indicates that a library supports pipelines. | No |
| condaEnv | Name of the conda environment YAML file if the package is capable of using conda environments. | No |
| condaEnvVersion | The version of the conda environment YAML file if the condaEnv attribute is used. This value can start at 1 and should be incremented each time the YAML file is updated. | No |
| displayNameSource | The display name for certain SyncroSim elements (specifically transformers and datasheets) can come from an external single-row datasheet (e.g. "Terminology" in ST-Sim.) To use an external display name, set the "displayNameSource" to the external datasheet name; must also set the "displayNameColumn" to the column in that datasheet. | No |
| displayNameColumn | The display name for certain SyncroSim elements (specifically transformers and datasheets) can come from an external single-row datasheet (e.g. "Terminology" in ST-Sim.) To use an external display name, first set the "displayNameSource" to the external datasheet, and then set the "displayNameColumn" to the column in that datasheet which contains the element name. | No |
| isMultiprocessing | If true, then the transformer can participate in a multiprocessing run. | No |
| isStochasticTime | If true, then the transformer can run as a stochastic time transformer; This will also configure the transformer to participate in a multiprocessing run. | No |
| transformerSpecificOuput | Indicates whether a transformer will produce transformer specific output. If a transformer creates transformer specific output, it should have at least one datasheet with a "TransformerID" column and populate this column at runtime with its Transformer ID. This output is used for charting and mapping results. | No |
| isExport | Specifies that this is an export transformer. | No |
| column | Used for export transformers only; Specifies the column to retrieve the export data from. | No |
| dataSheet | Used for Export transformers only; Specifies the datasheet to retrieve the export data from. | No |
| isFolderExport | Used for export transformers only; Indicates that the export should be done to a folder instead of to a single file. | No |
| isRasterExport | Used for export transformers only; Indicates that the export should be done to a raster instead of to a single file. | No |
Important
The value for the name attribute must contain only alpha-numeric characters.
Child Elements
| Element |
|---|
| dataFeed |
| dataSheet |
Parent Elements
| Element |
|---|
| package |
Remarks
If you specify a className then instances of that .Net class will be created as necessary. In this case, the classAssembly must also be specified and the class must derive from SyncroSim.Core.Transformer.
Alternatively, you can specify a programName (and optionally its programArguments). In this case, SyncroSim will attempt to execute that program at model run time.
If you don't specify a className or a programName then the transformer cannot be run. However, any transformer can contain child transformers in its <runtime> section. In this case, the child transformers will be run even if the parent transformer is not runnable.