RVL::ProductLocalDataContainer< DataType > Class Template Reference

Specialization of ProductDataContainer to case where all factors are local data containers. More...

#include <localproduct.hh>

Inheritance diagram for RVL::ProductLocalDataContainer< DataType >:

RVL::LocalDataContainer< DataType > RVL::DataContainer RVL::Writeable RVL::PartitionedLocalDataContainer< DataType > List of all members.

Public Member Functions

 ProductLocalDataContainer ()
 ProductLocalDataContainer (ProductLocalDataContainer< DataType > &)
 ~ProductLocalDataContainer ()
virtual int getNumberOfComponents () const =0
 return number of components - note that this cannot be getSize(), which means something else!
virtual LocalDataContainer<
DataType > & 
operator[] (int i)=0
 return reference to ith component as LocalDataContainer
virtual LocalDataContainer<
DataType > const & 
operator[] (int i) const =0

Detailed Description

template<class DataType>
class RVL::ProductLocalDataContainer< DataType >

Specialization of ProductDataContainer to case where all factors are local data containers.

In designing such a class, it is imperative to decide what its primary identity shall be, in order to attach the class to the correct branch of the inheritance tree. Generally, the right decision is probably to attach it as "low down" as possible, i.e. with as many properties. I have followed that rule here: rather than deriving this class from ProductDataContainer, which simply implements virtual PDC properties, I have derived it from LocalDC, to which it adds properties. It's easy enough to write a wrapper class to create a PDC out of one of these:

Definition at line 55 of file localproduct.hh.


Constructor & Destructor Documentation

template<class DataType>
RVL::ProductLocalDataContainer< DataType >::ProductLocalDataContainer (  ) 

Definition at line 59 of file localproduct.hh.

template<class DataType>
RVL::ProductLocalDataContainer< DataType >::ProductLocalDataContainer ( ProductLocalDataContainer< DataType > &   ) 

Definition at line 60 of file localproduct.hh.

template<class DataType>
RVL::ProductLocalDataContainer< DataType >::~ProductLocalDataContainer (  ) 

Definition at line 61 of file localproduct.hh.


Member Function Documentation

template<class DataType>
virtual int RVL::ProductLocalDataContainer< DataType >::getNumberOfComponents (  )  const [pure virtual]

return number of components - note that this cannot be getSize(), which means something else!

Implemented in RVL::PartitionedLocalDataContainer< DataType >.

template<class DataType>
virtual LocalDataContainer<DataType>& RVL::ProductLocalDataContainer< DataType >::operator[] ( int  i  )  [pure virtual]

return reference to ith component as LocalDataContainer

Implemented in RVL::PartitionedLocalDataContainer< DataType >.

template<class DataType>
virtual LocalDataContainer<DataType> const& RVL::ProductLocalDataContainer< DataType >::operator[] ( int  i  )  const [pure virtual]

Implemented in RVL::PartitionedLocalDataContainer< DataType >.


The documentation for this class was generated from the following file:
Generated on 5 Jan 2017 for LocalRVL by  doxygen 1.4.7