Formatter for float types. More...
#include <floats.hpp>
Public Member Functions | |
| FormatFloat< Number > & | align (const ecl::Alignment a) |
| Sets the alignment format parameter. More... | |
| FormatFloat< Number > & | base (const ecl::FloatBase b) |
| Sets the base notation to use. More... | |
| FormatFloat (const int w=-1, const unsigned int p=4, const ecl::Alignment a=NoAlign, const ecl::FloatBase b=Fixed) | |
| FormatFloat< Number > & | operator() (const Number n) |
| FormatFloat< Number > & | operator() (const Number n, const unsigned int p, const int w) |
| FormatFloat< Number > & | operator() (const Number n, const unsigned int p, const int w, const ecl::Alignment align, const ecl::FloatBase b) |
| FormatFloat< Number > & | operator() (const unsigned int p, const int w, const ecl::Alignment align, const ecl::FloatBase b) |
| FormatFloat< Number > & | operator() (unsigned int p, const int w) |
| int | precision () |
| Returns the current precision setting. More... | |
| FormatFloat< Number > & | precision (const unsigned int p) |
| Sets the precision format parameter. More... | |
| int | width () |
| Returns the current precision setting. More... | |
| FormatFloat< Number > & | width (const int w) |
| Sets the width format parameter. More... | |
| virtual | ~FormatFloat () |
Protected Member Functions | |
| template<typename OutputStream > | |
| void | formatFixed (OutputStream &ostream) const |
| template<typename OutputStream > | |
| void | formatSci (OutputStream &ostream) const |
| template<typename OutputStream > | |
| void | pad (int n, OutputStream &ostream) const |
| template<typename OutputStream > | |
| void | postPad (int n, OutputStream &ostream) const |
| template<typename OutputStream > | |
| void | prePad (int n, OutputStream &ostream) const |
Protected Attributes | |
| ecl::Alignment * | alignment_ |
| ecl::FloatBase * | base_ |
| int * | precision_ |
| ecl::Alignment | prm_alignment |
| ecl::FloatBase | prm_base |
| int | prm_precision |
| int | prm_width |
| bool | ready_to_format |
| ecl::Alignment | tmp_alignment |
| ecl::FloatBase | tmp_base |
| int | tmp_precision |
| int | tmp_width |
| Number | value_ |
| int * | width_ |
Friends | |
| template<typename OutputStream , typename N > | |
| OutputStream & | operator<< (OutputStream &ostream, FormatFloat< N > &formatter) |
Formatter for float types.
Default formatter for float types. For convenience, use the individual Format<float|double> classes that inherit this one instead.
Definition at line 67 of file floats.hpp.
|
inline |
Default constructor. Initialises the format tags for width, precision, alignment and base.
| w | : width (default - no width constraints) |
| p | : the number of decimal places of precision (default - 4) |
| a | : the textual alignment (default - no alignment constraints) |
| b | : the base format for the floating point representation (default - fixed) |
Definition at line 81 of file floats.hpp.
|
inlinevirtual |
Definition at line 92 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::align | ( | const ecl::Alignment | a | ) |
Sets the alignment format parameter.
Sets the alignment format parameter.
| a | : the textual alignment. |
Sets the alignment format parameter. This aligns the text output in the text window which has a width specified by the width parameter.
| a | : the aligning property for the output text. |
Definition at line 280 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::base | ( | const ecl::FloatBase | b | ) |
Sets the base notation to use.
Sets the base notation to use (fixed or scientific).
| b | : the base format for the floating point representation. |
Sets the base format. For floating point values, this can be fixed, exponential or scientific.
| b | : the base representation used for the output. |
Definition at line 254 of file floats.hpp.
|
protected |
Definition at line 371 of file floats.hpp.
|
protected |
Definition at line 403 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::operator() | ( | const Number | n | ) |
Convenient stream formatter. This function directly formats the specified input value with the stored settings.
| n | : the input value to be formatted. |
Definition at line 316 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::operator() | ( | const Number | n, |
| const unsigned int | p, | ||
| const int | w | ||
| ) |
Convenient stream formatter. This member directly formats the specified input value with the supplied/temporary parameters.
| n | : the input value to be formatted. |
| p | : the number of decimal places of precision. |
| w | : the total width of the text output. |
Definition at line 326 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::operator() | ( | const Number | n, |
| const unsigned int | p, | ||
| const int | w, | ||
| const ecl::Alignment | align, | ||
| const ecl::FloatBase | b | ||
| ) |
Convenient stream formatter. This member directly formats the specified input value with the supplied/temporary parameters.
| n | : the input value to be formatted. |
| p | : the number of decimal places of precision. |
| w | : the total width of the text output. |
| align | : the aligning property for the output text. |
| b | : the base representation used for the output. |
Definition at line 346 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::operator() | ( | const unsigned int | p, |
| const int | w, | ||
| const ecl::Alignment | align, | ||
| const ecl::FloatBase | b | ||
| ) |
Convenient stream format parameter setter. This one permanently configures all parameters.
| p | : the number of decimal places of precision. |
| w | : the total width of the text output. |
| align | : the aligning property for the output text. |
| b | : the base representation used for the output. |
Definition at line 303 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::operator() | ( | unsigned int | p, |
| const int | w | ||
| ) |
Convenient stream format parameter setter. This one permanently configures the width and precision as specified.
| p | : the number of decimal places of precision. |
| w | : the total width of the text output. |
Definition at line 295 of file floats.hpp.
|
protected |
Definition at line 441 of file floats.hpp.
|
protected |
Definition at line 426 of file floats.hpp.
|
inline |
Returns the current precision setting.
Definition at line 141 of file floats.hpp.
|
inline |
Sets the precision format parameter.
Sets the precision format parameter.
| p | : the number of decimal places of precision. |
Definition at line 105 of file floats.hpp.
|
protected |
Definition at line 411 of file floats.hpp.
|
inline |
Returns the current precision setting.
Definition at line 148 of file floats.hpp.
| FormatFloat< Number > & ecl::interfaces::FormatFloat< Number >::width | ( | const int | w | ) |
Sets the width format parameter.
Sets the width format parameter.
| w | : the width to use for the inserted float (-1 is no width constraint). |
Sets the width format parameter. Setting this to -1 will turn off width formatting constraints.
| w | : the total width of the text output. |
Definition at line 264 of file floats.hpp.
|
friend |
Friend function which allows a stream to act on the formatter to produce the formatted result. This works on normal c++ streams as well as TextStreams.
| ostream | : the stream. |
| formatter | : the formatter with prespecified format parameters and input value. |
Definition at line 453 of file floats.hpp.
|
protected |
Definition at line 228 of file floats.hpp.
|
protected |
Definition at line 229 of file floats.hpp.
|
protected |
Definition at line 227 of file floats.hpp.
|
protected |
Definition at line 225 of file floats.hpp.
|
protected |
Definition at line 226 of file floats.hpp.
|
protected |
Definition at line 224 of file floats.hpp.
|
protected |
Definition at line 223 of file floats.hpp.
|
protected |
Definition at line 230 of file floats.hpp.
|
protected |
Definition at line 225 of file floats.hpp.
|
protected |
Definition at line 226 of file floats.hpp.
|
protected |
Definition at line 224 of file floats.hpp.
|
protected |
Definition at line 223 of file floats.hpp.
|
protected |
Definition at line 231 of file floats.hpp.
|
protected |
Definition at line 227 of file floats.hpp.