controlpush --  Push epics data into a Tcl Server (e.g. production readout).


controlpush [options...] files...


Options that govern the actions of the program are:

-h --help

Writes brief program help to stdout.

-V --version

Writes the program version number to stdout.

-pportnum --port=portnum

portnum is the number of the port to which controlpush will attempt to connect. See OPERATION below to know what controlpush does once it has connected

-iinterval --interval=intervale

Specifies the refresh interval in seconds.

-nhost --node=host

Specifies the node to which the controlserver will connect.

-a (--authorize)

Specifies that controlpush is connecting to a Tcl server that requires user authentication. This should be used when controlpush is connecting to a tclserver at nscldaq 8.1 or later.


controlpush reads its configuration file and establishes epics lists that will update automatically via epics notifications. controlpush next connects to its server and periodically sends a batch of Tcl set commands to maintain the following Tcl global arrays:


Is the most recently received update for channelName.


Are the engineering units for channelName


Is the timestamp of the alst update received for channelName.

controlpush continues to run until the socket that is connected to its server is closed, at which point it exits.


controlpush configuration files are simple text files. Each line is either a or a channel.

Comments consist of blank lines or lines whose first non-whitepsace is the pound (#) character.

Channel lines, have as their first non-whitespace word, the name of an EPICS channel. All text following the channel name on a channel line is ignored by this program. Note, however that other software (notably epicsdisplay) may parse additional characters for their own purposes.