Return TypeFunction nameArguments
hzEcodeReadSerialUINT32(unsigned int&,hzChain::Iter&,)

Declared in file: hzCodec.h
Defined in file : hzCodec.cpp

Function Logic:

0:START 1:!(*zi&0x80) 2:nValue items 3:Return E_OK 4:*zi&0xE0 5:0x80 6:val items val val

Function body:

hzEcode ReadSerialUINT32 (unsigned int& nValue, hzChain::Iter& zi)
{
   uint32_t    val ;
   if (!(*zi & 0x80))
   {
       nValue = *zi & 0x7f;
       zi++ ;
       return E_OK ;
   }
   switch  (*zi & 0xE0)
   {
   case 0x80:
               val = *zi & 0x1f;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               break ;
   case 0xA0:
               val = *zi & 0x1f;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               break ;
   case 0xC0:
               val = *zi & 0x1f;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               break ;
   case 0xE0:
               zi++ ;  val = (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               zi++ ;  val <<&eq; 8; val += (uchar) *zi ;
               break ;
   }
   zi++ ;
   nValue = val ;
   return E_OK ;
}