File: rt_nonfinite.c

    1   /*
    2    * File: rt_nonfinite.c
    3    *
    4    * Code generated for Simulink model 'bh_f14'.
    5    *
    6    * Model version                  : 1.18
    7    * Simulink Coder version         : 8.10 (R2016a) 10-Feb-2016
    8    * C/C++ source code generated on : Wed Jun 22 07:56:08 2016
    9    *
   10    * Target selection: ert.tlc
   11    * Embedded hardware selection: 32-bit Generic
   12    * Code generation objectives: Unspecified
   13    * Validation result: Not run
   14    */
   15   
   16   /*
   17    * Abstract:
   18    *      Function to intialize non-finites,
   19    *      (Inf, NaN and -Inf).
   20    */
   21   #include "rt_nonfinite.h"
   22   #include "rtGetNaN.h"
   23   #include "rtGetInf.h"
   24   
   25   real_T rtInf;
   26   real_T rtMinusInf;
   27   real_T rtNaN;
   28   real32_T rtInfF;
   29   real32_T rtMinusInfF;
   30   real32_T rtNaNF;
   31   
   32   /*
   33    * Initialize the rtInf, rtMinusInf, and rtNaN needed by the
   34    * generated code. NaN is initialized as non-signaling. Assumes IEEE.
   35    */
   36   void rt_InitInfAndNaN(size_t realSize)
   37   {
   38     (void) (realSize);
   39     rtNaN = rtGetNaN();
   40     rtNaNF = rtGetNaNF();
   41     rtInf = rtGetInf();
   42     rtInfF = rtGetInfF();
   43     rtMinusInf = rtGetMinusInf();
   44     rtMinusInfF = rtGetMinusInfF();
   45   }
   46   
   47   /* Test if value is infinite */
   48   boolean_T rtIsInf(real_T value)
   49   {
   50     return (boolean_T)((value==rtInf || value==rtMinusInf) ? 1U : 0U);
   51   }
   52   
   53   /* Test if single-precision value is infinite */
   54   boolean_T rtIsInfF(real32_T value)
   55   {
   56     return (boolean_T)(((value)==rtInfF || (value)==rtMinusInfF) ? 1U : 0U);
   57   }
   58   
   59   /* Test if value is not a number */
   60   boolean_T rtIsNaN(real_T value)
   61   {
   62     return (boolean_T)((value!=value) ? 1U : 0U);
   63   }
   64   
   65   /* Test if single-precision value is not a number */
   66   boolean_T rtIsNaNF(real32_T value)
   67   {
   68     return (boolean_T)(((value!=value) ? 1U : 0U));
   69   }
   70   
   71   /*
   72    * File trailer for generated code.
   73    *
   74    * [EOF]
   75    */
   76