Core Foundation measures time in units of seconds. The base data type is the
CFTimeInterval, which measures the difference in seconds between two times. Fixed times, or dates, are defined by the
CFAbsoluteTime data type, which measures the time interval between a particular date and the absolute reference date of Jan 1 2001 00:00:00 GMT.
CFGregorianDate structure represents absolute times in terms of the Gregorian calendar. Functions such as
CFAbsoluteTimeGetGregorianDate(_:_:) use a CFTimeZone object to obtain the local time in a particular time zone.
The CFDate opaque type wraps an absolute time into a CFType-base object, allowing you to put time objects into into collections and property lists and to be handled by other object-oriented parts of Core Foundation.