XMLAbstractDoubleFloat Class Referenceabstract
Inheritance diagram for XMLAbstractDoubleFloat:

## Public Types

enum | LiteralType { NegINF, PosINF, NaN, SpecialTypeNum, Normal }
Public Types inherited from XMLNumber
enum | { LESS_THAN = -1, EQUAL = 0, GREATER_THAN = 1, INDETERMINATE = 2 }
enum | NumberType { Float, Double, BigDecimal, DateTime, UnKnown }

## Public Member Functions

virtual | ~XMLAbstractDoubleFloat ()
virtual XMLCh * | getRawData () const
| Return string representation of the decimal value. More...
virtual const XMLCh * | getFormattedString () const
| Return the original and converted value of the original data. More...
virtual int | getSign () const
| Returns the sign of this number. More...
MemoryManager * | getMemoryManager () const
bool | isDataConverted () const
bool | isDataOverflowed () const
double | getValue () const
LiteralType | getType () const
Public Member Functions inherited from XMLNumber
virtual | ~XMLNumber ()
Public Member Functions inherited from XMemory
void * | operator new (size_t size)
| This method overrides operator new. More...
void * | operator new (size_t size, MemoryManager *memMgr)
| This method defines a custom operator new, that will use the provided memory manager to perform the allocation. More...
void * | operator new (size_t size, void *ptr)
| This method overrides placement operator new. More...
void | operator delete (void *p)
| This method overrides operator delete. More...
void | operator delete (void *p, MemoryManager *memMgr)
| This method provides a matching delete for the custom operator new. More...
void | operator delete (void *p, void *ptr)
| This method provides a matching delete for the placement new. More...

## Static Public Member Functions

static XMLCh * | getCanonicalRepresentation (const XMLCh *const rawData, MemoryManager *const memMgr=XMLPlatformUtils::fgMemoryManager)
static void | normalizeDecimalPoint (char *const toNormal)
Static Public Member Functions inherited from XMLNumber
static XMLNumber * | loadNumber (XMLNumber::NumberType numType, XSerializeEngine &serEng)

## Protected Member Functions

| XMLAbstractDoubleFloat (MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
void | init (const XMLCh *const strValue)
virtual void | checkBoundary (char *const strValue)=0
void | convert (char *const strValue)
Protected Member Functions inherited from XMLNumber
| XMLNumber ()
| XMLNumber (const XMLNumber &)
Protected Member Functions inherited from XMemory
| XMemory ()
| Protected default constructor. More...

## Static Protected Member Functions

static int | compareValues (const XMLAbstractDoubleFloat *const lValue, const XMLAbstractDoubleFloat *const rValue, MemoryManager *const manager)
| Compares this object to the specified object. More...

## Protected Attributes

double | fValue
LiteralType | fType
bool | fDataConverted
bool | fDataOverflowed

## Member Enumeration Documentation

enum XMLAbstractDoubleFloat::LiteralType

Enumerator
NegINF |
PosINF |
NaN |
SpecialTypeNum |
Normal |

## Constructor & Destructor Documentation

virtual XMLAbstractDoubleFloat::~XMLAbstractDoubleFloat | ( |  | ) |

virtual

XMLAbstractDoubleFloat::XMLAbstractDoubleFloat | ( | MemoryManager *const | manager = `XMLPlatformUtils::fgMemoryManager` | ) |

protected

## Member Function Documentation

virtual void XMLAbstractDoubleFloat::checkBoundary | ( | char *const | strValue | ) |

protected pure virtual

Implemented in XMLDouble, and XMLFloat.

static int XMLAbstractDoubleFloat::compareValues | ( | const XMLAbstractDoubleFloat *const | lValue,
|  | const XMLAbstractDoubleFloat *const | rValue,
|  | MemoryManager *const | manager
| ) |  |

static protected

Compares this object to the specified object.

The result is `true` if and only if the argument is not `null` and is an `XMLAbstractDoubleFloat` object that contains the same `int` value as this object.

Parameters

  lValue | the object to compare with.
  rValue | the object to compare against.
  manager | The MemoryManager to use to allocate objects

Returns
  `true` if the objects are the same; `false` otherwise.

Referenced by XMLFloat::compareValues(), and XMLDouble::compareValues().

void XMLAbstractDoubleFloat::convert | ( | char *const | strValue | ) |

protected

static XMLCh* XMLAbstractDoubleFloat::getCanonicalRepresentation | ( | const XMLCh *const | rawData,
|  | MemoryManager *const | memMgr = `XMLPlatformUtils::fgMemoryManager`
| ) |  |

static

virtual const XMLCh* XMLAbstractDoubleFloat::getFormattedString | ( |  | ) | const

virtual

Return the original and converted value of the original data.

(applicable to double/float)

The internal buffer is returned directly, user is not required to delete the returned buffer

Implements XMLNumber.

MemoryManager * XMLAbstractDoubleFloat::getMemoryManager | ( |  | ) | const

Referenced by XMLFloat::compareValues(), and XMLDouble::compareValues().

virtual XMLCh* XMLAbstractDoubleFloat::getRawData | ( |  | ) | const

virtual

Return string representation of the decimal value.

A decimal point will be included as necessary. Similar to toString above, but the internal buffer is returned directly, user is not required to delete the returned buffer

Implements XMLNumber.

virtual int XMLAbstractDoubleFloat::getSign | ( |  | ) | const

virtual

Returns the sign of this number.

-1 negative 0 zero 1 positive

Implements XMLNumber.

XMLAbstractDoubleFloat::LiteralType XMLAbstractDoubleFloat::getType | ( |  | ) | const

References XERCES_CPP_NAMESPACE_END.

double XMLAbstractDoubleFloat::getValue | ( |  | ) | const

void XMLAbstractDoubleFloat::init | ( | const XMLCh *const | strValue | ) |

protected

bool XMLAbstractDoubleFloat::isDataConverted | ( |  | ) | const

bool XMLAbstractDoubleFloat::isDataOverflowed | ( |  | ) | const

static void XMLAbstractDoubleFloat::normalizeDecimalPoint | ( | char *const | toNormal | ) |

static

## Member Data Documentation

bool XMLAbstractDoubleFloat::fDataConverted

protected

bool XMLAbstractDoubleFloat::fDataOverflowed

protected

LiteralType XMLAbstractDoubleFloat::fType

protected

double XMLAbstractDoubleFloat::fValue

protected

The documentation for this class was generated from the following file:

- XMLAbstractDoubleFloat.hpp