#include <productdata.hh>
Inheritance diagram for RVL::ProductDataContainer:
Public Member Functions | |
ProductDataContainer () | |
ProductDataContainer (const ProductDataContainer &) | |
virtual | ~ProductDataContainer () |
virtual void | eval (FunctionObject &f, std::vector< DataContainer const * > &x) |
virtual void | eval (FunctionObjectConstEval &f, std::vector< DataContainer const * > &x) const |
virtual ostream & | write (ostream &str) const |
report to ostream make possible to override - WWS 2016.12.09 |
Since ProductDataContainers act in this way like arrays of DataContainers, they also have a getSize() method. Both the indexing operator and getSize() are supplied by a mixin Product interface.
This class is abstract, to permit a variety of schemes for storing and retrieving references to the component DataContainers. The non-const evaluation methods inherited from DataContainer are designed for BlockFOs, that is, effectively matrices of FOs. An option is provided to create a DiagonalFO; in that case evaluation is effectively equivalent to the simple loop algorithms of the Standard Library, but defined at a more ablstract level, not requiring copy semantics of the items over which the iteration takes place. For FOCEs, only the diagonal option is provided: evaluation proceeds by sequential evaluation of the FOCE on the components. To override this assumption, it will be necessary to view the object as another type of DataContainer (i.e. other than ProductDataContainer) and invoke an alternative implementation of evaluation.
Definition at line 107 of file productdata.hh.
RVL::ProductDataContainer::ProductDataContainer | ( | ) |
Definition at line 112 of file productdata.hh.
RVL::ProductDataContainer::ProductDataContainer | ( | const ProductDataContainer & | ) |
Definition at line 113 of file productdata.hh.
virtual RVL::ProductDataContainer::~ProductDataContainer | ( | ) | [virtual] |
Definition at line 114 of file productdata.hh.
virtual void RVL::ProductDataContainer::eval | ( | FunctionObject & | f, | |
std::vector< DataContainer const * > & | x | |||
) | [virtual] |
virtual void RVL::ProductDataContainer::eval | ( | FunctionObjectConstEval & | f, | |
std::vector< DataContainer const * > & | x | |||
) | const [virtual] |
Definition at line 176 of file productdata.hh.
References RVL::DataContainer::eval(), and RVL::Product< T >::getSize().
virtual ostream& RVL::ProductDataContainer::write | ( | ostream & | str | ) | const [virtual] |
report to ostream make possible to override - WWS 2016.12.09
Implements RVL::Writeable.
Definition at line 218 of file productdata.hh.
References RVL::Product< T >::getSize().