Index of Functions: A B C D E F G H I J K L M N O P Q R S T U V W X
Index Page spkuds_c

Table of contents

Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       spkuds_c ( SPK - unpack segment descriptor )

       void spkuds_c ( ConstSpiceDouble     descr [5],
                       SpiceInt           * body,
                       SpiceInt           * center,
                       SpiceInt           * frame,
                       SpiceInt           * type,
                       SpiceDouble        * first,
                       SpiceDouble        * last,
                       SpiceInt           * baddrs,
                       SpiceInt           * eaddrs     )

#### Abstract

       Unpack the contents of an SPK segment descriptor.

#### Required_Reading

       SPK

#### Keywords

       SPK

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       descr      I   An SPK segment descriptor.
       body       O   The NAIF ID code for the body of the segment.
       center     O   The center of motion for `body'.
       frame      O   The code for the frame of this segment.
       type       O   The type of SPK segment.
       first      O   The first epoch for which the segment is valid.
       last       O   The last  epoch for which the segment is valid.
       baddrs     O   Beginning DAF address of the segment.
       eaddrs     O   Ending DAF address of the segment.

#### Detailed_Input

       descr       is an SPK segment descriptor.

#### Detailed_Output

       body        is the NAIF ID code for the body of the segment.

       center      is the center of motion for `body'.

       frame       is the SPICE integer code for the frame to which states
                   for the body are be referenced.

       type        is the type of SPK segment.

       first       is the first epoch for which the segment has
                   ephemeris data.

       last        is the last epoch for which the segment has
                   ephemeris data.

       baddrs      is the starting address of the data associated
                   with this descriptor.

       eaddrs      is the last address of the data associated with
                   this descriptor.

#### Parameters

       None.

#### Exceptions

       Error free.

       1)  If the input descriptor `descr' is invalid, it's possible for
           the output times to contain bit patterns that don't represent
           normal double precision values. This error is not diagnosed.

#### Files

       None.

#### Particulars

       This routine extracts the contents of an SPK segment
       descriptor into the components needed for reading and
       evaluating the data stored in the segment. It serves
       as a macro for expanding the SPK segment descriptor.

#### Examples

       Suppose you wished to summarize a particular SPK segment
       and that you have the descriptor for that segment in hand.
       The following code fragment shows how you might use this
       routine to create a summary message concerning the segment.

           #include <stdio.h>
           #include "SpiceUsr.h"

           #define   TIMLEN       35
                 .
                 .
                 .

           spkuds_c ( descr,  &body, &center, &frame,
                      &type,  &first, &last,  &baddr, &eaddr );

           /.
           Convert the start and stop times to TDB calendar strings.
           ./
           etcal_c ( first, TIMLEN, fstcal );
           etcal_c ( last,  TIMLEN, lstcal );

           printf ( "\n"
                    "Body     : %d\n"
                    "Center   : %d\n"
                    "Frame ID : %d\n"
                    "Data Type: %d\n"
                    "\n"
                    "Segment Start :  %s\n"
                    "Segment Stop  :  %s\n",
                    body,
                    center,
                    frame,
                    type,
                    fstcal,
                    lstcal                   );

#### Restrictions

       None.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman        (JPL)
       J. Diaz del Rio     (ODC Space)
       K.R. Gehringer      (JPL)
       W.L. Taber          (JPL)

#### Version

       -CSPICE Version 1.2.0, 17-JUN-2021 (JDR)

           Changed the output argument names "begin" and "end" to "baddrs" and
           "eaddrs" for consistency with other routines.

           Edited the header to comply with NAIF standard. Added -Exceptions
           section.

       -CSPICE Version 1.1.0, 24-JUL-2001 (NJB)

           Changed prototype: input descr is now type (ConstSpiceDouble *).
           Implemented interface macro for casting input descr to const.

       -CSPICE Version 1.0.0, 22-JUL-1999 (NJB) (WLT) (KRG)

#### Index_Entries

       Unpack and SPK segment descriptor

#### Link to routine spkuds_c source file spkuds_c.c

    Fri Dec 31 18:41:13 2021