| Return Type | Function name | Arguments |
|---|---|---|
| unsigned int | hzChain::Iter::Advance | (unsigned int,) |
Declared in file: hzChain.h
Defined in file : hzChain.cpp
Function Logic:
Function body:
unsigned int hzChain::Iter::Advance (unsigned int nInc)
{
_hzfunc("hzChain::Iter::Advance") ;
_zblk* zp ;
uint32_t nCan ;
uint32_t nAdv = 0;
if (nInc < 0)
return 0;
zp = (_zblk*) m_block ;
if (!zp)
return 0;
for (; nAdv < nInc ;)
{
nCan = zp->m_nUsage - m_nOset ;
if ((nCan + nAdv) > nInc)
nCan = nInc - nAdv ;
m_nOset += nCan ;
nAdv += nCan ;
if (m_nOset == zp->m_nUsage)
{
if (!zp->Next())
break ;
m_nOset = 0;
m_block = zp = zp->Next() ;
}
}
return nAdv ;
}