Raw Data Format zhangxiaomei
Raw Event data Format Event Header Subdetector1 Header Subdetector1 Data Subdetector2 Header Subdetector2 Data Other Subdetector Full event data Header
Header Format header marker total Event size header size Format version number Number of status elements status element 0 other status elements Data & Time Run Number Global Event ID number of subdetectors = 5 offset for subdetector1 other offsets for other four subtectors general part Event header specific part
Header Marker It indicates the start of a fragment header, and it also give out the information of byte ordering. Event Header Marker 0xaa1234aa Subdetector Header Marker 0xbb1234bb
The offset element Other header elements Number of subdetectors subdetector ID =a offset address =11 Other subdetector offsets Subdetector with ID = a Other subdetector Parts 11 units Event Header
Implementation of event format All designations are modular. The basic module unit is a fragment. Full Event Fragment Header Data general specific eventsubdetector
The fragment class Fragment Header_type m_header; Vector m_subfragments; Fragment(header_type&, vector &); Append(subfragment_type*); Header_type& header(); Vector & subfragements(); Size_byte(); Search(subdetectorID&): serialise(filetype&); Serialise(memorytype&); Is_valid(); Theader TSubFragment
The header class header m_fragesize; m_headersize; m_format_version; Vector m_offsets; Vector 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