Return TypeFunction nameArguments
const char*hzXDate::Txt(hzDateFmt,)

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

Function Logic:

0:START 1:!m_hour&&!m_usec 2:Return 0 3:_hz_func_reg::ScratchPad pBuf 4:eFmt==FMT_DT_INET 5:bUS 6:hzXDate::Dow hzXDate::Month hzXDate::Day hzXDate::Year hzXDate::Hour hzXDate::Min hzXDate::Sec sprintf 7:hzXDate::Dow hzXDate::Day hzXDate::Month hzXDate::Year hzXDate::Hour hzXDate::Min hzXDate::Sec sprintf 8:Return pBuf 9:bUS bFN 10:eFmt&FMT_DATE_DOW 11:bFN 12:hzXDate::Dow strcpy 13:hzXDate::Dow strcpy 14:strlen nSofar 15:eFmt&FMT_DT_MASK_DATES 16:nSofar 17:pBuf items 18:eFmt&FMT_DT_MASK_DATES 19:FMT_DATE_DFLT 20:hzXDate::Year hzXDate::Month hzXDate::Day sprintf nSofar

Function body:

const char* hzXDate::Txt (hzDateFmt eFmt)
{
   _hzfunc("hzXDate::Txt") ;
   char*   pBuf ;
   bool    bUS ;
   bool    bFN ;
   int32_t nSofar = 0;
   if (!m_hour && !m_usec)
       return 0;
   pBuf = _thisfn.ScratchPad(32);
   if (eFmt == FMT_DT_INET)
   {
       if (bUS)
           sprintf(pBuf, "%s %s %d %04d %02d:%02d:%02d +0000 (GMT)", hz_daynames_abrv[Dow()], hz_monthnames_abrv[Month() - 1],Day(), Year(), Hour(), Min(), Sec()) ;
       else
           sprintf(pBuf, "%s %d %s %04d %02d:%02d:%02d +0000 (GMT)", hz_daynames_abrv[Dow()], Day(), hz_monthnames_abrv[Month() - 1],Year(), Hour(), Min(), Sec()) ;
       return pBuf ;
   }
   bUS = eFmt & FMT_DATE_USA ? true : false ;
   bFN = eFmt & FMT_DATE_FULL ? true : false ;
   if (eFmt & FMT_DATE_DOW)
   {
       if (bFN)
           strcpy(pBuf, hz_daynames_full[Dow()]) ;
       else
           strcpy(pBuf, hz_daynames_abrv[Dow()]) ;
       nSofar = strlen(pBuf) ;
   }
   if (eFmt & FMT_DT_MASK_DATES)
   {
       if (nSofar)
       {
           pBuf[nSofar] = CHAR_SPACE ;
           nSofar++ ;
       }
       switch (eFmt & FMT_DT_MASK_DATES)
       {
       case FMT_DATE_DFLT:
                           nSofar += sprintf(pBuf + nSofar, "%04d%02d%02d", Year(), Month(), Day());
                           break ;
       case FMT_DATE_STD:
                           nSofar += sprintf(pBuf + nSofar, "%04d/%02d/%02d", Year(), Month(), Day());
                           break ;
       case FMT_DATE_NORM:
                           if (bUS)
                               nSofar += sprintf(pBuf + nSofar, "%02d/%02d/%04d", Month(), Day(), Year()) ;
                           else
                               nSofar += sprintf(pBuf + nSofar, "%02d/%02d/%04d", Day(), Month(), Year()) ;
                           break ;
       case FMT_DATE_FULL:
                           if (bUS)
                               nSofar += sprintf(pBuf + nSofar, "%s %d %04d", hz_monthnames_abrv[Month() - 1],Day(), Year()) ;
                           else
                               nSofar += sprintf(pBuf + nSofar, "%d %s %04d", Day(), hz_monthnames_abrv[Month() - 1],Year()) ;
                           break ;
       }
   }
   if (eFmt & FMT_DT_MASK_TIMES)
   {
       if (nSofar)
       {
           pBuf[nSofar] = CHAR_MINUS ;
           nSofar++ ;
       }
       switch (eFmt & FMT_DT_MASK_TIMES)
       {
       case FMT_TIME_DFLT: //  Time HHMMSS
                           nSofar += sprintf(pBuf + nSofar, "%02d%02d%02d", Hour(), Min(), Sec()) ;
                           break ;
       case FMT_TIME_STD:  //  Time HH:MM:SS
                           nSofar += sprintf(pBuf + nSofar, "%02d:%02d:%02d", Hour(), Min(), Sec()) ;
                           break ;
       case FMT_TIME_USEC: //  Time HH:MM:SS.uSec
                           nSofar += sprintf(pBuf + nSofar, "%02d:%02d:%02d.%06d", Hour(), Min(), Sec(), uSec()) ;
                           break ;
       }
   }
   if (eFmt & FMT_DT_MASK_TZONE)
   {
       if (nSofar)
       {
           pBuf[nSofar] = CHAR_SPACE ;
           nSofar++ ;
       }
       switch (eFmt & FMT_DT_MASK_TIMES)
       {
       case FMT_TZ_CODE:   strcpy(pBuf + nSofar, "GMT") ;          break ;
       case FMT_TZ_NUM:    strcpy(pBuf + nSofar, "+0000") ;        break ;
       case FMT_TZ_BOTH:   strcpy(pBuf + nSofar, "+0000 (GMT)") ;  break ;
       }
   }
   return pBuf ;
}