|
| Time () |
| the default constructor returns an object with the present date and time More...
|
|
| Time (double jdn) |
| Construct time with Julian day number. More...
|
|
| Time (uInt year, uInt month, uInt day, uInt hour=0, uInt min=0, double sec=0.0) |
| Construct Time with Gregorian calendar. More...
|
|
| Time (const Time &time) |
| Copy constructor. More...
|
|
double | julianDay () const |
| return the Julian day (unit day) More...
|
|
double | modifiedJulianDay () const |
| return the modified Julian day (unit day) More...
|
|
Time & | operator= (const Time &time) |
| initialise the julian day data with Time class More...
|
|
double | operator- (const Time &begin) |
|
Time | operator+ (const double plus) |
|
Bool | operator== (const Time &other) const |
|
Bool | operator!= (const Time &other) const |
|
Bool | operator> (const Time &other) const |
|
Bool | operator< (const Time &other) const |
|
String | toString (const Bool iso=False) const |
| if iso is True, then use ISO 8601 format otherwise, produce the string of the form Tue Mar 22 16:40:24 1994 with GMT time More...
|
|
const String | ISODate () const |
| returns a String in ISO 8601 format YYYY-MM-DDTHH:MM:SS in GMT note: for dates beyond year 9999, use more digits for year More...
|
|
void | now () |
| reset date to the present instant More...
|
|
void | setDate (uInt year, uInt month, uInt day, uInt hour=0, uInt min=0, double sec=0.0) |
|
double | age () |
| number of seconds which have elapsed since Time object was created or reset More...
|
|
uInt | seconds () |
| Return the seconds, minutes or hour part of the time. More...
|
|
double | dseconds () |
|
uInt | minutes () |
|
uInt | hours () |
|
uInt | dayOfMonth () |
|
uInt | month () |
|
uInt | year () |
|
uInt | dayOfWeek () |
|
uInt | dayOfYear () |
|
date and time enquiry functions, with some operations.
Intended use:
Public interface
Review Status
- Reviewed By:
- Paul Shannon
- Date Reviewed:
- 1995/03/01
- Test programs:
- tTime
This class might be better named a Date object, especially given that more accurate Time classes are going to be required.
Prerequisite
-
you should understand the difference between "Julian" and "modified Julian" date
Synopsis
This class provides convenient date objects for the programmer. Once constructed, they may be compared, read and written, and queried for a wide variety of re-expressions. In a typical (?) use you might create a Time object, and then query it to find out the current month, day of the week, and whether it is a leap year. You can also find out the number of seconds which have elapsed since a specific Time.
Caution: This class should not be used for very high precision work; The time from epoch (1970;0) in seconds is interconverted between computer "double" values, and some loss of accuracy might result;
Example
Time moonLanding (1969,7,14);
cout << "date and time of moon landing: " << moonLanding << endl;
cout << "day of week: " << moonLanding.dayOfWeek () << endl;
cout << "day of year: " << moonLanding.dayOfYear () << endl;
cout << "seconds since moon landing: " << moonLanding.age () << endl;
cout << "weeks since moon landing: " <<
moonLanding.age () / (60 * 60 * 24 * 7) << endl;
cout << "seconds elapsed since start: " << startTime.age () << endl;
To Do
-
member function 'age' might be renamed 'elapsedTime'
-
A reference to the source of each algorithm should be provided.
Definition at line 88 of file Time.h.