Go to the documentation of this file.00001 #ifndef DaqSource_DTFileReaderHelpers_h
00002 #define DaqSource_DTFileReaderHelpers_h
00003
00004 #include <boost/cstdint.hpp>
00005
00006 template<class T> char* dataPointer( const T* ptr ) {
00007 union bPtr {
00008 const T* dataP;
00009 char* fileP;
00010 };
00011 union bPtr buf;
00012 buf.dataP = ptr;
00013 return buf.fileP;
00014 }
00015
00016
00017 template<class T> T* typePointer( const char* ptr ) {
00018 union bPtr {
00019 T* dataP;
00020 const char* fileP;
00021 };
00022 union bPtr buf;
00023 buf.fileP = ptr;
00024 return buf.dataP;
00025 }
00026
00027 struct twoNibble {
00028 uint16_t lsBits;
00029 uint16_t msBits;
00030 };
00031
00032 struct twoNibble64 {
00033 uint32_t lsBits;
00034 uint32_t msBits;
00035 };
00036
00037 #endif