10#ifndef TEUCHOS_VERBOSE_OBJECT_HPP
11#define TEUCHOS_VERBOSE_OBJECT_HPP
14#include "Teuchos_FancyOStream.hpp"
104 virtual std::string getLinePrefix()
const;
132 void initializeVerboseObjectBase(
144 virtual void informUpdatedVerbosityState()
const;
148 std::string thisLinePrefix_;
153#pragma warning(disable:4251)
201template<
class ObjectType>
280template<
class ObjectType>
292 if(verboseObject_.
get()) {
293 oldOStream_ = verboseObject_->getOStream();
294 oldVerbLevel_ = verboseObject_->getVerbLevel();
302 if(verboseObject_.
get()) {
303 verboseObject_->setOStream(oldOStream_);
304 verboseObject_->setVerbLevel(oldVerbLevel_);
330template<
class ObjectType>
337template<
class ObjectType>
340 return privateDefaultVerbLevel();
347template<
class ObjectType>
358template<
class ObjectType>
364 thisVerbLevel_ = verbLevel;
365 this->initializeVerboseObjectBase(
oStream);
369template<
class ObjectType>
373 thisVerbLevel_ = verbLevel;
374 informUpdatedVerbosityState();
379template<
class ObjectType>
385 thisOverridingVerbLevel_ = verbLevel;
386 informUpdatedVerbosityState();
394template<
class ObjectType>
398 return thisOverridingVerbLevel_;
400 return getDefaultVerbLevel();
401 return thisVerbLevel_;
408template<
class ObjectType>
Reference-counted pointer class and non-member templated function implementations.
Smart reference counting pointer class for automatic garbage collection.
T * get() const
Get the raw C++ pointer to the underlying object.
Non-templated base class for objects that can print their activities to a stream.
Set and release a stream and verbosity level.
VerboseObjectTempState(const RCP< const VerboseObject< ObjectType > > &verboseObject, const RCP< FancyOStream > &newOStream, const EVerbosityLevel newVerbLevel)
~VerboseObjectTempState()
Templated base class for objects that can print their activities to a stream and have a verbosity lev...
static void setDefaultVerbLevel(const EVerbosityLevel defaultVerbLevel)
Set the default verbosity level.
virtual const VerboseObject & setVerbLevel(const EVerbosityLevel verbLevel) const
Set this object's verbosity level.
virtual EVerbosityLevel getVerbLevel() const
Get the verbosity level.
VerboseObject(const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null)
Constructor: calls initializeVerboseObject().
void initializeVerboseObject(const EVerbosityLevel verbLevel=VERB_DEFAULT, const RCP< FancyOStream > &oStream=Teuchos::null)
Initialize the VerboseObject.
static EVerbosityLevel getDefaultVerbLevel()
Get the default verbosity level.
virtual const VerboseObject & setOverridingVerbLevel(const EVerbosityLevel verbLevel) const
Set the overriding verbosity level for *this object.
Tabbing class for helping to create formated, indented output for a basic_FancyOStream object.
EVerbosityLevel
Verbosity level.
@ VERB_DEFAULT
Generate output as defined by the object.
The Teuchos namespace contains all of the classes, structs and enums used by Teuchos,...