Raw Data Format zhangxiaomei Raw Event data Format

  • Slides: 8
Download presentation
Raw Data Format zhangxiaomei

Raw Data Format zhangxiaomei

Raw Event data Format Header Event Header Subdetector 1 Header Full event data Subdetector

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

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

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

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

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&

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, ….

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