# DataExchange
TKXSBase
Interface

# Interface_FloatWriter Class Reference

This class converts a floting number (Real) to a string
It can be used if the standard C-C++ output functions
(sprintf or cout<<) are not convenient. That is to say :
- to suppress trailing '0' and 'E+00' (if desired)
- to control exponant output and floating point output
Formats are given in the form used by printf-sprintf
.

`#include <Interface_FloatWriter.hxx>`

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT | Interface_FloatWriter (const Standard_Integer chars=0)
| Creates a FloatWriter ready to work, with default options - - zero suppress option is set - main format is set to "%E" - secondary format is set to "%f" for values between 0.1 and 1000. in absolute values If <chars> is given (and positive), it will produce options to produce this count of characters : "%<chars>f","%<chars>%E" .
Standard_EXPORT void | SetFormat (const Standard_CString form, const Standard_Boolean reset=Standard_True)
| Sets a specific Format for Sending Reals (main format) (Default from Creation is "%E") If <reset> is given True (default), this call clears effects of former calls to SetFormatForRange and SetZeroSuppress .
Standard_EXPORT void | SetFormatForRange (const Standard_CString form, const Standard_Real R1, const Standard_Real R2)
| Sets a secondary Format for Real, to be applied between R1 and R2 (in absolute values). A Call to SetRealForm cancels this secondary form if <reset> is True. (Default from Creation is "%f" between 0.1 and 1000.) Warning : if the condition (0. <= R1 < R2) is not fulfilled, this secondary form is canceled. .
Standard_EXPORT void | SetZeroSuppress (const Standard_Boolean mode)
| Sets Sending Real Parameters to suppress trailing Zeros and Null Exponant ("E+00"), if <mode> is given True, Resets this mode if <mode> is False (in addition to Real Forms) A call to SetRealFrom resets this mode to False ig <reset> is given True (Default from Creation is True) .
Standard_EXPORT void | SetDefaults (const Standard_Integer chars=0)
| Sets again options to the defaults given by Create .
Standard_EXPORT void | Options (Standard_Boolean &zerosup, Standard_Boolean &range, Standard_Real &R1, Standard_Real &R2) const
| Returns active options : <zerosup> is the option ZeroSuppress, <range> is True if a range is set, False else R1,R2 give the range (if it is set) .
Standard_EXPORT Standard_CString | MainFormat () const
| Returns the main format was C++ : return const .
Standard_EXPORT Standard_CString | FormatForRange () const
| Returns the format for range, if set Meaningful only if <range> from Options is True was C++ : return const .
Standard_EXPORT Standard_Integer | Write (const Standard_Real val, const Standard_CString text) const
| Writes a Real value <val> to a string <text> by using the options. Returns the useful Length of produced string. It calls the class method Convert. Warning : <text> is assumed to be wide enough (20-30 is correct) And, even if declared in, its content will be modified .

## Static Public Member Functions

static Standard_EXPORT Standard_Integer | Convert (const Standard_Real val, const Standard_CString text, const Standard_Boolean zerosup, const Standard_Real Range1, const Standard_Real Range2, const Standard_CString mainform, const Standard_CString rangeform)
| This class method converts a Real Value to a string, given options given as arguments. It can be called independantly. Warning : even if declared in, content of <text> will be modified .

## Private Attributes

Standard_Character | themainform [12]
Standard_Real | therange1
Standard_Real | therange2
Standard_Character | therangeform [12]
Standard_Boolean | thezerosup

## Constructor & Destructor Documentation

Standard_EXPORT Interface_FloatWriter::Interface_FloatWriter | ( | const Standard_Integer | chars = `0` | ) |

## Member Function Documentation

static Standard_EXPORT Standard_Integer Interface_FloatWriter::Convert | ( | const Standard_Real | val,
|  | const Standard_CString | text,
|  | const Standard_Boolean | zerosup,
|  | const Standard_Real | Range1,
|  | const Standard_Real | Range2,
|  | const Standard_CString | mainform,
|  | const Standard_CString | rangeform
| ) | `[static]`

Standard_EXPORT Standard_CString Interface_FloatWriter::FormatForRange | ( |  | ) | const

Standard_EXPORT Standard_CString Interface_FloatWriter::MainFormat | ( |  | ) | const

void Interface_FloatWriter::operator delete | ( | void * | anAddress | ) | `[inline]`

void* Interface_FloatWriter::operator new | ( | size_t | size | ) | `[inline]`

void* Interface_FloatWriter::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

Standard_EXPORT void Interface_FloatWriter::Options | ( | Standard_Boolean & | zerosup,
|  | Standard_Boolean & | range,
|  | Standard_Real & | R1,
|  | Standard_Real & | R2
| ) | const

Standard_EXPORT void Interface_FloatWriter::SetDefaults | ( | const Standard_Integer | chars = `0` | ) |

Standard_EXPORT void Interface_FloatWriter::SetFormat | ( | const Standard_CString | form,
|  | const Standard_Boolean | reset = `Standard_True`
| ) |

Standard_EXPORT void Interface_FloatWriter::SetFormatForRange | ( | const Standard_CString | form,
|  | const Standard_Real | R1,
|  | const Standard_Real | R2
| ) |

Standard_EXPORT void Interface_FloatWriter::SetZeroSuppress | ( | const Standard_Boolean | mode | ) |

Standard_EXPORT Standard_Integer Interface_FloatWriter::Write | ( | const Standard_Real | val,
|  | const Standard_CString | text
| ) | const

## Field Documentation

Standard_Character Interface_FloatWriter::themainform[12]`[private]`

Standard_Real Interface_FloatWriter::therange1`[private]`

Standard_Real Interface_FloatWriter::therange2`[private]`

Standard_Character Interface_FloatWriter::therangeform[12]`[private]`

Standard_Boolean Interface_FloatWriter::thezerosup`[private]`

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

- Interface_FloatWriter.hxx