scard_c |
Table of contents
Procedurescard_c ( Set the cardinality of a cell ) void scard_c ( SpiceInt card, SpiceCell * cell ) AbstractSet the cardinality of a SPICE cell of any data type. Required_ReadingCELLS KeywordsCELLS Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- card I Cardinality of (number of elements in) the cell. cell O The cell. Detailed_Inputcard is the cardinality of (number of elements in) the cell. Detailed_Outputcell is a SpiceCell of any data type. On output, the cardinality of the cell is `card'. The data portion of the cell is left unchanged. If the cardinality is set to zero, the cell becomes a SPICE set: the cell's "is a set?" attribute becomes true. The cell then can be used as an input to the SPICE set routines such as insrtX_c. `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. ParametersNone. Exceptions1) If the `cell' cell arguments does not have a recognized data type, the error SPICE(NOTSUPPORTED) is signaled. 2) If the cardinality value supplied is less than 0 or greater than the cell size, the error SPICE(INVALIDCARDINALITY) is signaled. FilesNone. ParticularsThe set cardinality (scard_c) and set size (ssize_c) routines are typically used to initialize cells for subsequent use. The set cardinality routines are also used by library routines which manipulate cells (including set and window routines) to reset the cardinalities of cells as they gain or lose elements. Examples1) Declare an integer cell. Populate the cell, then reset the cardinality to zero to effectively make room in the cell. #include "SpiceUsr.h" . . . #define SIZE 10 Spiceint i; /. Declare a cell with room for SIZE integers. ./ SPICEINT_CELL ( icell, SIZE ); /. Fill in the cell with integers 0 through 9. ./ for ( i = 0; i < SIZE; i++ ) { appndi_c ( i, &icell ); } . . . /. Make room in the cell. ./ scard_c ( 0, &icell ); . . . RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionN.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_Output to include type and preferred declaration method. Added entry #1 in -Exceptions section. -CSPICE Version 1.0.0, 21-AUG-2002 (NJB) (CAC) (WLT) (IMU) Index_Entriesset the cardinality of an integer cell |
Fri Dec 31 18:41:11 2021