! Copyright (C) GFD Dennou Club, 2000.  All rights reserved

module dc_date_types

    implicit none
    ! 通日と通秒の対で日付時刻を表現する。

    type DC_DATETIME
        sequence
        integer:: day
        double precision:: sec
    end type

    ! 「1ヵ月後」という概念に対応するため、month 欄を持つ。
    ! 注意: 日付と違って月を normalize することはできない。
    type DC_DIFFTIME
        sequence
        integer:: mon
        integer:: day
        double precision:: sec
    end type

    integer, parameter:: CAL_CYCLIC = 1
    integer, parameter:: CAL_NOLEAP = 2
    integer, parameter:: CAL_JULIAN = 3
    integer, parameter:: CAL_GREGORIAN = 4
    integer, save:: caltype = CAL_GREGORIAN

    double precision, save:: cyclic_mdays = 30.6
    double precision, save:: day_seconds = 86400.0

end module
