Presentation is loading. Please wait.

Presentation is loading. Please wait.

Raw Event Conversion Service in BOSS framework

Similar presentations


Presentation on theme: "Raw Event Conversion Service in BOSS framework"— Presentation transcript:

1 Raw Event Conversion Service in BOSS framework
Zhangxiaomei

2 Content brief introduction of Boss framework which is completely based on Gaudi Gaudi main terms The relationship among them (Gaudi object diagram) Raw Event Conversion Service Conversion Service and Converters The conversion process The design of Raw Event Conversion Service

3 Gaudi main terms Application Manager Algorithm (like modules in belle)
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, …)

4 Gaudi main terms Services
Globally available software components providing specific functionality four frequently used service provided by framework: Event Selector;Message Service;JobOptions Service;EventData Service Converter Provides conversion from/to persistent data format to/from transient data format.

5 Gaudi Object Diagram Converter Application Manager Converter Converter Event Selector Transient Event Store Data Files Message Service Persistency Service Event Data Service JobOptions Service Algorithm Algorithm Algorithm Data Files Transient Detector Store Particle Prop. Service Persistency Service Detec. Data Service Other Services Application Manager is the most import component in framework, who bootstrap and control 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. Event Selector is used for event selection, it knows which is the next event. Message Service outputs the message info. JobOptions service is to supply options for clients during running time, such as algorithm executing sequence, etc. EventData Service manages the transient data store, including retrieves and registers data objects to the transient data store. Data Files Transient Histogram Store Persistency Service Histogram Service This object diagram shows the relationship among objects during gaudi framework running time.

6 Raw Event conversion service
The purpose of this service: Two packages which are involved in this function are EFTDREventCnv and eformat. Raw Event data object in TDS ByteStream in files or other sources

7 Data accessing and conversion service
Unsuccessful if requested object is not present Data Store Data Service (2) Search in Store Algorithm (3) Request load Persistency Service (1) Retrieve object Converter (4) Request creation Conversion Service Request dispatcher Objy, ROOT,.. (5) Register Understanding Data Stores: Loading Whenever client requests an object from the data service the following sequence is invoked: The data service searches in the data store whether the transient representation of the requested objects already exists. If the object exists, a reference is returned and the sequence ends here. Otherwise the request is forwarded to the persistency service. The persistency service dispatches the request to the appropriate conversion service capable of handling the specified storage technology. The selected conversion service uses a set of data converters - each capable of creating the transient representation of the specified object type from its persistent data. The data converter accesses the persistent data store, creates the transient object and returns it to the conversion service. The conversion service registers the object with the data store, the sequence completes and the object is returned to the client. Once registered with the corresponding data store, the object knows about its hosting service.

8 Main class in RawEvent Conversion Service
IConverter clID( ); createObj( ); createRep( ); IConversionSvc EventCnv EventDigiCnv EFTDREventCnvSvc mdcDigiCnv MuonDigiCnv EmcDigiCnv TofDigiCnv IOpaueAddress clID( ) EFTDREventAddress One Converter object with one OpaqueAddress object, only Converters know how to decode his opaque Address Pass around the transient data service,the persistency service and the conversion service, so is used to carry some parameters.

9 The sequence in the conversion process—ByteStreamTDS
converter DB/File ConversionSvc OpaqueAddress clID( ) createObj id createObj new Data object access encoding builder Data to build data object Return reference to dataobject

10 classes used in accessing data sources
To build TDS data object EFTDREventCnv package EventSelector SubdetectorFragment new EventIterator EVENT FullEventFragment unpack access EFTDREventInputIterator Data files eformat package fill access EFTDREventInputIteratorImpl access access FileStorage EventSource

11 The sequence in accessing the event source
InputIterator EventSource EventSelector OpaqueAddress nextEvent new nextEvent nextEvent new EVENT access files setEvent Return reference Converter

12 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 phi Transient Event ID

13 Using tables to do the mapping between REId and TEId
INDEX TEID INDEX TE2RE RE2TE

14 Transient data objects and Raw Event Digits transformation
Data files Raw Event digit MdcREBuilder Builder MdcTEBuilder Transient data Object Identifier( ); Data( ); rec TE to RE Identifier RE to TE

15 Raw Event Structure in TDS

16 The Digi Data Object class
MdcDigi: Identifier getID( ); Int getData( ); EmcDigi: TofDigi: MuonDigi:

17 Classes in eformat FullEventHeader FileStorage FullEventFragment
RawMemoryStorage Storage SubdetectorFragment GzFileStorage SubdetectorHeader Data Collection

18 Function in eformat: bytestream packing and unpacking
data SubdetectorFragment Subdetector header Fullevent header FulleventFragment Storage (1)Get an event (2)Separate into two parts (3)Separate into two parts again Unpacking packing


Download ppt "Raw Event Conversion Service in BOSS framework"

Similar presentations


Ads by Google