Index Page gfbail_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
       SpiceBoolean gfbail_c ()
#### Abstract
       Indicate whether an interrupt signal (SIGINT) has been received.
#### Required_Reading
       GF
#### Keywords
       GEOMETRY
       SEARCH
       UTILITY
#### Brief_I/O
       The function returns SPICETRUE if an interrupt signal has
       been received by the GF handler.
#### Detailed_Input
       None
#### Detailed_Output
       The function returns SPICETRUE if an interrupt signal has been
       received by the GF handler gfinth_c since the first setting of the
       handler or the last call to gfclrh_c, whichever is most recent.
       Otherwise the function returns SPICEFALSE.
#### Parameters
       None.
#### Exceptions
       Error free.
#### Files
       None.
#### Particulars
       This routine returns the interrupt signal handler status maintained
       by the GF subsystem.

       User applications that use default GF interrupt handling should call
       this routine after each call to a GF API that can process an
       interrupt signal. In general, if this routine indicates that an
       interrupt signal was received, any GF processing that was interrupted
       should be presumed to have invalid results.
#### Examples
       1) The code fragment below is from an example program in
          the header of gfocce_c. The code includes a search,
          a call to gfbail_c, which is made to determine whether
          an interrupt signal was received, and a call to
          gfclrh_c to clear the interrupt signal status.

                ...

                /.
                Turn on interrupt handling and progress reporting.
                ./
                bail = SPICETRUE;
                rpt  = SPICETRUE;

                /.
                Perform the search.
                ./
                gfocce_c ( "ANY",
                           "MOON",     "ellipsoid",  "IAU_MOON",
                           "SUN",      "ellipsoid",  "IAU_SUN",
                           "LT",       "EARTH",      CNVTOL,
                           gfstep_c,   gfrefn_c,     rpt,
                           gfrepi_c,   gfrepu_c,     gfrepf_c,
                           bail,       gfbail_c,     &cnfine,
                           &result                              );

                if ( gfbail_c() )
                {
                   /.
                   Clear the CSPICE interrupt indication. This is
                   an essential step for programs that continue
                   running after an interrupt; gfbail_c will
                   continue to return SPICETRUE until this step
                   has been performed.
                   ./
                   gfclrh_c();

                   /.
                   We've trapped an interrupt signal. In a realistic
                   application, the program would continue operation
                   from this point. In this simple example, we simply
                   display a message and quit.
                   ./
                   printf ( "\nSearch was interrupted.\n\nThis message "
                            "was written after an interrupt signal\n"
                            "was trapped. By default, the program "
                            "would have terminated \nbefore this message "
                            "could be written.\n\n"                       );
                }
                else

                ...
#### Restrictions
       This routine has no visible effect on operation of user applications
       unless GF interrupt handling is enabled and this routine is used as
       the interrupt signal receipt indicator.
#### Literature_References
       None.
#### Author_and_Institution
       N.J. Bachman   (JPL)
       L.S. Elson     (JPL)
#### Version
       -CSPICE Version 1.0.0, 05-FEB-2009 (NJB) (LSE)
#### Index_Entries
       GF interrupt signal receipt indicator
#### Link to routine gfbail_c source file gfbail_c.c

    Wed Jun  9 13:05:24 2010