Introduction
This reference manual describes interfaces of various classes constituting psana analysis framework. For more user-oriented description with examples and detailed explanations consult Psana User Manual.
Packages
Framework code is split between several packages. Here is the list of few major packages:
psana
– psana application, base class for user module, few simple modulesPSEvt
– classes which deal with event dataPSEnv
– classes which constitute non-event data (environment)PSTime
– classes for time representation and I/ORootHistoManager
– histogramming package, wrapper for ROOT classesPSXtcInput
– input module implementation for XTC filespsddl_psana
– interfaces for event data and configuration classes produced by LCLS DAQConfigSvc
– configuration serviceMsgLogger
– message logging service
In addition to these packages there are several other low-level packages (such as boost
) which are used in many places. Those packages are not described here.
Below is the reference for individual packages, most of them link to the doxygen-generated documentation. Link to doxygen documentation point to the current production version (release ana-current
), for older versions please navigate to the page https://pswww.slac.stanford.edu/swdoc/releases/ and choose relevant release.
Package psana
This package contains code for the core part of psana framework responsible for the job configuration, event loop, module loading, etc.
For complete reference select Doxygen documentation.
Package PSEvt
PSEvt package contains classes which provide storage and access to event data.
For complete reference select Doxygen documentation.
Package PSEnv
PSEnv package contains classes which provide storage and access to non-event data.
For complete reference select Doxygen documentation.