Raw Event Conversion Service in BOSS framework Zhangxiaomei
Raw Event Conversion Service in BOSS framework Zhangxiaomei 2004. 4. 7
Content vbrief introduction of Boss framework which is completely based on Gaudi • Gaudi main terms • The relationship among them (Gaudi object diagram) v. Raw Event Conversion Service • Conversion Service and Converters • The conversion process • The design of Raw Event Conversion Service
Gaudi main terms – Application Manager • steering the data processing, such as creating and maintaining the required services and algorithms, implementing the event loop with event selector, executing the algorithms in sequences. – Algorithm (like modules in belle) • Atomic data processing unit – Data Object and Transient Data Store(based on object-oriented data management system) • Atomic data unit (visible and managed by transient data store) • repository for data objects (concerned about data organiztion, life cycle, data indentification, …)
Gaudi main terms – Services • Globally available software components providing specific functionality • four frequently used service provided by framework: Event Selector; Message Service; Job. Options Service; Event. Data Service – Converter • Provides conversion from/to persistent data format to/from transient data format.
Gaudi Object Diagram Application Manager Message Service Job. Options Service Particle Prop. Service Other Services Converter Event Selector Persistency Service Data Files Detec. Data Service Transient Detector Store Persistency Service Data Files Histogram Service Transient Histogram Store Persistency Service Data Files Event Data Service Transient Event Store Algorithm This object diagram shows the relationship among objects during gaudi framework running time.
Raw Event conversion service • The purpose of this service: Raw Event data object in TDS Byte. Stream in files or other sources • Two packages which are involved in this function are EFTDREvent. Cnv and eformat.
Data accessing and conversion service Algorithm (1) Retrieve object Data Service Unsuccessful if requested object is not present (3) Request load (2) Search in Store Persistency Service (5) Register Conversion Service Request dispatcher Objy, ROOT, . . (4) Request creation Data Store Converter
Main class in Raw. Event Conversion Service IConverter cl. ID( ); create. Obj( ); create. Rep( ); IConversion. Svc Event. Cnv EFTDREvent. Cnv. Svc Event. Digi. Cnv mdc. Digi. Cnv Muon. Digi. Cnv Emc. Digi. Cnv Tof. Digi. Cnv IOpaue. Address cl. ID( ) EFTDREvent. Address Pass around the transient data service, the persistency service and the conversion service, so is used to carry some parameters. One Converter object with one Opaque. Address object, only Converters know how to decode his opaque Address
The sequence in the conversion process— Byte. Stream TDS Conversion. Svc Opaque. Address converter DB/File cl. ID( ) create. Obj id create. Obj new Data object access encoding builder Data to build data object Return reference to dataobject
classes used in accessing data sources Event. Selector To build TDS data object EFTDREvent. Cnv package Subdetector. Fragment Event. Iterator new EVENT Full. Event. Fragment unpack access EFTDREvent. Input. Iterator fill access Data files EFTDREvent. Input. Iterator. Impl access Event. Source access File. Storage eformat package
The sequence in accessing the event source Event. Selector next. Event Opaque. Address Input. Iterator Event. Source new next. Event new EVENT access set. Event Converter Return reference files
Transient Event Identifier and Raw Event Identifier Encodings 13 bits E/w theta phi Raw Event ID 32 bits Emc flag null E/w/B/C theta Transient Event ID phi
Using tables to do the mapping between REId and TEId REID INDEX TEID RE 2 TE TEID INDEX REID TE 2 RE
Transient data objects and Raw Event Digits transformation Raw Event digit Mdc. REBuilder Data files Builder Transient data Object Identifier( ); Data( ); Mdc. TEBuilder TE to RE RE to TE Identifier rec
Raw Event Structure in TDS
The Digi Data Object class Muon. Digi: Tof. Digi: Emc. Digi: Mdc. Digi: Identifier get. ID( ); Int get. Data( );
Classes in eformat Full. Event. Header File. Storage Full. Event. Fragment Raw. Memory. Storage Subdetector. Fragment Gz. File. Storage Subdetector. Header Data Collection Storage
Function in eformat: bytestream packing and unpacking Fullevent header Subdetector header data Subdetector. Fragment (3)Separate into two parts again (2)Separate into two parts (1)Get an event Storage Unpacking Fullevent. Fragment
- Slides: 18