type converter for numeric data More...
#include <xmlstorage.h>

Public Member Functions | |
| XMLDouble (double value) | |
| XMLDouble (LPCXSSTR value, double def=0.) | |
| XMLDouble (const XMLNode *node, const XS_String &attr_name, double def=0.) | |
| operator double () const | |
| operator XS_String () const | |
Protected Attributes | |
| double | _value |
Private Member Functions | |
| XMLDouble & | operator= (const XMLDouble &) |
type converter for numeric data
Definition at line 3774 of file xmlstorage.h.
| XMLStorage::XMLDouble::XMLDouble | ( | double | value ) | [inline] |
Definition at line 3776 of file xmlstorage.h.
: _value(value) { }
| XMLStorage::XMLDouble::XMLDouble | ( | LPCXSSTR | value, |
| double | def = 0. |
||
| ) | [inline] |
Definition at line 3781 of file xmlstorage.h.
References _value, LPCXSSTR, XMLStorage::safe_skip_space(), and XS_tod.
{
LPCXSSTR p = safe_skip_space(value);
LPTSTR end;
if (*p)
_value = XS_tod(p, &end);
else
_value = def;
}

| XMLStorage::XMLDouble::XMLDouble | ( | const XMLNode * | node, |
| const XS_String & | attr_name, | ||
| double | def = 0. |
||
| ) | [inline] |
Definition at line 3792 of file xmlstorage.h.
References _value, XMLStorage::XMLNode::get(), and XS_tod.
{
LPTSTR end;
const XS_String& value = node->get(attr_name);
if (!value.empty())
_value = XS_tod(value.c_str(), &end);
else
_value = def;
}

| XMLStorage::XMLDouble::operator double | ( | ) | const [inline] |
| XMLStorage::XMLDouble::operator XS_String | ( | ) | const [inline] |
Definition at line 3808 of file xmlstorage.h.
References _value, COUNTOF, XS_CHAR, XS_FLOATFMT, and XS_snprintf.
{
XS_CHAR buffer[32];
XS_snprintf(buffer, COUNTOF(buffer), XS_FLOATFMT, _value);
return XS_String(buffer);
}
double XMLStorage::XMLDouble::_value [protected] |
Definition at line 3816 of file xmlstorage.h.
Referenced by operator double(), operator XS_String(), and XMLDouble().
1.7.2