The set-up database is a relational database: The various tables are not independent, and it is not necessary to provide complete information needed for a particular application in one single table. Instead, the tables are structured such that pieces of information from different tables can be connected, and the complete information can be collected from different tables as needed. An example: When you want to modify the CFD threshold of a detector, you need to know the current value, you need to know the CAMAC address of the appropriate discriminator, and you need to know what type of discriminator you are talking to. In a relational database, you do not need to generate one huge monster table which contains everything (and would be quite unhandy in case of 1000 detectors), but you can provide these pieces of information in specific tables (thresholds in a table of the detectors, CAMAC addresses in a second table of the detectors if you wish, CFD types in a table of CFDs, etc.), and the software will collect the pieces it needs.
A database like this has the great advantage that every piece of information is stored only once: If you do it right, your database can never contain contradictory entries. The price you pay for that is that the set-up database needs to contain tables which tell the software about the actual configuration it is supposed to work on. These configuration tables are the central piece of your set-up database, and you need to understand how they work if you want to generate a database of your own. We have foreseen two such tables: PAR_CONF contains the PARameter CONFiguration, i.e. information about set-up parameters like thresholds or high voltages. DET_CONF contains the DETector CONFiguration. The two tables are explained below.
There is a bunch of naming conventions (not only for the configuration tables, but for all tables): One line of a table is called an 'entry'. The columns of the tables are called 'attributes', and the first column is called 'key attribute'. The item in the first column of a table has to be unique in that table; the software will not allow you to create duplicate items. The key attributes have to be of type Hollerith, the other attributes may be of type Hollerith, floating point, or integer.
Tables in the set-up database have names. The parameter configuration table has to have the name PAR_CONF, and the detector configuration table has to have the name DET_CONF. The names of their attributes are also hardwired into the software. In addition, there are some more names of tables and attributes which are fixed. They are discussed in this description, and there is a complete list in section 5.
fopi
Fri Oct 25 16:39:46 CST 1996