@DATABASE "Time"
@AUTHOR   "Paul Manias"
@NODE     "Main" "Object: Time"

@{b}@{u}OBJECT DOCUMENTATION@{uu}@{ub}
Name:      @{"TIME" LINK "Description"}
Version:   1.0
Date:      May 1998
Author:    Paul Manias
Copyright: DreamWorld Productions, 1996-1998.  All rights reserved.

@EndNode
---------------------------------------------------------------------------
@NODE  "Description" "Object: Time"

@{b}@{u}OBJECT@{uu}@{ub}
Name:    Time
Version: 1
ID:      ID_TIME
Module:  @{"Kernel" LINK "GMSDev:AutoDocs/Kernel.guide/Functions"}
Include: @{"misc/time.h" LINK "GMSDev:Includes/misc/time.h/Main"}
Type:    Simple

@{b}@{u}DESCRIPTION@{uu}@{ub}
The  Time  object  is  available  for any applications and objects that may
require  time  and  date  recording.   It  is still in the process of being
developed, but in future the necessary functions for adding and subtracting
date  values  will  be  supported.   You can get the current system time by
using the Query() action.

@{b}@{u}ACTIONS@{ub}@{uu}
The Time object supports the following actions:

     @{"Free()"  LINK "GMSDev:AutoDocs/Kernel.guide/Free()"}  - Free a Time object.
     @{"Get()"   LINK "GMSDev:AutoDocs/Kernel.guide/Get()"}   - Get a new Time structure.
     @{"Init()"  LINK "GMSDev:AutoDocs/Kernel.guide/Init()"}  - Initialise a Time object.
     @{"Query()" LINK "GMSDev:AutoDocs/Kernel.guide/Query()"} - Gets the current system time.

@{b}@{u}STRUCTURE@{uu}@{ub}
The Time structure consists of the following public fields:

     @{"Day" LINK "TM_Day"}    - Day (1 - 31)
     @{"Hour" LINK "TM_Hour"}   - Hour (0 - 23)
     @{"Minute" LINK "TM_Minute"} - Minute (0 - 59)
     @{"Micro" LINK "TM_Micro"}  - Micro Second (0 - 99)
     @{"Month" LINK "TM_Month"}  - Month (1 - 12)
     @{"Second" LINK "TM_Second"} - Second (0 - 59)
     @{"Year" LINK "TM_Year"}   - Year (-ve for BC, +ve for AD).

Note  that  if  you  write  to  any of these fields, you can invalidate the
overall  time.   For example, changing the Year will affect the validity of
the  Day and Month fields.  Do not write to this object unless you are 100%
positive of what you are doing.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Day" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Day
Type:      WORD
Range:     1 - 31
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This  field  specifies the day of the month that is being represented.  The
limit  of the range is dependant on the month and year (eg February usually
has a limit 28 days except on leap year).

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Hour" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Hour
Type:      WORD
Range:     0 - 59
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This field specifies the hour of the day.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Minute" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Minute
Type:      WORD
Range:     0 - 59
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This field specifies the minutes of the hour.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Micro" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Micro
Type:      WORD
Range:     0 - 99
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This field represents the micro-seconds of the time object.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Month" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Month
Type:      WORD
Range:     1 - 12
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This field specifies the month of the year.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Second" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Second
Type:      WORD
Range:     0 - 59
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This field specifies the seconds in your time object.

@EndNode
---------------------------------------------------------------------------
@NODE "TM_Year" "Object: Time"

@{b}@{u}FIELD@{uu}@{ub}
Name:      Year
Type:      WORD
On Change: Dynamic.
Status:    Read/Write

@{b}@{u}DESCRIPTION@{uu}@{ub}
This  field  specifies  the year.  Negative values indicate BC and positive
values indicate AD.

@EndNode
---------------------------------------------------------------------------
