Skip to content

Config File

Michael Rolland edited this page Oct 4, 2019 · 2 revisions

To run the OPI Organizer without having to manually input information, a plaintext config file can be used. Two example config files are given.

To run the tool with a config file, use the path to the config file as a command line argument.

bash run.sh config.txt

Alternatively, use the 'Choose File' button with the GUI version of the tool.

Fields

These fields are used to set input & output locations. None are required; any unused fields will be prompted for as usual. Fields and their values are written as FIELD_NAME : value.

CSS_PATH

An absolute file path to a Control Systems Studio executable. Note that the executable must support adl2boy conversion.

EPICS_DIRECTORY

An absolute path to the folder containing all EPICS modules to be organized.

EPICS_OPI_DIRECTORY

An absolute path to the folder where organized EPICS OPIs will be placed.

AD_DIRECTORY

An absolute path to the folder containing all AreaDetector modules to be organized.

AD_OPI_DIRECTORY

An absolute path to the folder where organized AreaDetector OPIs will be placed.

Whitelisting & Blacklisting

The config file can be used to bypass confirmation prompts during module detection. Whitelisted modules will automatically be organized, while blacklisted modules will not.

Note that these statements must occur in between BEGIN_(AD or EPICS) and END_(AD or EPICS) statements that tell the tool where to search for them and each statement must be on its own line. For example:

BEGIN_AD
   ADCore
   ADProsilica : R2-3
   -ADSimDetector
   +AD: myPlugin
END_AD

BEGIN_EPICS
   asyn
   lua : R2-1
   -motor
   +EPICS: myModule R1-1
END_EPICS

Whitelisting

Whitelist modules with the format MODULE_NAME <: VERSION>.

The module name is case sensitive and must match the name of an AreaDetector or EPICS github repository.

The version is optional; if it is not present, then the tool will attempt to extract a version from the git tag of the folder. If this fails, it will prompt for a version. Note that if a version is present it will be used regardless of whether its accurate to the local installation.

A whitelisted module that is not found locally will not do anything.

Blacklisting

Blacklist modules with the format -MODULE_NAME.

Adding Additional Modules

Modules from sources outside of github can be added with the format +AD: MODULE_NAME <VERSION> or +EPICS: MODULE_NAME <VERSION>. If VERSION is not present it will default to R1-0.