Page History
Info |
---|
Draft, in work. |
Table of Contents |
---|
Include Page | ||||
---|---|---|---|---|
|
Generating Xtc
For tutorial purposes, the following streamlined example shows XXX. For an example involving more detectors, formats and algorithms, see xtcdata/xtcdata/app/xtcwriter.cc.
A Notional DAQ Harness
Let's motivate the example. Assume we're developing a an Xtc writer class to output CSPAD data. This class will get plugged in to a (notional) DAQ framework.
Code Block | ||||
---|---|---|---|---|
| ||||
# Assume some totally made-up data acquisition callback framework named DAQFramework # Developers of the psdaq package are welcome to come in and change this toy example # to match the real DAQ API. CSPADXtcWriter padwriter() DAQFramework.registerHandler("configure", padwriter.setup) DAQFramework.registerHandler("runstart", padwriter.setup) DAQFramework.registerHandler("readout", padwriter.writeImage) DAQFramework.registerHandler("runend", padwriter.writeFile) |
"setup" Method: Set Up The Names Structure
Deck of Cards | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
|
"writeImage" Method: Add Readout Data
Parsing Whole Xtc Files
xtcreader.cc and XtcIterator.hh
Use of Xtc Small Data Files
this might be duplicate of what's on top page
Notes for Real-World Code
Xtc Writers in the Wild
- (You'll likely need to sub-class from XYZ in order to ABC)
Xtc Readers in the Wild
- (You'll likely need to sub-class from XYZ in order to ABC)
Full Listing for "Hello Xtc" CSPADWriter Example
Overview
Content Tools