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
ssize_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

   ssize_c ( Set the size of a cell ) 

   void ssize_c (  SpiceInt      size,
                   SpiceCell   * cell  )

Abstract

   Set the size (maximum cardinality) of a SPICE cell of any data
   type.

Required_Reading

   CELLS

Keywords

   CELLS


Brief_I/O

   VARIABLE  I/O  DESCRIPTION
   --------  ---  --------------------------------------------------
   size       I   Size (maximum cardinality) of the cell.
   cell       O   The cell.

Detailed_Input

   size        is the new value of the size (maximum number of elements) of
               the cell.

               `size' must be non-negative and must be no larger than the
               initial declared size of the cell.

   cell        is a SPICE cell of any data type.

               `cell' must be declared as a character, double precision or
               integer SpiceCell.

               CSPICE provides the following macros, which declare and
               initialize the cell

                  SPICECHAR_CELL          ( cell, CELLSZ, CELLMLEN );
                  SPICEDOUBLE_CELL        ( cell, CELLSZ );
                  SPICEINT_CELL           ( cell, CELLSZ );

               where CELLSZ is the maximum capacity of `cell' and CELLMLEN is
               the maximum length of any member in the character cell.

Detailed_Output

   cell        on output, is the input cell with its size updated to the value
               given by the input argument size.

               The cardinality of the cell is set to 0.

               The cell becomes a  SPICE set: the cell's "is a set?" attribute
               becomes SPICETRUE. The cell then can be used as an input to the
               SPICE set routines such as insrtX_c.

               Unlike the cell "set size" routines in the Fortran SPICE
               Toolkit's SPICELIB library, this routine does not clear the
               unused portion of the cell's control area.

Parameters

   None.

Exceptions

   1)  If an attempt is made to set the size of the cell to a negative
       number, the error SPICE(INVALIDSIZE) is signaled.

   2)  The size of a cell may not be set to a value larger than the
       original declared size. However, the SPICE cell routines
       cannot detect this error.

   3)  If the input `cell' cell argument does not have a recognized data
       type, the error SPICE(NOTSUPPORTED) is signaled.

Files

   None.

Particulars

   Unlike their counterparts in the Fortran SPICELIB library, cells in
   CSPICE are initialized automatically when accessed via the SPICE cell
   API routines, so there is normally no reason to call this routine.

   This routine is provided for the sake of completeness.

Examples

   1) Declare an integer cell. Populate the cell, then reset
      the size to 1/2 the originally declared size, in order
      to inhibit write access to the last portion of the cell.

         #include "SpiceUsr.h"
               .
               .
               .

         #define SIZE          10

         /.
         Declare a cell with room for SIZE integers.
         ./
         SPICEINT_CELL         ( icell, SIZE );
               .
               .
               .
         /.
         Reduce the size of the cell.
         ./
         ssize_c ( SIZE/2, &icell );

Restrictions

   1)  See exception (2) in the -Exceptions section.

Literature_References

   None.

Author_and_Institution

   N.J. Bachman        (JPL)
   C.A. Curzon         (JPL)
   J. Diaz del Rio     (ODC Space)
   W.L. Taber          (JPL)
   I.M. Underwood      (JPL)

Version

   -CSPICE Version 1.0.1, 24-NOV-2021 (JDR)

       Edited the header to comply with NAIF standard.

       Extended description of argument "cell" in -Detailed_Input to include
       type and preferred declaration method.

       Added entry #3 in -Exceptions section.

   -CSPICE Version 1.0.0, 21-AUG-2002 (NJB) (CAC) (WLT) (IMU)

Index_Entries

   set the size of a cell
Fri Dec 31 18:41:13 2021