Index: /trunk/psLib/src/astro/psTime.c
===================================================================
--- /trunk/psLib/src/astro/psTime.c	(revision 7960)
+++ /trunk/psLib/src/astro/psTime.c	(revision 7961)
@@ -10,6 +10,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.91 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-07-20 12:59:07 $
+ *  @version $Revision: 1.92 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-07-25 01:16:04 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -1681,4 +1681,25 @@
 }
 
+psString psTimeStrftime(const psTime *time, const char *format)
+{
+    PS_ASSERT_PTR_NON_NULL(time, NULL);
+    PS_ASSERT_PTR_NON_NULL(format, NULL);
+
+    struct tm *tmTime = psTimeToTM(time);
+
+    psString s = psAlloc(MAX_TIME_STRING_LENGTH);
+    size_t size = strftime(s, MAX_TIME_STRING_LENGTH, format, tmTime);
+    psFree(tmTime);
+    // it's worth nothing that strftime() can zero without an error having
+    // occured don't believe it's worth supporting that edge case.  See
+    // strftime(3) for further details.
+    if (size == 0) {
+        psError(PS_ERR_UNKNOWN, true, "failed to stringify a psTime");
+        return NULL;
+    }
+
+    return s;
+}
+
 psTime* psTimeMath(const psTime *time,
                    double delta)
Index: /trunk/psLib/src/astro/psTime.h
===================================================================
--- /trunk/psLib/src/astro/psTime.h	(revision 7960)
+++ /trunk/psLib/src/astro/psTime.h	(revision 7961)
@@ -11,6 +11,6 @@
  *  @author Ross Harman, MHPCC
  *
- *  @version $Revision: 1.47 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2006-06-27 04:13:07 $
+ *  @version $Revision: 1.48 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2006-07-25 01:16:04 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -375,6 +375,19 @@
 
 psTime* psTimeStrptime(
-    const char *s,                  ///< string to be converted
-    const char *format              ///< strptime format
+    const char *s,                      ///< string to be converted
+    const char *format                  ///< strptime(3) format
+);
+
+/** Convert a psTime into a formated string.
+ *
+ *  Converts a psTime, using a strftime(3) format, into a formatted string.
+ *  See strftime(3) for documentation on this format.
+ *
+ *  @return  psString: string.
+ */
+
+psString psTimeStrftime(
+    const psTime *time,                 ///< Time to be formatted.
+    const char *format                  ///< strftime(3) format
 );
 
