HELPLIB.HLB  —  DCE  DCE_DTS, Application Routines, utc_addtime
 NAME

   utc_addtime - Computes the sum of two binary timestamps

 SYNOPSIS

   #include <dce/utc.h>

   int utc_addtime( utc_t* result,
                    utc_t *utc1,
                    utc_t *utc2 );

 PARAMETERS

   Input

   utc1
       Binary timestamp or relative binary timestamp. Use NULL if you
       want this routine to use the current time for this parameter.

   utc2
       Binary timestamp or relative binary timestamp. Use NULL if you
       want this routine to use the current time for this parameter.

   Output

   result
       Resulting binary timestamp or relative binary timestamp, depending
       upon the operation performed:

         + relative time+relative time=relative time

         + absolute time+relative time=absolute time

         + relative time+absolute time=absolute time

         + absolute time+absolute time is undefined.  (See the note later
           in this reference page.)

 DESCRIPTION

   The utc_addtime() routine adds two binary timestamps, producing a
   third binary timestamp whose inaccuracy is the sum of the two input
   inaccuracies.  One or both of the input timestamps typically
   represents a relative (delta) time. The TDF in the first input time-
   stamp is copied to the output.  The timestamps can be two relative
   times or a relative time and an absolute time.

 NOTES

   Although no error is returned, the combination absolute time+absolute
   time should not be used.

 RETURN VALUES

    0    Indicates that the routine executed successfully.

   -1    Indicates an invalid time parameter or invalid results.

 EXAMPLES

   The following example shows how to compute a timestamp that represents
   a time at least 5 seconds in the future.

       utc_t               now, future, fivesec;
       reltimespec_t       tfivesec;
       timespec_t          tzero;

     /*   Construct a timestamp that represents 5 seconds...        */
     tfivesec.tv_sec = 5;
     tfivesec.tv_nsec = 0;
     tzero.tv_sec = 0;
     tzero.tv_nsec = 0;
     utc_mkbinreltime(&fivesec,  /* Out: 5 secs in binary timestamp    */
                      &tfivesec, /* In:  5 secs in timespec            */
                      &tzero);   /* In:  0 secs inaccuracy in timespec */

     /*  Get the maximum possible current time...
      *  (The NULL input parameter is used to specify the current time.)
      */
     utc_pointtime((utc_t *)0,  /* Out: Earliest possible current time */
                   (utc_t *)0,  /* Out: Midpoint of current time       */
                   &now,        /* Out: Latest possible current time   */
                   (utc_t *)0); /* In:  Use current time               */

     /*   Add 5 seconds to get future timestamp...        */
     utc_addtime(&future,       /* Out: Future binary timestamp       */
                 &now,          /* In:  Latest possible time now      */
                 &fivesec);     /* In:  5 secs                        */

 RELATED INFORMATION

   Functions: utc_subtime
Close Help