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

   ekdelr_c ( EK, delete record from segment ) 

   void ekdelr_c ( SpiceInt   handle,
                   SpiceInt   segno,
                   SpiceInt   recno )

Abstract

   Delete a specified record from a specified E-kernel segment.

Required_Reading

   EK

Keywords

   EK
   UTILITY


Brief_I/O

   VARIABLE  I/O  DESCRIPTION
   --------  ---  --------------------------------------------------
   handle     I   File handle.
   segno      I   Segment number.
   recno      I   Record number.

Detailed_Input

   handle      is a file handle of an EK open for write access.

   segno       is the number of the segment to which the record
               is to be added. EK segment numbers range from
               zero to N-1, where N is the number of segments
               in the kernel.

   recno       is the index of the record to delete. recno must
               be in the range 0 : N, where N is the
               number of records in the segment prior to the
               insertion.

Detailed_Output

   None. See the -Particulars section for a description of the
   effect of this routine.

Parameters

   None.

Exceptions

   1)  If `handle' is invalid, an error is signaled by a routine in the
       call tree of this routine. The file will not be modified.

   2)  If `segno' is out of range, the error SPICE(INVALIDINDEX) is
       signaled by a routine in the call tree of this routine. The
       file will not be modified.

   3)  If `recno' is out of range, the error SPICE(INVALIDINDEX) is
       signaled by a routine in the call tree of this routine. The
       file will not be modified.

   4)  If an I/O error occurs while reading or writing the indicated
       file, the error is signaled by a routine in the call tree of
       this routine. The file may be corrupted.

Files

   See the EK Required Reading for a discussion of the EK file
   format.

Particulars

   This routine operates by side effects: it deletes a record
   from an EK segment. Deleting a record implies:

      1) All column entries in the record are deleted.

      2) Link counts are decremented for data pages containing
         column entries in the record to be deleted. Pages whose
         link counts drop to zero are freed.

      3) All column indexes are updated for the parent segment.

      4) The link count is decremented for the page containing the
         record pointer structure of the record to be deleted. If
         the link count drops to zero, the page is freed.

      5) The pointer to the deleted record is deleted from the
         record tree for the parent segment.

      6) The segment's metadata is updated to reflect the new
         record count.

Examples

   1)  Suppose the second segment of an EK file designated by
       handle contains 5 records:

          +-----------------+
          |     Record 0    |
          +-----------------+
          |     Record 1    |
          +-----------------+
          |     Record 2    |
          +-----------------+
          |     Record 3    |
          +-----------------+
          |     Record 4    |
          +-----------------+

       Then the call

          ekdelr_c ( handle, 1, 2 )

       deletes the third record from the segment, leaving the
       segment's contents as follows:

          +-----------------+
          |     Record 0    |
          +-----------------+
          |     Record 1    |
          +-----------------+
          |     Record 3    |
          +-----------------+
          |     Record 4    |
          +-----------------+

Restrictions

   None.

Literature_References

   None.

Author_and_Institution

   N.J. Bachman        (JPL)
   J. Diaz del Rio     (ODC Space)

Version

   -CSPICE Version 1.0.1, 10-AUG-2021 (JDR)

       Edited the header to comply with NAIF standard.

   -CSPICE Version 1.0.0, 16-JUN-2000 (NJB)

Index_Entries

   delete record from an EK segment
Fri Dec 31 18:41:05 2021