API Change: DOS Packets for ACTION_EXAMINE_OBJECT/FH and fib_FileName/fib_Comment
[AROS.git] / compiler / include / dos / datetime.h
blob78e39d0ab7a6982c6e84dbaf6a20362a0ab1ce07
1 #ifndef DOS_DATETIME_H
2 #define DOS_DATETIME_H
4 /*
5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 $Id$
8 Desc: Structures to handle date and time
9 Lang: english
12 #ifndef DOS_DOS_H
13 # include <dos/dos.h>
14 #endif
16 /* DateStamp structure as defined in <dos/dos.h>. This structure
17 sufficiently describes a system-date and -time (i.e. any date since
18 1.1.1978).
20 struct DateStamp
22 LONG ds_Days; ** Number of days since 1.1.1978 **
23 LONG ds_Minute; ** Number of minutes since midnight **
24 LONG ds_Tick; ** Number of ticks (1/50 second) in the current minute
25 Note that this may not be exact **
30 /* DateTime is used by StrToDate() and DateToStr(). It descibes not only
31 a date, but supplies also pointers to strings describing the date in
32 human-readable form.
34 struct DateTime
36 struct DateStamp dat_Stamp; /* see above */
37 UBYTE dat_Format; /* Describes, which format the strings
38 should have (see below) */
39 UBYTE dat_Flags; /* see below */
40 /* The following pointers may be NULL under certain circumstances. */
41 UBYTE * dat_StrDay; /* Day of the week string */
42 UBYTE * dat_StrDate; /* Date string */
43 UBYTE * dat_StrTime; /* Time string */
46 /* You need this much room for each of the DateTime strings. */
47 #define LEN_DATSTRING 16
49 /* dat_Format */
50 #define FORMAT_DOS 0 /* DOS internal format, e.g. 21-Jan-78 */
51 #define FORMAT_INT 1 /* International format, e.g. 78-01-21 */
52 #define FORMAT_USA 2 /* US-American format, e.g. 01-21-78 */
53 #define FORMAT_CDN 3 /* Canadian format, e.g. 21-01-78 */
54 #define FORMAT_DEF 4 /* Format of current locale */
55 #define FORMAT_MAX FORMAT_CDN
57 /* dat_Flags */
58 #define DTB_SUBST 0 /* Substitute Today, Tomorrow, etc. if possible. */
59 #define DTB_FUTURE 1 /* Day of the week is in future. */
60 #define DTF_SUBST (1<<DTB_SUBST)
61 #define DTF_FUTURE (1<<DTB_FUTURE)
63 #endif /* DOS_DATETIME_H */