Пример #1
0
/*!

\brief Converts Config to dmz::Float32.
\details Defined in dmzRuntimeConfigToTypesBase.h.
This function uses dmz::config_to_sring to retrieve the value and then uses
dmz::string_to_float32 to convert the returned String to a dmz::Float32.
\param[in] Name String containing name of the attribute in the config context to convert.
\param[in] Source Config containing config context to convert.
\param[in] DefaultValue dmz::Float32 containing default value that is returned if
the config context is not found.
\return Returns dmz::Float32 containing value.
\sa dmz::config_to_string(const String &Name, const Config &Source, const String &DefaultValue)

*/
dmz::Float32
dmz::config_to_float32 (
      const String &Name,
      const Config &Source,
      const Float32 DefaultValue) {

   Float32 result (DefaultValue);
   String str;

   if (local_config_to_string (Name, Source, str)) {

      result = string_to_float32 (str);
   }

   return result;
}
Пример #2
0
float32_t
stream_read_float32(stream_t* stream) {
	float32_t value = 0;
	if (stream_is_binary(stream)) {
		stream_read(stream, &value, 4);
		if (stream->swap) {
			float32_cast_t cast;
			cast.fval = value;
			cast.uival = byteorder_swap32(cast.uival);
			value = cast.fval;
		}
	}
	else {
		char buffer[32] = {0};
		string_t str = stream_read_string_buffer(stream, buffer, 32);
		value = string_to_float32(str.str, str.length);
	}
	return value;
}