org.oorexx.datergf

## Interface DTC

-     public interface DTC

  This interface serves as a container for constants used in the classes of the datergf package in order to minimize the needed space of compiled classes. It also allows for referring to these constants in a much shorter way by using the string "DTC": "Date/Time Constants".

  This file contains final primitive datatype values (constants) only!

  Examples:

             DateRGF d=new DateRGF().update();

             int day=d.get(DTC.DAY_FIELD);         // retrieves the day field

      ------------------------ Apache Version 2.0 license -------------------------
          Copyright (C) 2001-2006 Rony G. Flatscher

          Licensed under the Apache License, Version 2.0 (the "License");
          you may not use this file except in compliance with the License.
          You may obtain a copy of the License at

              http://www.apache.org/licenses/LICENSE-2.0

          Unless required by applicable law or agreed to in writing, software
          distributed under the License is distributed on an "AS IS" BASIS,
          WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
          See the License for the specific language governing permissions and
          limitations under the License.
       -----------------------------------------------------------------------------

       Temporary dev-infos:

          version  date            remark

          0.9.2    2001-04-05      - created this interface
                   2005-12-28      - added Apache license 2.0, put sources with BSF4Rexx

  Version:
    0.92, date: 2001-02-08 through 2001-04-02, 2006-01-01
  Author:
    Rony G. Flatscher

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `APRIL` April, has value 4 (ISO).
    `static int` | `AUGUST` August, has value 8 (ISO).
    `static int` | `D` Constant to refer to the `DateRGF.day` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `DATE_ORDER` Constant to refer to the `DateRGF.dateOrder` field in `DateRGF.getStatic(int flag)` and `DateRGF.setStatic(int flag, int new_value)`.
    `static int` | `DAY_FIELD` Constant to refer to the `DateRGF.day` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `DAYS_IN_MONTH` Constant 'total of days in month'.
    `static int` | `DECEMBER` December, has value 12 (ISO).
    `static byte` | `DMY` Constant to indicate the order Day/Month/Year.
    `static int` | `DN` Constant 'day name'.
    `static int` | `DOW` Constant 'day of week' (DOW).
    `static int` | `DOW_ORDINAL` Constant 'day of week relative to day which begins the week (`DateRGF.weekStart`.
    `static int` | `ENCODED_AS_INTEGER` Constant to indicate that DateRGF is encoded as an integer in the form of: ``year`*10000+ `month`*100+ `day``.
    `static int` | `ENCODED_AS_MILLIS` Constant to indicate that the time is encoded as an integer representing the time as milliseconds relative to midnight.
    `static int` | `ENCODED_AS_SECONDS` Constant to indicate that the time is encoded as an integer representing the time as seconds relative to midnight.
    `static int` | `EPOCH_DEFAULT` Constant, to indicate to use the default epoch.
    `static int` | `EPOCH_DOS` Constant, epoch starts with 1980-01-01.
    `static int` | `EPOCH_JAVA` Constant, epoch starts with 1970-01-01.
    `static int` | `EPOCH_MACINTOSH` Constant, epoch starts with 1904-01-01.
    `static int` | `EPOCH_MJD` Constant, epoch starts with 1858-11-17 and denotes the epoch of the "modified julian day (MJD)" sometimes used in calendar algorithms.
    `static int` | `EPOCH_PALM` Constant, epoch starts with 1904-01-01.
    `static int` | `EPOCH_USER` Constant, epoch defined by the user (`DateRGF.setDefaultEpochDate(int value)`.
    `static int` | `EPOCH_WIN32` Constant, epoch starts with 1601-01-01.
    `static int` | `FEBRUARY` February, has value (ISO).
    `static int` | `FRIDAY` Friday, has value 5 (ISO).
    `static int` | `GREGORIAN` Constant to indicate the usage of the Gregorian calendar in the methods `DateRGF.jdn2date(int jdn, DateRGF aDate, int flag)` and `DateRGF.date2jdn(int year, int month, int day, int flag)`.
    `static int` | `HOUR_FIELD` Constant to refer to the `TimeRGF.hour` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
    `static int` | `HY` Constant 'half year' (semester).
    `static int` | `HYB` Constant 'half year begin' (semester begin).
    `static int` | `HYE` Constant 'half year end' (semester end).
    `static int` | `JANUARY` January, has value 1 (ISO).
    `static int` | `JDN` Constant to refer to the `DateRGF.jdn` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `JULIAN` Constant to indicate the usage of the Julian calendar in the methods `DateRGF.jdn2date(int jdn, DateRGF aDate, int flag)` and `DateRGF.date2jdn(int year, int month, int day, int flag)`, or to indicate that a 'Julian date' (in the form 'YYYYddd') is desired in the method `DateRGF.get(int flag)`.
    `static int` | `JULY` July, has value 7 (ISO).
    `static int` | `JUNE` June, has value 6 (ISO).
    `static int` | `M` Constant to refer to the `DateRGF.month` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `MARCH` March, has value 3 (ISO).
    `static int` | `MAY` May, has value 5 (ISO).
    `static int` | `MB` Constant 'month begin'.
    `static byte` | `MDY` Constant to indicate the order Month/Day/Year.
    `static int` | `ME` Constant 'month end'.
    `static int` | `MILLIS_FIELD` Constant to refer to the `TimeRGF.millis` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
    `static int` | `MILLIS_PER_DAY` Millis in a full day (86.400.000).
    `static int` | `MILLIS_PER_HOUR` Millis in a full hour (3.600.000).
    `static int` | `MILLIS_PER_MINUTE` Millis in a full minute (60.000).
    `static int` | `MILLIS_PER_SECOND` Millis in a full second (1.000).
    `static int` | `MINUTE_FIELD` Constant to refer to the `TimeRGF.minute` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
    `static int` | `MN` Constant 'month name'.
    `static int` | `MONDAY` Monday, has value 1 (ISO).
    `static int` | `MONTH_FIELD` Flag to refer to the `DateRGF.month` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `NAD` Constant to indicate an impossible value for `DateRGF.jdn`, "Not A Date"
    `static int` | `NOVEMBER` November, has value 11 (ISO).
    `static int` | `OCTOBER` October, has value 10 (ISO).
    `static int` | `Q` Constant 'quarter'.
    `static int` | `QB` Constant 'quarter begin'.
    `static int` | `QE` Constant 'quarter end'.
    `static int` | `RAW_MILLIS_FIELD` Constant to refer to the `TimeRGF.raw_millis` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
    `static int` | `SATURDAY` Saturday, has value 6 (ISO).
    `static int` | `SECOND_FIELD` Constant to refer to the `TimeRGF.second` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
    `static int` | `SECONDS_PER_DAY` Seconds in a full day (86400).
    `static int` | `SECONDS_PER_HOUR` Seconds in a full hour (3600).
    `static int` | `SECONDS_PER_MINUTE` Seconds in a full minute (60).
    `static int` | `SEPTEMBER` September, has value 9 (ISO).
    `static int` | `SUNDAY` Sunday, has value 7 (ISO).
    `static int` | `THURSDAY` Thursday, has value 4 (ISO).
    `static int` | `TUESDAY` Tuesday, has value 2 (ISO).
    `static java.lang.String` | `version` Version string indicating version of this class (majorVersion*100+minorVersion concatenated with a dot and the sorted date of last change.
    `static int` | `W` Constant 'ISO week number'.
    `static int` | `WB` Constant 'week begin'.
    `static int` | `WE` Constant 'week end'.
    `static int` | `WEDNESDAY` Wednesday, has value 3 (ISO).
    `static int` | `WEEK` Constant 'ISO week number'.
    `static int` | `WEEK_START` Constant to refer to `DateRGF.weekStart`.
    `static int` | `WEEKDAY` Constant 'weekday' inidicating that the date is to be set to one of the given weekdays using the `DateRGF.set(int flag, int number)` method.
    `static int` | `Y` Constant to refer to the `DateRGF.year` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static int` | `YB` Constant 'year begin'.
    `static int` | `YE` Constant 'year end'.
    `static int` | `YEAR_FIELD` Constant to refer to the `DateRGF.year` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
    `static byte` | `YMD` Constant to indicate the order Year/Month/Day.

- - ### Field Detail

    - #### version

          static final java.lang.String version

      Version string indicating version of this class (majorVersion*100+minorVersion concatenated with a dot and the sorted date of last change.
      See Also:
        Constant Field Values

    - #### SECONDS_PER_DAY

          static final int SECONDS_PER_DAY

      Seconds in a full day (86400).
      See Also:
        Constant Field Values

    - #### SECONDS_PER_HOUR

          static final int SECONDS_PER_HOUR

      Seconds in a full hour (3600).
      See Also:
        Constant Field Values

    - #### SECONDS_PER_MINUTE

          static final int SECONDS_PER_MINUTE

      Seconds in a full minute (60).
      See Also:
        Constant Field Values

    - #### MILLIS_PER_DAY

          static final int MILLIS_PER_DAY

      Millis in a full day (86.400.000).
      See Also:
        Constant Field Values

    - #### MILLIS_PER_HOUR

          static final int MILLIS_PER_HOUR

      Millis in a full hour (3.600.000).
      See Also:
        Constant Field Values

    - #### MILLIS_PER_MINUTE

          static final int MILLIS_PER_MINUTE

      Millis in a full minute (60.000).
      See Also:
        Constant Field Values

    - #### MILLIS_PER_SECOND

          static final int MILLIS_PER_SECOND

      Millis in a full second (1.000).
      See Also:
        Constant Field Values

    - #### HOUR_FIELD

          static final int HOUR_FIELD

      Constant to refer to the `TimeRGF.hour` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### MINUTE_FIELD

          static final int MINUTE_FIELD

      Constant to refer to the `TimeRGF.minute` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### SECOND_FIELD

          static final int SECOND_FIELD

      Constant to refer to the `TimeRGF.second` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### MILLIS_FIELD

          static final int MILLIS_FIELD

      Constant to refer to the `TimeRGF.millis` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### RAW_MILLIS_FIELD

          static final int RAW_MILLIS_FIELD

      Constant to refer to the `TimeRGF.raw_millis` field in `TimeRGF.get(int flag)` and `TimeRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### ENCODED_AS_INTEGER

          static final int ENCODED_AS_INTEGER

      Constant to indicate that DateRGF is encoded as an integer in the form of: ``year`*10000+ `month`*100+ `day``.

      Or:

      `TimeRGF.hour`*10000+ `TimeRGF.minute`*100+ `TimeRGF.second`.

      See Also:
        Constant Field Values

    - #### ENCODED_AS_SECONDS

          static final int ENCODED_AS_SECONDS

      Constant to indicate that the time is encoded as an integer representing the time as seconds relative to midnight.
      See Also:
        Constant Field Values

    - #### ENCODED_AS_MILLIS

          static final int ENCODED_AS_MILLIS

      Constant to indicate that the time is encoded as an integer representing the time as milliseconds relative to midnight.
      See Also:
        Constant Field Values

    - #### MONDAY

          static final int MONDAY

      Monday, has value 1 (ISO).
      See Also:
        Constant Field Values

    - #### TUESDAY

          static final int TUESDAY

      Tuesday, has value 2 (ISO).
      See Also:
        Constant Field Values

    - #### WEDNESDAY

          static final int WEDNESDAY

      Wednesday, has value 3 (ISO).
      See Also:
        Constant Field Values

    - #### THURSDAY

          static final int THURSDAY

      Thursday, has value 4 (ISO).
      See Also:
        Constant Field Values

    - #### FRIDAY

          static final int FRIDAY

      Friday, has value 5 (ISO).
      See Also:
        Constant Field Values

    - #### SATURDAY

          static final int SATURDAY

      Saturday, has value 6 (ISO).
      See Also:
        Constant Field Values

    - #### SUNDAY

          static final int SUNDAY

      Sunday, has value 7 (ISO).
      See Also:
        Constant Field Values

    - #### JANUARY

          static final int JANUARY

      January, has value 1 (ISO).
      See Also:
        Constant Field Values

    - #### FEBRUARY

          static final int FEBRUARY

      February, has value (ISO).
      See Also:
        Constant Field Values

    - #### MARCH

          static final int MARCH

      March, has value 3 (ISO).
      See Also:
        Constant Field Values

    - #### APRIL

          static final int APRIL

      April, has value 4 (ISO).
      See Also:
        Constant Field Values

    - #### MAY

          static final int MAY

      May, has value 5 (ISO).
      See Also:
        Constant Field Values

    - #### JUNE

          static final int JUNE

      June, has value 6 (ISO).
      See Also:
        Constant Field Values

    - #### JULY

          static final int JULY

      July, has value 7 (ISO).
      See Also:
        Constant Field Values

    - #### AUGUST

          static final int AUGUST

      August, has value 8 (ISO).
      See Also:
        Constant Field Values

    - #### SEPTEMBER

          static final int SEPTEMBER

      September, has value 9 (ISO).
      See Also:
        Constant Field Values

    - #### OCTOBER

          static final int OCTOBER

      October, has value 10 (ISO).
      See Also:
        Constant Field Values

    - #### NOVEMBER

          static final int NOVEMBER

      November, has value 11 (ISO).
      See Also:
        Constant Field Values

    - #### DECEMBER

          static final int DECEMBER

      December, has value 12 (ISO).
      See Also:
        Constant Field Values

    - #### YMD

          static final byte YMD

      Constant to indicate the order Year/Month/Day.
      See Also:
        Constant Field Values

    - #### MDY

          static final byte MDY

      Constant to indicate the order Month/Day/Year.
      See Also:
        Constant Field Values

    - #### DMY

          static final byte DMY

      Constant to indicate the order Day/Month/Year.
      See Also:
        Constant Field Values

    - #### DATE_ORDER

          static final int DATE_ORDER

      Constant to refer to the `DateRGF.dateOrder` field in `DateRGF.getStatic(int flag)` and `DateRGF.setStatic(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### YEAR_FIELD

          static final int YEAR_FIELD

      Constant to refer to the `DateRGF.year` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### Y

          static final int Y

      Constant to refer to the `DateRGF.year` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`. This is an alias for `YEAR_FIELD`.
      See Also:
        Constant Field Values

    - #### MONTH_FIELD

          static final int MONTH_FIELD

      Flag to refer to the `DateRGF.month` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### M

          static final int M

      Constant to refer to the `DateRGF.month` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`. This is an alias for `MONTH_FIELD`.
      See Also:
        Constant Field Values

    - #### DAY_FIELD

          static final int DAY_FIELD

      Constant to refer to the `DateRGF.day` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.
      See Also:
        Constant Field Values

    - #### D

          static final int D

      Constant to refer to the `DateRGF.day` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`. This is an alias for `DAY_FIELD`.
      See Also:
        Constant Field Values

    - #### JDN

          static final int JDN

      Constant to refer to the `DateRGF.jdn` field in `DateRGF.get(int flag)` and `DateRGF.set(int flag, int new_value)`.

      "JDN" stands for "Julian day number" and is a unique value assigned to each day of a Julian or Gregorian date.

      See Also:
        Constant Field Values

    - #### EPOCH_MJD

          static final int EPOCH_MJD

      Constant, epoch starts with 1858-11-17 and denotes the epoch of the "modified julian day (MJD)" sometimes used in calendar algorithms. To get a DateRGF object of it use `valueOf(DTC.EPOCH_MJD, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_MACINTOSH

          static final int EPOCH_MACINTOSH

      Constant, epoch starts with 1904-01-01. To get a DateRGF object of it use `valueOf(DTC.EPOCH_MACINTOSH, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_PALM

          static final int EPOCH_PALM

      Constant, epoch starts with 1904-01-01. Same as `EPOCH_MACINTOSH`. To get a DateRGF object of it use `valueOf(DTC.EPOCH_PALM, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_JAVA

          static final int EPOCH_JAVA

      Constant, epoch starts with 1970-01-01. To get a DateRGF object of it use `valueOf(DTC.EPOCH_JAVA, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_DOS

          static final int EPOCH_DOS

      Constant, epoch starts with 1980-01-01. To get a DateRGF object of it use `valueOf(DTC.EPOCH_DOS, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_WIN32

          static final int EPOCH_WIN32

      Constant, epoch starts with 1601-01-01. To get a DateRGF object of it use `valueOf(DTC.EPOCH_WIN32, 0)`.
      See Also:
        Constant Field Values

    - #### EPOCH_USER

          static final int EPOCH_USER

      Constant, epoch defined by the user (`DateRGF.setDefaultEpochDate(int value)`.
      See Also:
        Constant Field Values

    - #### EPOCH_DEFAULT

          static final int EPOCH_DEFAULT

      Constant, to indicate to use the default epoch. To get a DateRGF object of it use `valueOf(#valueOf(int flag, int daysToAdd) valueOf(DTC.EPOCH_DEFAULT, 0)`.
      See Also:
        Constant Field Values

    - #### DN

          static final int DN

      Constant 'day name'.
      See Also:
        Constant Field Values

    - #### DOW

          static final int DOW

      Constant 'day of week' (DOW). Values 1 (Monday) through 7 (Sunday).
      See Also:
        Constant Field Values

    - #### DOW_ORDINAL

          static final int DOW_ORDINAL

      Constant 'day of week relative to day which begins the week (`DateRGF.weekStart`. If week starts with Sundays, then a Sunday is 1 ('first day of the week'), Monday is 2 ('second day of the week') through Saturday, which is 7 ('seventh day of the week').
      See Also:
        Constant Field Values

    - #### WEEK

          static final int WEEK

      Constant 'ISO week number'. The first ISO week of a year is the one which contains the first Thursday of January. Therefore there may be years with 53 (!) weeks, e.g. 20041231 through 20050102.
      See Also:
        Constant Field Values

    - #### W

          static final int W

      Constant 'ISO week number'. This is an alias for `WEEK`.
      See Also:
        Constant Field Values

    - #### WB

          static final int WB

      Constant 'week begin'. This will start with the day given in `DateRGF.weekStart`.
      See Also:
        Constant Field Values

    - #### WE

          static final int WE

      Constant 'week end'. This is relative to `DateRGF.weekStart`.
      See Also:
        Constant Field Values

    - #### WEEKDAY

          static final int WEEKDAY

      Constant 'weekday' inidicating that the date is to be set to one of the given weekdays using the `DateRGF.set(int flag, int number)` method.
      See Also:
        Constant Field Values

    - #### MB

          static final int MB

      Constant 'month begin'.
      See Also:
        Constant Field Values

    - #### ME

          static final int ME

      Constant 'month end'.
      See Also:
        Constant Field Values

    - #### MN

          static final int MN

      Constant 'month name'.
      See Also:
        Constant Field Values

    - #### DAYS_IN_MONTH

          static final int DAYS_IN_MONTH

      Constant 'total of days in month'.
      See Also:
        Constant Field Values

    - #### Q

          static final int Q

      Constant 'quarter'.
      See Also:
        Constant Field Values

    - #### QB

          static final int QB

      Constant 'quarter begin'.
      See Also:
        Constant Field Values

    - #### QE

          static final int QE

      Constant 'quarter end'.
      See Also:
        Constant Field Values

    - #### HY

          static final int HY

      Constant 'half year' (semester).
      See Also:
        Constant Field Values

    - #### HYB

          static final int HYB

      Constant 'half year begin' (semester begin).
      See Also:
        Constant Field Values

    - #### HYE

          static final int HYE

      Constant 'half year end' (semester end).
      See Also:
        Constant Field Values

    - #### YB

          static final int YB

      Constant 'year begin'.
      See Also:
        Constant Field Values

    - #### YE

          static final int YE

      Constant 'year end'.
      See Also:
        Constant Field Values

    - #### GREGORIAN

          static final int GREGORIAN

      Constant to indicate the usage of the Gregorian calendar in the methods `DateRGF.jdn2date(int jdn, DateRGF aDate, int flag)` and `DateRGF.date2jdn(int year, int month, int day, int flag)`.
      See Also:
        Constant Field Values

    - #### JULIAN

          static final int JULIAN

      Constant to indicate the usage of the Julian calendar in the methods `DateRGF.jdn2date(int jdn, DateRGF aDate, int flag)` and `DateRGF.date2jdn(int year, int month, int day, int flag)`, or to indicate that a 'Julian date' (in the form 'YYYYddd') is desired in the method `DateRGF.get(int flag)`.
      See Also:
        Constant Field Values

    - #### NAD

          static final int NAD

      Constant to indicate an impossible value for `DateRGF.jdn`, "Not A Date"
      See Also:
        Constant Field Values

    - #### WEEK_START

          static final int WEEK_START

      Constant to refer to `DateRGF.weekStart`.
      See Also:
        Constant Field Values