/* Copyright (C) 2014-2020, Dirk Krause SPDX-License-Identifier: BSD-3-Clause */ /* WARNING: This file was generated by the dkct program (see http://dktools.sourceforge.net/ for details). Changes you make here will be lost if dkct is run again! You should modify the original source and run dkct on it. Original source: dk3madic.ctr */ #ifndef DK3MADIC_H_INCLUDED /** Avoid multiple inclusions. */ #define DK3MADIC_H_INCLUDED 1 #line 10 "dk3madic.ctr" /** @file dk3madic.h Conversion from double to int/unsigned. */ #include #include #if DK3_HAVE_SYS_TYPES_H #include #endif #if DK3_HAVE_STDINT #include #endif #if DK3_HAVE_INTTYPES_H #include #endif #if DK3_HAVE_LIMITS_H #include #endif #if DK3_HAVE_MATH_H #include #endif #if DK3_HAVE_FLOAT_H #include #endif #ifdef __cplusplus extern "C" { #endif /** Convert double value to int. @param x Double value to convert. @param ec Pointer to error code variable. Set to DK3_ERROR_MATH_OVERFLOW if the absolute value of x is too large. @return Conversion result. */ int dk3ma_d_to_i_ok(double x, int *ec); /** Convert double value to unsigned. @param x Double value to convert. @param ec Pointer to error code variable. Set to DK3_ERROR_MATH_OVERFLOW if the absolute value of x is too large, DK3_ERROR_MATH_OUT_OF_RANGE for negative x. @return Conversion result. */ unsigned dk3ma_d_to_u_ok(double x, int *ec); #ifdef __cplusplus } #endif #endif