Here are the high level steps for when a new device needs to be integrated in the DAQ

Step-by-step guide

the following files need to be setup

  1.  the config store python file to initialize the mongo daq config database.  See example here
    https://github.com/slac-lcls/lcls2/blob/master/psdaq/drp/tt_config_store.py
  2.  the configuration reading python file to read from the mongo DAQ configuration database and return a json.  See example here
    https://github.com/slac-lcls/lcls2/blob/master/psalg/psalg/configdb/tt_config.py
  3. the xtc writer that reads from the new DAQ device.  See examples here for writing and reading
    https://github.com/slac-lcls/lcls2/blob/0558e5e011e72f92523ac113680e0b868c9ab570/psdaq/drp/pgpread_timetool.cc#L368
  4. Finally, the detector class needs to be setup.  See example here
    https://github.com/slac-lcls/lcls2/blob/master/psana/psana/detector/timetool.py
    Note how the name of the class is a concatenation of the string located here
    https://github.com/slac-lcls/lcls2/blob/033a8c27f0ec745c704233261b03cce1d279a1a2/psdaq/drp/pgpread_timetool.cc#L192-L198

Visual relationships between the class types involved can be viewed here

https://docs.google.com/presentation/d/1KsTXafudKoDTHlqAQXOHSZRLQ1x734kTlrVniV3K-NI/edit#slide=id.g64c80c79d8_8_0

You may also want to use visual panels to communicate related information, tips or things users need to be aware of.

Related articles

Related articles appear here based on the labels you select. Click to edit the macro and add or change labels.

Related issues