/*
- Copyright 1999-2011 ImageMagick Studio LLC, a non-profit organization
+ Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization
dedicated to making software imaging solutions freely available.
You may not use this file except in compliance with the License.
extern "C" {
#endif
-static inline double InterpretLocaleInterval(const char *string,
+#include <MagickCore/locale_.h>
+
+static inline double SiPrefixToDoubleInterval(const char *string,
+ const double interval)
+{
+ char
+ *q;
+
+ double
+ value;
+
+ value=InterpretSiPrefixValue(string,&q);
+ if (*q == '%')
+ value*=interval/100.0;
+ return(value);
+}
+
+static inline double StringToDouble(const char *restrict string,
+ char **restrict sentinal)
+{
+ return(InterpretLocaleValue(string,sentinal));
+}
+
+static inline double StringToDoubleInterval(const char *string,
const double interval)
{
char
double
value;
- /*
- Interpret string with International System of Units (SI) unit prefix.
- */
value=InterpretLocaleValue(string,&q);
if (*q == '%')
value*=interval/100.0;
return(value);
}
-static inline int StringToInteger(const char *value)
+static inline int StringToInteger(const char *restrict value)
{
return((int) strtol(value,(char **) NULL,10));
}
-static inline long StringToLong(const char *value)
+static inline long StringToLong(const char *restrict value)
{
return(strtol(value,(char **) NULL,10));
}
-static inline unsigned long StringToUnsignedLong(const char *value)
+static inline unsigned long StringToUnsignedLong(const char *restrict value)
{
return(strtoul(value,(char **) NULL,10));
}