Return TypeFunction nameArguments
hzLogger&hzLogger::operator<<(hzChain&,)

Declared in file: hzProcess.h
Defined in file : hzLogger.cpp

Function Logic:

0:START 1:hzChain::Size 2:Z.Size() 3:hzLockS::Lock hzLogger::_logrotate 4:m_bVerbose 5:ofstream::write fflush 6:zi 7:rc==E_OK; 8:!zi.eof()&&nBytes 9:* 10:!nBytes 11:m_pDataPtr hzLogger::_write rc 12:hzLockS::Unlock 13:Return *this

Function body:

hzLogger& hzLogger::operator<< (hzChain& Z)
{
   hzChain::Iter   zi ;
   char*       i ;
   uint32_t    nBytes ;
   hzEcode     rc = E_OK ;
   if (Z.Size())
   {
       m_Lock.Lock() ;
       _logrotate() ;
       if (m_bVerbose)
       {
           std::cout.write(m_pDataPtr, nBytes) ;
           fflush(stdout) ;
       }
       zi = Z ;
       for (; rc == E_OK ;)
       {
           for (i = m_pDataPtr, nBytes = 0; !zi.eof() && nBytes < HZ_LOGCHUNK ; nBytes++, zi++)
               *i++ = *zi ;
           if (!nBytes)
               break ;
           m_pDataPtr[nBytes] = 0;
           rc = _write(nBytes) ;
       }
       m_Lock.Unlock() ;
   }
   return *this ;
}