Inheritance diagram for code::LTGFormatter:
Public Member Functions | |
virtual SmartPtr< DataType > | createDataObject (const Buffer &buf) const |
Given a buffer of the information in the right format, will convert it into a Data object. | |
virtual Buffer | createBuffer (const DataType &) const |
Given a DataObject, will convert into a buffer of the right format. | |
virtual | ~LTGFormatter () |
virtual SmartPtr< DataType > | createDataObject (const Buffer &buf, const Index *) const |
Create a DataType given both a Buffer and an Index to use to extract other Records. | |
virtual SmartPtr< DataType > | createDataObject (const std::vector< Buffer > &bufs) const |
In some cases, it is necessary to pass in a multitude of variable-length buffers. | |
virtual SmartPtr< DataType > | createDataObject (const std::vector< Buffer > &bufs, const Index *index) const |
The more general purpose way of creating an object. | |
virtual SmartPtr< DataType > | createDataObject (const std::vector< std::string > &bufs, const Index *index) const |
The most general purpose way of creating an object. | |
virtual void | getBuffersToBuild (std::vector< std::string > &buffers) const |
The Formatter can tell the Builder what buffers (files) it needs. | |
Static Public Member Functions | |
static void | introduceSelf () |
Introduces this formatter to the entire system. | |
static SmartPtr< Formatter > | getFormatter (const std::string &sourceType, const std::string &dataType) |
Given the source and data type, returns the appropriate formatter. | |
Static Protected Member Functions | |
static void | introduce (const std::string &sourceType, const std::string &dataType, SmartPtr< Formatter > new_subclass) |
Use this to introduce new formatters into the system. |
virtual code::LTGFormatter::~LTGFormatter | ( | ) | [inline, virtual] |
virtual SmartPtr<DataType> code::Formatter::createDataObject | ( | const std::vector< Buffer > & | bufs, | |
const Index * | index | |||
) | const [virtual, inherited] |
The more general purpose way of creating an object.
virtual SmartPtr<DataType> code::Formatter::createDataObject | ( | const std::vector< Buffer > & | bufs | ) | const [virtual, inherited] |
In some cases, it is necessary to pass in a multitude of variable-length buffers.
This function is not pure virtual since it is needed only for special cases. This is the version that Hires must use.
virtual SmartPtr<DataType> code::LTGFormatter::createDataObject | ( | const Buffer & | buf | ) | const [virtual] |
Given a buffer of the information in the right format, will convert it into a Data object.
Accept return value into a SmartPtr
Bug in egcs prevents the use of DerivedSmartPtr in pure virtual functions. So, till then, return SmartPtr< DataType > and do a dynamic downcast.
Reimplemented from code::Formatter.
virtual void code::Formatter::getBuffersToBuild | ( | std::vector< std::string > & | buffers | ) | const [virtual, inherited] |
static SmartPtr< Formatter > code::Formatter::getFormatter | ( | const std::string & | sourceType, | |
const std::string & | dataType | |||
) | [static, inherited] |
Given the source and data type, returns the appropriate formatter.
For example, getFormatter("hires", "VIL") will return the VIL formatter for hires.
static void code::Formatter::introduce | ( | const std::string & | sourceType, | |
const std::string & | dataType, | |||
SmartPtr< Formatter > | new_subclass | |||
) | [static, protected, inherited] |
Use this to introduce new formatters into the system.
static void code::LTGFormatter::introduceSelf | ( | ) | [static] |
Introduces this formatter to the entire system.