Index: trunk/archive/pslib/include/psDateTime.h
===================================================================
--- trunk/archive/pslib/include/psDateTime.h	(revision 247)
+++ trunk/archive/pslib/include/psDateTime.h	(revision 256)
@@ -5,20 +5,92 @@
  *  \brief Dates and Times
  *  \ingroup AstroGroup
+ *  
+ *  The functions in this file define a set of conversions between different time systems and representations.
+ *  All convert to and from the PSLib internal time data value (TAI - TBR).  Available time representations
+ *  include: TAI (taia type), UTC (?), MJD (double?), ISO ISO point-in-time (YYYY-MM-DD,HH:MM:SS.SSS),
  */
 
 /** Get current MJD, for a timestamp */
-float
+double
 psGetMJD(void);
 
-/** Convert MJD to Human-readable date/time string */
+/** Get current sidereal time at longitude */
+double
+psGetSidereal(float mjd,		//!< MJD
+	      float longitude)		//!< Longitude
+;
+
+/***** convert from psTime *****/
+/** Convert psTime to ISOTime (Human-readable date/time string YYYY/MM/DD,HH:MM:SS.SSS) */
 char *
-psMJDToTime(float mjd			//!< Input MJD
-	    );
+psTimeToISOTime (psTime time)		//!< Input psTime time
+;
 
-/** Get Sidereal time */
-float
-psGetSidereal(float mjd,		//!< MJD
-	      float longitude		//!< Longitude
-	      );
+/** Convert psTime to UTC */
+double
+psTimeToUTC (psTime time)		//!< Input psTime time
+;
+
+/** Convert psTime to MJD */
+double
+psTimeToMJD (psTime time)		//!< Input psTime time
+;
+
+/** Convert psTime to JD */
+double
+psTimeToJD (psTime time)			//!< Input psTime time
+;
+
+/** Convert psTime to timeval (struct timeval) */
+struct timeval *
+psTimeToTimeval (psTime time)		//!< Input psTime time
+;
+
+/** Convert psTime to broken-down time (struct tm) */
+struct tm *
+psTimeToTm (psTime time)			//!< Input psTime time
+;
+
+/***** convert to psTime *****/
+/** Convert ISOTime (Human-readable date/time string YYYY/MM/DD,HH:MM:SS.SSS) to psTime */
+psTime *
+psISOTimeToTime (char *input)		//!< Input ISOTime time
+;
+
+/** Convert UTC to psTime */
+psTime *
+psUTCToTime (double input)		//!< Input UTC time
+;
+
+/** Convert MJD to psTime */
+psTime *
+psMJDToTime (double input)		//!< Input MJD time
+;
+
+/** Convert JD to psTime */
+psTime *
+psJDToTime (double input)		//!< Input JD time
+;
+
+/** Convert timeval to psTime (struct timeval) */
+psTime *
+psTimevalToTime (struct timeval *input)	//!< Input timeval time
+;
+
+/** Convert broken-to psTime down time (struct tm) */
+psTime *
+psTMtoTime (struct tm *input)		//!< Input tm time
+;
 
 #endif
+
+/* date/time representations of interest:
+
+  TAI - 
+  UTC - long? float? double?
+  MJD - double?
+  ISO - yyyy-mm-dd hh:mm:ss +oooo
+  point-in-time YYYY/MM/DD,HH:MM:SS.SSS
+  timeval
+  
+*/
