src/ufo/filters/VariableAssignment.cc
int safeCast(float x, float missingIn, int missingOut) {
  if (x == missingIn)
    return missingOut;
  // Throws boost::math::rounding_error if x is outside the range representable by ints
  return boost::math::iround(x);
}
/// Convert a float \p x to an int by rounding. If \p is equal to \p missingIn, return \p
/// missingOut. If the value to be returned is too large to be represented by an int, throw an
/// exception.
Convert a float \p x to an int by rounding. If \p is equal to \p missingIn, return \p
missingOut. If the value to be returned is too large to be represented by an int, throw an
exception.
Convert a float \ p x to an int by rounding . If \ p is equal to \ p missingIn return \ p missingOut . If the value to be returned is too large to be represented by an int throw an exception .
int safeCast(float x, float missingIn, int missingOut) {
  if (x == missingIn)
    return missingOut;
  return boost::math::iround(x);
}
int safeCast ( float x , float missingIn , int missingOut ) { if ( x == missingIn ) return missingOut ; return boost :: math :: iround ( x ) ; }
Convert a float \p x to an int by rounding.
Convert a float \ p x to an int by rounding .
// Throws boost::math::rounding_error if x is outside the range representable by ints