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
|
an abstract class that encapsulates a list of property values to be printed out. More...
#include <PropertyPrinter.h>
Public Types | |
typedef WrappedPrinterIter | iterator |
Public Member Functions | |
virtual | ~PrinterList () |
virtual iterator | begin () const =0 |
virtual iterator | last () const =0 |
virtual size_t | valueCount () const =0 |
an abstract class that encapsulates a list of property values to be printed out.
The purpose of this class is wrap a list of property values (all of the same type) and provide an iterator for printing out those values. This class is not used directly by applications but internally via the PropertyPrinter. Since PropertyPrinter does not support all types by default, an application may need to subclass this class in order to support printing of a new type.
To support a new type in PropertyPrinter (via PrinterFactory) one must subclass this class and the PrinterIter class (the latter actually controls how the type gets printed to an output stream).
For types that already support the output operator (<<), an explicit subclass need not be defined. Instead, one can instantiate the makePrinter<T> factory function; the required subclasses will be generated automatically.
The PropertyPrinter.h file also provide support for printing DateTime properties via the explicitly defined DateTimePrinterList and DateTimePrinterIter because DateTime does not support the output (<<) operator. See the implementation of these classes for a good example supporting other types of this sort.
Definition at line 227 of file PropertyPrinter.h.
Definition at line 229 of file PropertyPrinter.h.
|
virtual |
|
pure virtual |
return a PrinterIter set at the first property value
Implemented in lsst::pex::logging::BoolPrinterList, lsst::pex::logging::DateTimePrinterList, and lsst::pex::logging::TmplPrinterList< T >.
|
pure virtual |
return a PrinterIter set at the last property value
Implemented in lsst::pex::logging::BoolPrinterList, lsst::pex::logging::DateTimePrinterList, and lsst::pex::logging::TmplPrinterList< T >.
|
pure virtual |
return the number values available in the internal property value list
Implemented in lsst::pex::logging::BaseTmplPrinterList< T >, lsst::pex::logging::BaseTmplPrinterList< lsst::daf::base::DateTime >, and lsst::pex::logging::BaseTmplPrinterList< bool >.