Introduction -- ReadoutGUI API introduction


This section of manual pages describe the API presented by the ReadoutGUI. While you may naturally find additional methods if you inspect source code, these are not guaranteed to be stable over a major release of NSCLDAQ. Use them at your peril.


The API is broken up int packages of related functionality. These packages are instaled in the TclLibs directory tree of your NSCLDAQ installation. If DAQROOT is an environment variable that points to the top level diretory of your NSLCDAQ installation, you can make these packages available by first:

set pkghome [file join $::env(DAQROOT) TclLibs]
lappend auto_path $pkghome

Below are brief descriptions of the API packages with pointers to the reference pages that describe them:


This package provides the bells class. This can be used to ring alarm bells in accordance with some pattern.

See bells for reference information.


Provides a manager for configuration data. This package allows you to define configuration variables and their defaults. It also supports overidding default values with environment variables. Normally this package is used in conjunction with the StateManager package to save and restore the state of configuration parameters to the configuration file.

See Configuration for reference information.


Provides access to parameters that affect data taking. This package provides both query and modify access. It uses the Configuration package above.

See DAQParameters for reference information.


This package manages the data source providers and data sources. You need to interact with this package if you want to create data sources yourself (e.g. to create an exportable pre-packaged ReadoutGUI for a specific setup).

See DataSourceManager


This package provides the user interface elements that prompt for data source parameters. It provides at least one useful class DialogWrapper which can be used to build custom prompters for data source providers.

See DataSourceUI


Provides simple error/warning/info dialogs. See: Diagnostics


Provides read/write access to configuration parameters that determine where event data and related meta-data are stored. See: ExpFileSystemConfig


Provides the readout GUI application class which strings everything together. See ReadoutGui


Provides a group of API elements that allow you to modify the user interface presented by the ReadoutGuiApp application object. See: ReadoutGUIPanel


Implements the run state machine. This also provides the mechanism to register custom callback bundles. See: RunStateMachine


Provides a package that supports simple Tcl configuration files. A simple Tcl configuration file is a script with a bunch of set commands that define configuration variables. The package allows you define variables that are exported/imported from these files and getters and setters for those variables.

See StateManager


Provides access to all elements of the user interface. Before using this package, see if you needs are met by the ReadoutGUIPanel package since that tends to be easier to use.

See ui