Raw Data Format zhangxiaomei Raw Event data Format








- Slides: 8

Raw Data Format zhangxiaomei

Raw Event data Format Header Event Header Subdetector 1 Header Full event data Subdetector 1 Data Subdetector 2 Header Subdetector 2 Data Other Subdetector

Header Format header marker general part total Event size header size Format version number Event header specific part Number of status elements status element 0 other status elements Data & Time Run Number Global Event ID number of subdetectors = 5 offset for subdetector 1 other offsets for other four subtectors

Header Marker • It indicates the start of a fragment header, and it also give out the information of byte ordering. Event Header Marker Subdetector Header Marker 0 xaa 1234 aa 0 xbb 1234 bb

The offset element Other header elements 11 units Event Header Number of subdetectors subdetector ID =a offset address =11 Other subdetector offsets Subdetector with ID = a Other subdetector Parts

Implementation of event format • All designations are modular. • The basic module unit is a fragment. Full Event Fragment Header general Data specific event subdetector

The fragment class Theader Fragment TSub. Fragment Header_type m_header; Vector<subfragment_type*>m_subfragments; Fragment(header_type&, vector<subfragment_type*>&); Append(subfragment_type*); Header_type& header(); Vector< subfragement_type*>& subfragements(); Size_byte(); Search(subdetector. ID&): serialise(filetype&); Serialise(memorytype&); Is_valid();

The header class header m_fragesize; m_headersize; m_format_version; Vector<int_t> m_offsets; Vector<int_t>m_status; Specific_part_type m_spart; Header(fragsize, …. , specific_part_type&); Size_byte(); Headmarker(); Version(); Vector<int_t)& Offset(); Specific_part_type& Specific_part(); serialise(filetype&); Serialise(memorytype&); Is_valid(); TSpecific