Page History
This page includes material from PSDM space, due to that navigation on page does not work properly. To see original page go to psana - User Manual
Include Page | ||||
---|---|---|---|---|
|
Table of Contents |
---|
Introduction
This document describes C++ analysis framework for LCLS and how users can make use of its features. Psana design borrows ideas from multitude of other framworks such as pyana, myana, BaBar framework, etc. It's main principles are summarized here:
- support processing of both XTC and HDF5 data format
- user code should be independent of specific data format
- should be easy to use and extend for end users
- support re-use of the existing analysis code
- common simple configuration of user analysis code
This manual is accompanied by the Psana reference Manual which describes interfaces of the classes available in Psana.
Framework Architecture
The central part of the framework is a regular pre-built application (psana) which can dynamically load one or more user analysis modules which are written in C++. The core application is responsible for the following tasks:
- loading and initializing all user modules
- loading one of the input modules to read data from XTC or HDF5
- calling appropriate methods of user modules based on the data being processed
- providing access to data as set of C++ classes
- providing other services such as histogramming to user modules
Other important components of the Psana architecture:
...