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

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

   void ssize_c (  SpiceInt      size,   
                   SpiceCell   * cell  )

Abstract

 
   Set the size (maximum cardinality) of a CSPICE 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 CSPICE cell of any data type.

Detailed_Output

 
 
   cell        is, on output, the 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  CSPICE set:  the cell's "is a set?"
               attribute becomes true.  The cell then can be used as 
               an input to the CSPICE set routines such as insrt*_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 CSPICE cell routines
      cannot detect this error.

Files

 
   None. 
 

Particulars

 
   Unlike their counterparts in the Fortran SPICELIB library, 
   CSPICE cells are initialized automatically when accessed via
   the CSPICE 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

 
   See exception #2 in the Exceptions section.
 

Literature_References

 
   None. 
 

Author_and_Institution

 
   N.J. Bachman    (JPL) 
   C.A. Curzon     (JPL) 
   W.L. Taber      (JPL) 
   I.M. Underwood  (JPL) 
 

Version

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

Index_Entries

 
   set the size of a cell

Link to routine ssize_c source file ssize_c.c

Wed Apr  5 17:54:44 2017