LSSTApplications  10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Public Member Functions | List of all members
lsst::pex::logging::PrinterIter Class Referenceabstract

an abstract iterator class used to print out property values More...

#include <PropertyPrinter.h>

Inheritance diagram for lsst::pex::logging::PrinterIter:
lsst::pex::logging::BaseTmplPrinterIter< bool > lsst::pex::logging::BaseTmplPrinterIter< lsst::daf::base::DateTime > lsst::pex::logging::BaseTmplPrinterIter< T > lsst::pex::logging::WrappedPrinterIter lsst::pex::logging::BoolPrinterIter lsst::pex::logging::DateTimePrinterIter lsst::pex::logging::TmplPrinterIter< T >

Public Member Functions

virtual ~PrinterIter ()=0
 
virtual std::ostream & write (std::ostream *strm) const =0
 
virtual PrinterIteroperator++ ()=0
 
virtual PrinterIteroperator-- ()=0
 
virtual bool operator== (const PrinterIter &that) const =0
 
virtual bool operator!= (const PrinterIter &that) const =0
 
virtual bool notAtEnd () const =0
 
virtual bool notLTBegin () const =0
 
const std::string operator* () const
 

Detailed Description

an abstract iterator class used to print out property values

The main purpose of implementations of this class is to provide (via its write(std::ostream*) function) the means for printing the values. The other functions support iteration.

Definition at line 55 of file PropertyPrinter.h.

Constructor & Destructor Documentation

virtual lsst::pex::logging::PrinterIter::~PrinterIter ( )
pure virtual

Member Function Documentation

virtual bool lsst::pex::logging::PrinterIter::notAtEnd ( ) const
pure virtual
virtual bool lsst::pex::logging::PrinterIter::notLTBegin ( ) const
pure virtual

return true if this iterator is not pointing before the first value in the list. Thus, *this should return a legal string.

Implemented in lsst::pex::logging::WrappedPrinterIter, lsst::pex::logging::BaseTmplPrinterIter< T >, lsst::pex::logging::BaseTmplPrinterIter< lsst::daf::base::DateTime >, and lsst::pex::logging::BaseTmplPrinterIter< bool >.

virtual bool lsst::pex::logging::PrinterIter::operator!= ( const PrinterIter that) const
pure virtual

return true if this iterator is not pointing to the same value as another pointer. This method is not recommend for testing whether an iterator is past the beginning or end of the list; notAtEnd() and notLTBegin() are more efficient.

Implemented in lsst::pex::logging::WrappedPrinterIter, lsst::pex::logging::BaseTmplPrinterIter< T >, lsst::pex::logging::BaseTmplPrinterIter< lsst::daf::base::DateTime >, and lsst::pex::logging::BaseTmplPrinterIter< bool >.

const std::string lsst::pex::logging::PrinterIter::operator* ( ) const
inline

return a string version of the property value. This simply uses write(std::ostream*) to write to a string; consequently using write(std::ostream*) is more efficient for most purposes.

Definition at line 108 of file PropertyPrinter.h.

108  {
109  std::ostringstream out;
110  write(&out);
111  return out.str();
112  }
virtual std::ostream & write(std::ostream *strm) const =0
virtual PrinterIter& lsst::pex::logging::PrinterIter::operator++ ( )
pure virtual
virtual PrinterIter& lsst::pex::logging::PrinterIter::operator-- ( )
pure virtual
virtual bool lsst::pex::logging::PrinterIter::operator== ( const PrinterIter that) const
pure virtual

return true if this iterator is pointing to the same value as another pointer. This method is not recommend for testing whether an iterator is past the beginning or end of the list; notAtEnd() and notLTBegin() are more efficient.

Implemented in lsst::pex::logging::WrappedPrinterIter, lsst::pex::logging::BaseTmplPrinterIter< T >, lsst::pex::logging::BaseTmplPrinterIter< lsst::daf::base::DateTime >, and lsst::pex::logging::BaseTmplPrinterIter< bool >.

virtual std::ostream& lsst::pex::logging::PrinterIter::write ( std::ostream *  strm) const
pure virtual

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