raw event conversion service in boss framework
DESCRIPTION
Raw Event Conversion Service in BOSS framework. Zhangxiaomei 2004.4.7. 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 - PowerPoint PPT PresentationTRANSCRIPT
Raw Event Conversion Service in BOSS framework
Zhangxiaomei
2004.4.7
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
Gaudi main terms
– Application Manager • steering the data processing, such as creating and maintaining t
he 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;JobOptions Service;EventData Service
– Converter• Provides conversion from/to persistent data format to/f
rom transient data format.
Transient Event Store
Gaudi Object Diagram
Converter
Algorithm
Event DataService
PersistencyService
DataFiles
AlgorithmAlgorithm
Detec. DataService
PersistencyService
DataFiles
Transient Detector
Store
MessageService
JobOptionsService
Particle Prop.Service
OtherServices Histogram
ServicePersistency
ServiceDataFiles
TransientHistogram
Store
ApplicationManager
ConverterConverterEventSelector
This object diagram shows the relationship among objects during gaudi framework running time.
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
Data accessing and conversion service
Algorithm
(1) Retrieve object
Unsuccessful ifrequested object is
not present
(3) Request load
PersistencyService
ConverterConverterConverterConverter
(4) Request creation
ConversionService
Request dispatcher
Objy, ROOT,..
Data Store
DataService
(2) Search in Store
(5) Register
Main class in RawEvent Conversion Service
EFTDREventCnvSvc
IConversionSvcEventCnv
EventDigiCnv
EFTDREventAddressIOpaueAddress
clID( )
IConverterclID( );createObj( );createRep( );
One Converter object with one OpaqueAddress object, only Converters know how to decode his opaque Address
mdcDigiCnv
EmcDigiCnv
TofDigiCnv
MuonDigiCnv
Pass around the transient data service,the persistency service and the conversion service, so is used to carry some parameters.
The sequence in the conversion process—ByteStreamTDS
converterConversionSvc OpaqueAddress DB/File
clID( )
createObjid createObj
Data objectnew
Data to build data object
Return reference to dataobject
builder
encoding
access
classes used in accessing data sources
EventSelector
EventIterator
EventSource
FullEventFragment
SubdetectorFragment
EFTDREventInputIterator
EFTDREventInputIteratorImpl
FileStorage
Data files
EVENT
EFTDREventCnvpackage
eformatpackage
new
fill
To build TDS data object
access
access
accessaccess
unpack
The sequence in accessing the event source
InputIteratorEventSelector OpaqueAddress EventSource
newnextEvent
nextEvent
nextEventEVENT
new
access
setEvent Return reference
Converter
files
Transient Event Identifier and Raw Event Identifier Encodings
E/w theta phi
Emc flag null E/w/B/C theta phi
Raw Event ID
Transient Event ID
13 bits
32 bits
Using tables to do the mapping between REId and TEId
TEID REIDREIDINDEX
TEIDINDEX
RE2TE TE2RE
Transient data objects and Raw Event Digits transformation
Builder
MdcTEBuilder
MdcREBuilderRaw Event digit
Transient data ObjectIdentifier( );Data( );
Identifier
rec
Data files
TE to RE
RE to TE
Raw Event Structure in TDS
Event Header
m dcDig i
em cDig i
to fDig i
m uonDigi
Event Di gi
Event
The Digi Data Object class
MdcDigi:
Identifier getID( );
Int getData( );
EmcDigi:
TofDigi:
MuonDigi:
Classes in eformat
FullEventFragment
FullEventHeader
SubdetectorFragment
SubdetectorHeader
FileStorage
RawMemoryStorage
GzFileStorage
Storage
Data Collection
Function in eformat:
bytestream packing and unpacking
data SubdetectorFragment
Subdetector header
Fulleventheader
FulleventFragment Storage
(1)Get an event
(2)Separate into two parts
(3)Separate into two parts again
Unpacking
packing