/* * rt_nonfinite.c * * Code generation for function 'myFunc' * * C source code generated on: Thu Mar 29 12:55:13 2012 * */ /* * Abstract: * MATLAB for code generation function to initialize non-finites, * (Inf, NaN and -Inf). */ #include "rt_nonfinite.h" #include "rtGetNaN.h" #include "rtGetInf.h" real_T rtInf; real_T rtMinusInf; real_T rtNaN; real32_T rtInfF; real32_T rtMinusInfF; real32_T rtNaNF; /* Function: rt_InitInfAndNaN ================================================== * Abstract: * Initialize the rtInf, rtMinusInf, and rtNaN needed by the * generated code. NaN is initialized as non-signaling. Assumes IEEE. */ void rt_InitInfAndNaN(size_t realSize) { (void) (realSize); rtNaN = rtGetNaN(); rtNaNF = rtGetNaNF(); rtInf = rtGetInf(); rtInfF = rtGetInfF(); rtMinusInf = rtGetMinusInf(); rtMinusInfF = rtGetMinusInfF(); } /* Function: rtIsInf ================================================== * Abstract: * Test if value is infinite */ boolean_T rtIsInf(real_T value) { return ((value==rtInf || value==rtMinusInf) ? 1U : 0U); } /* Function: rtIsInfF ================================================= * Abstract: * Test if single-precision value is infinite */ boolean_T rtIsInfF(real32_T value) { return(((value)==rtInfF || (value)==rtMinusInfF) ? 1U : 0U); } /* Function: rtIsNaN ================================================== * Abstract: * Test if value is not a number */ boolean_T rtIsNaN(real_T value) { #if defined(_MSC_VER) && (_MSC_VER <= 1200) return _isnan(value)? TRUE:FALSE; #else return (value!=value)? 1U:0U; #endif } /* Function: rtIsNaNF ================================================= * Abstract: * Test if single-precision value is not a number */ boolean_T rtIsNaNF(real32_T value) { #if defined(_MSC_VER) && (_MSC_VER <= 1200) return _isnan((real_T)value)? true:false; #else return (value!=value)? 1U:0U; #endif } /* End of code generation (rt_nonfinite.c) */