XMLStorage::XMLDouble Struct Reference

type converter for numeric data More...

#include <xmlstorage.h>

Collaboration diagram for XMLStorage::XMLDouble:

Collaboration graph
[legend]

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

void operator= (const XMLDouble &)

Detailed Description

type converter for numeric data

Definition at line 1752 of file xmlstorage.h.


Constructor & Destructor Documentation

XMLStorage::XMLDouble::XMLDouble ( double  value  )  [inline]

Definition at line 1754 of file xmlstorage.h.

01755      :  _value(value)
01756     {
01757     }

XMLStorage::XMLDouble::XMLDouble ( LPCXSSTR  value,
double  def = 0. 
) [inline]

Definition at line 1759 of file xmlstorage.h.

References XS_tod.

01760     {
01761         LPTSTR end;
01762 
01763         if (value && *value)
01764             _value = XS_tod(value, &end);
01765         else
01766             _value = def;
01767     }

XMLStorage::XMLDouble::XMLDouble ( const XMLNode node,
const XS_String attr_name,
double  def = 0. 
) [inline]

Definition at line 1769 of file xmlstorage.h.

References XMLStorage::XMLNode::get(), and XS_tod.

01770     {
01771         LPTSTR end;
01772         const XS_String& value = node->get(attr_name);
01773 
01774         if (!value.empty())
01775             _value = XS_tod(value.c_str(), &end);
01776         else
01777             _value = def;
01778     }

Here is the call graph for this function:


Member Function Documentation

XMLStorage::XMLDouble::operator double (  )  const [inline]

Definition at line 1780 of file xmlstorage.h.

01781     {
01782         return _value;
01783     }

XMLStorage::XMLDouble::operator XS_String (  )  const [inline]

Definition at line 1785 of file xmlstorage.h.

References COUNTOF, XS_CHAR, XS_FLOATFMT, and XS_snprintf.

01786     {
01787         XS_CHAR buffer[32];
01788         XS_snprintf(buffer, COUNTOF(buffer), XS_FLOATFMT, _value);
01789         return buffer;
01790     }

void XMLStorage::XMLDouble::operator= ( const XMLDouble  )  [private]


Field Documentation

double XMLStorage::XMLDouble::_value [protected]

Definition at line 1793 of file xmlstorage.h.


The documentation for this struct was generated from the following file:
IBrowser Source Code Documentation
generated on 18.09.2008 by doxygen

Homepage