00001 //Dear emacs, this is -*- c++ -*- 00002 00013 #include "eformat/old/FullEventFragment.h" 00014 #include "eformat/old/SubDetectorFragment.h" 00015 #include "eformat/SizeCheckIssue.h" 00016 #include "eformat/HeaderMarker.h" 00017 00018 eformat::old::FullEventFragment::FullEventFragment (const uint32_t* it) 00019 : eformat::old::Header(it, eformat::FULL_EVENT), 00020 m_start(specific_header()) 00021 { 00022 } 00023 00024 bool eformat::old::FullEventFragment::check () const 00025 { 00026 eformat::old::Header::check(); //< first do a generic check 00027 if (nspecific() != 10) { //@warning THIS IS WRONG!!! It should be 9 00028 throw EFORMAT_SIZE_CHECK(10, nspecific()); 00029 } 00030 return true; 00031 } 00032 00033 bool eformat::old::FullEventFragment::check_tree () const 00034 { 00035 check(); // check myself 00036 for (size_t i=0; i<noffset(); ++i) { 00037 eformat::old::SubDetectorFragment sd(child(i)); 00038 sd.check_tree(); 00039 } 00040 return true; 00041 } 00042 00043 00044