Con-file
From Applied Optics Wiki
CON-FILE(5) c_scan configuration file CON-FILE(5)
NAME
con-file - configuration file for c_scan(1)
DESCRIPTION
c_scan(1) uses a configuration file called a con-file. By convention, this configuration file should be given a ".con" suffix, e.g. expt.con. A con-file consists of a set of actions to be performed. Each action usually describes a specific task to be performed, usually by a specific piece of hardware. However it is possible for a task not to involve any hardware at all (e.g. waiting for a key press), it may involve several tasks for a specific piece of hardware (setting up the parameters of a signal generator) or it may involve a specific task involving several pieces of hardware (performing higher order aberra‐ tion correction).
PARAMETERS
There are two types of action in the con-file: a child or a sibling.
The difference between a child and a sibling is that if the parent action consists of some sort of loop (termed a scan in c_scan terminol‐ ogy) then the child action will be executed at each step in the scan, whereas a sibling action will only be executed at the end of the scan.
Each (parent) action can have only one child action. If the action involves a scan, it can additionally have one (and only one) sibling action. This is not such a limitation as it initially appears to be ("How do I do TWO things at each scan step, then, eh?") because of course that single child/sibling action can contain another child action.
Due to historical reasons, a child action is usually referred to in a con-file as just an action, and a sibling action is referred to as a branch. However, the words child and action are interchangeable, as are sibling and branch. Within an action that does NOT contain a scan, all four terms are freely interchangeable.
The end of any sort of action (whether child or sibling) is denoted by the word end. However, it should be noted that if you put the word "end" before the next action (whether child or sibling) then that action will be ignored. In practice, therefore, an "end" statement marks the end of each "family tree," and there should be one "end" for each member of that family tree. Think of the "end" statement as a closing curly bracket ( "}" ) in your C/C++ code. See examples below.
The only action command that is common to most of the different sorts of action is the save command. This command saves the data acquired in any of the actions (children or siblings) that are below/part of that action. If the action in which the "save" command is given contains a scan, then the data from the child action (and any actions below the child action) will be saved at each scan step; the data from any sib‐ ling (branch) action will be saved at the end of the scan. Usually, the "save" command goes quite high up the tree.
EXAMPLES
This manual page describes the format of a c_scan con-file only, and does not aim to describe any of the (many and varied) actions them‐ selves. To find out how to write an action for a specific piece of hardware or a specific task, see the manual pages of the actions listed in the SEE ALSO section.
Example 1
The general format of a c_scan con-file is as follows:
------------------------------------------------------------ action action_name ... (instructions for that action) save ... action another_action_name ... (instructions for the second action) ... end end ------------------------------------------------------------
Note the use of tabs to differentiate between actions, to improve read‐ ability.
Example 2
A slightly more complex example, involving both child and sibling (branch) actions:
------------------------------------------------------------ action action_name ... (instructions for that action) scan start finish step save ... action another_action_name ... (instructions for the second action) (these will be executed at every point in the scan of the action above) ... end branch third_action_name ... (instructions for the third action) (these will be executed at the end of the scan of the first action) ... end end ------------------------------------------------------------
SEE ALSO
c_scan(1)
c_count(3), c_script(3), c_timer(3), c_keypress(3), c_user(3)
c_stage(3), c_move(3), c_restore(3), c_pci_stage(3), c_idac(3), c_inch‐ worm(3), c_tank
c_a2d(3), c_pc26at(3), c_pci_a2d(3)
c_pci_d2a(3)
c_tek_trace_scope(3)
c_agilent_trace_scope(3)
c_eth_ft_scope(3), c_eth_measure_scope(3), c_eth_trace_scope(3)
c_gpib_ft_scope(3), c_gpib_scope_utils(3), c_gpib_trace_scope(3)
c_gpib_sig_gen(3)
c_slm_utils(3), c_slm_scan(3), c_correct(3)
c_parport(3)
Linux OCTOBER 2004 CON-FILE(5)
Manual page con-file(5) line 24/148 (END)