#ifndef __INC_POS_PDOS_DATETIME_H
#define __INC_POS_PDOS_DATETIME_H
/*******************************************************************
 Includes Release 24
 (C) Copyright 1995-1997 proDAD
     All Rights Reserved

 $AUT Holger Burkarth
 $DAT >>DateTime.h<<   11 Oct 1996    15:47:11 - (C) ProDAD
*******************************************************************/
#ifndef __INC_POS_PDOS_DATE_H
#include <pDOS/Date.h>
#endif

/*----------------------------------
-----------------------------------*/
struct pOS_DateTime
{
  struct pOS_DateStamp dat_Stamp;
  UBYTE         dat_Format;   /* (enum pOS_DateTimeFormat) */
  UBYTE         dat_Flags;    /* (enum pOS_DateTimeFlags) */

  UBYTE         dat_Day;      /* 0-30 */
  UBYTE         dat_Month;    /* 0-11 */
  UWORD         dat_Year;
  UBYTE         dat_Weekday;  /* 0-6 (0==Sonnday)*/
  UBYTE         dat_Hour;
  UBYTE         dat_Minute;
  UBYTE         dat_Second;

  CHAR         *dat_StrDay;   /* day of the week string */
  CHAR         *dat_StrDate;  /* date string */
  CHAR         *dat_StrTime;  /* time string */
};

/* You need this much room for each of the DateTime strings: */
#define pOS_DATETIMESTR_MAX 16


enum pOS_DateTimeFlags /* dat_Flags */
{
  DATETIMEB_Subst=         0,   /* substitute Today, Tomorrow, etc. */
  DATETIMEF_Subst=      0x01,
  DATETIMEB_Future=        1,   /* day of the week is in future */
  DATETIMEF_Future=     0x02,

  DATETIMEF_366Days   = 0x40,   /* Wird von pOS_DateToStr() getzt, falls ein
                                ** Schaltjahr vorliegt. dat_StrDate!=NULL
                                */
  DATETIMEF_UsePreForm= 0x80    /* es werden die Zwischenwerte verwendet */
};


enum pOS_DateTimeFormat
{
  DATETFRM_DOS= 0,  /* dd-mmm-yy */
  DATETFRM_INT,     /* yy-mm-dd  */
  DATETFRM_USA,     /* mm-dd-yy  */
  DATETFRM_CDN,     /* dd-mm-yy  */
  DATETFRM_LOCAL,

  DATETFRM_MAX
};


#endif
