45#include "MdcRecoUtil/ComPackBase.h"
55#include "MdcRecoUtil/ComPackFlatFloat.h"
61 if (val_one>val_two) {
74 cout <<
" ErrMsg(fatal) " <<
"Error : Range is zero!" << endl;
81 cout <<
" ErrMsg(fatal) "<<
"Warning : Number of bits truncated! "
82 <<
"Reason : Number of bits too large for " <<
_maxlongbits <<
" bit packing operations! "
83 <<
"This is probably caused by a serious typo somewhere!" << endl;
93 _upacfac = 1.0/_pacfac;
102 double dpack = (theval-
_minVal)*_pacfac;
107 }
else if (dpack<0) {
124 if ( 0 == numsteps)
return;
126 const double incstep = double (
_valRange) / double (numsteps);
132 unpack ( tagVal, unTagVal );
133 cout << i <<
" is converted to :" << tagVal <<
". Upon unpacking :" << unTagVal << endl;
134 toterror += fabs ( i-unTagVal );
StatusCode unpack(const d_ULong, double &) const
virtual ~ComPackFlatFloat()
void testMe(size_t, double &)
StatusCode pack(const double, d_ULong &) const
ComPackFlatFloat(const double, const double, size_t)