brckti_c

Index Page brckti_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
       SpiceInt brckti_c ( SpiceInt  number,
                           SpiceInt  end1,
                           SpiceInt  end2   )
#### Abstract
       Bracket a number. That is, given a number and an acceptable
       interval, make sure that the number is contained in the
       interval. (If the number is already in the interval, leave it
        alone. If not, set it to the nearest endpoint of the interval.)
#### Required_Reading
       None.
#### Keywords
       None.
#### Brief_I/O
       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       number     I   Number to be bracketed.
       end1       I   One of the bracketing endpoints for number.
       end2       I   The other bracketing endpoint for number.

       The function returns the bracketed number.
#### Detailed_Input
       number      is the number to be bracketed. That is, the
                   value of number is constrained to lie in the
                   interval bounded by end1 and end2.

       end1,
       end2        are the lower and upper bounds for number. The
                   order is not important.
#### Detailed_Output
       The function returnes the input number, if it was already in the
       interval provided. Otherwise the returned value is the nearest
       bound of the interval.
#### Parameters
       None.
#### Exceptions
       Error free.
#### Files
       None.
#### Particulars
       This routine provides a shorthand notation for code fragments
       like the following

          #include "SpiceUsr.h"
                .
                .
                .
          if ( number < end 1 )
          {
             number = end1;
          }
          else if ( number > end2 )
          {
             number = end2;
          }

       which occur frequently during the processing of program inputs.
#### Examples
        The following illustrates the operation of brckti_c.

              brckti_c (  -1,   1,  10 )  =  1.0;
              brckti_c (  29,   1,  10 )  = 10.0;
              brckti_c (   3, -10,  10 )  =  3.0;
              brckti_c (   3, -10,  -1 )  = -1.0;

        The following code fragment illustrates a typical use for brckti_c.

           #include "SpiceUsr.h"
                .
                .
                .
           /.
           Number of time steps must be in the range 1-10.
           ./

           prompt_c ( "Enter number of time steps > ", 80, nStr );

           prsint_c ( nStr, &n );

           nstep = brckti_c ( n, 1, 10 );
#### Restrictions
       None.
#### Literature_References
       None.
#### Author_and_Institution
       N.J. Bachman    (JPL)
       W.L. Taber      (JPL)
       I.M. Underwood  (JPL)
#### Version
       -CSPICE Version 1.0.1, 11-NOV-2006 (EDW)

          Added "None." text to Keywords section, required for
          API doc script (cspicehtml.pl) integrity checks.

       -CSPICE Version 1.0.0, 16-AUG-1999 (NJB) (WLT) (IMU)
#### Index_Entries
       bracket an integer value within an interval
#### Link to routine brckti_c source file brckti_c.c

    Thu Apr 16 08:57:25 2009