Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this page:

Table of Contents

...

Anchor
intro
intro

Introduction

...

You also have the option of converting your experiments' xtc files into hdf5 files. More about data formats: Analysis Workbook. Data Formats

Anchor
pdsdata
pdsdata

The pdsdata library

Myana uses the pdsdata library to access the datagrams in the xtc files. pds = photon data system. In your analysis directory you'll find it in release/pdsdata/. The header files are in the top level directories of each package, and the implementation files are in the src directory of each package.

Panel

ipimb    - Intensity position, intensity monitor board
encoder  - SXR SLE Info (Laser Mirror Position Encoder)
pnCCD   - for device used by CAMP
acqiris     - software for the aquiris digitizer hardware. Waveform data.
camera   - camera frames, configurations, feature extractions process
evr         - Event Receiver (event code, beam code?)
opal1k     - for Opal camera
pulnix      - for Pulnix TM6740CL monochrome camera
control    - utility for DAQ control, PV (process variable) control and monitoring
xtc          - This package defines all the datagrams for the xtc file.
epics      - interface to epics (process variables (PV))
bld         - defines some build data classes
princeton - software for the Princeton camera
fccd        - LBNL/ANL Fast CCD monochrome camera
cspad      - driver for the CsPad detector
lusi         - LCLS Ultrafast Science Instruments Configs for diode, ipm, pim.
app        - Xtc and Epics readers

Anchor
myana.cc
myana.cc

myana.cc .... an example C++ program to extract information from xtc file

...

All the functionality needed to get data from the xtc file is (or should be) defined in main.cc and in the files it includes (including the pdsdata library). Get an uppdated list of all the available functions by looking at main.hh (implementations are in main.cc).

Anchor
more
more

More examples
Panel

myana_morefeatures.cc

This version of the "user analysis module" shows how to obtain some more information from the xtc file:
beginjob():

  • we book a profile histogram for AMO Ion Time-of-flight (AmoITof) waveform data, and also five regular histograms to fill with single event data from the first five events. To do this we need some information about the AmoITof configuration, which is obtained using the getAcqConfig(). This gives us the number of channels that were used, number of samples and sampling intervals, all needed to book the histogram.
  • also a constant-fraction histogram is booked for AmoITof. This has it's own fill function, as we shall see from the event() function.
  • For the Electron Time-of-flight detector (AmoETof), we similarly get the configuration data and make one profile histogram for each channel used.
  • Also get config information about the Magnetic bottle electron spectrometer (AmoMbes).
  • A Princeton camera and a fast CCD (FCCD) was also in use. These have their own getConfig functions: getPrincetonConfig( DetInfo::SxrBeamline, ...) and getFccdConfig(SxrFccd, ...).
    In beginrun() we get the config info from AmoITof again, to check if it changed between runs in the same job.

event():

  • fills the histograms booked at the beginning of the job: getAcqValue() gets the data from a given detector for each event. The main program is already keeping track of which event we're processing at the time. The constant-fraction histogram is filled by the function fillConstFrac(), defined in main.cc. This histogram is filled with the boundary position each time the pulse crosses the threshold,
  • the rest of event() uses a lot of get-functions to show how to use some of these. Generally, they all give you values through scalar or array variables passed as arguments to the functions. The example doesn't show what you would use this information for, but you might already know that (smile)

...

Panel

examples/myana_cspad.cc, examples/CspadTemp.cc, examples/CspadTemp.hh
CsPad image

...

Anchor
functions
functions

Configuration and Event Data retrieval functions:

...