67const std::string getFieldLine(
const int width)
70 line.append(width,
'-');
105 out.assert_not_null();
107 out_ = fancyOStream(out);
112 const std::string &fieldName,
const EFieldType fieldType,
123 "Error, the length of the field name \""<<fieldName<<
"\"\n"
124 "is "<<fieldName.size()<<
" which is larger than the\n"
125 "specifically set field width "<<
width<<
"!"
130 FieldSpec(fieldName, fieldType, fieldJustification, floatingOutputType,
155 "Error, you must add at least one field spec using pushFieldSpec(...)!"
198 "Error, you must call outputField(...) for every field in the row\n"
199 "before you call nextRow()!"
#define TEUCHOS_MAX(x, y)
Definition of Teuchos::as, for conversions between types.
iterator end() const
Return an iterator to past the end of the array of data.
iterator begin() const
Return an iterator to beginning of the array of data.
int size(const Comm< Ordinal > &comm)
Get the number of processes in the communicator.
Concrete serial communicator subclass.
Utility class that makes it easy to create formatted tables of output.
static const std::string fieldSpacer_
void pushFieldSpec(const std::string &fieldName, const EFieldType fieldType=DOUBLE, const EFieldJustification fieldJustification=RIGHT, const EFloatingOutputType floatingOutputType=SCIENTIFIC, const int width=-1)
Add a new field to be output.
void nextRow(const bool allowRemainingFields=false)
Finalize the row of output.
void outputHeader()
Output the headers.
void setFieldTypePrecision(const EFieldType fieldType, const int prec)
Set the precision of output for a field.
Array< FieldSpec > fieldSpecs_
Tuple< int, numFieldTypes > fieldTypePrecision_
void setOStream(const RCP< std::ostream > &out)
Set the ostream that all output will be sent to.
void outputField(const T &t)
Output to the next field.
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
Macro for throwing an exception with breakpointing to ease debugging.