fesa-core  5.0.1
fesa::FunctionIterator< FunctionType, LocalFunctionType > Class Template Reference

#include <FunctionsIterator.h>

Inherits iterator_adaptor< FunctionIterator< FunctionType, LocalFunctionType >, FunctionType *, boost::use_default, boost::random_access_traversal_tag >.

Public Member Functions

 FunctionIterator (const detail::FunctionStorage *storage, std::size_t interval)
 
 FunctionIterator (FunctionType *function, std::size_t functionObjectSize)
 

Protected Attributes

std::size_t interval_
 

Detailed Description

template<typename FunctionType, typename LocalFunctionType>
class fesa::FunctionIterator< FunctionType, LocalFunctionType >

A Function iterator that works over different storage of functions:

  • Arrays of Point of fixed size (flat storage of points in FieldValue objects).
  • Pointer to Function object

Constructor & Destructor Documentation

template<typename FunctionType, typename LocalFunctionType>
fesa::FunctionIterator< FunctionType, LocalFunctionType >::FunctionIterator ( const detail::FunctionStorage storage,
std::size_t  interval 
)
inline

Instantiates an iterator over FunctionStorage objects that can hold up to interval points.

template<typename FunctionType, typename LocalFunctionType>
fesa::FunctionIterator< FunctionType, LocalFunctionType >::FunctionIterator ( FunctionType *  function,
std::size_t  functionObjectSize 
)
inline

Instantiates an iterator over an array of functions. The size of a function object is functionObjectSize.

Parameters
functionpointer to the function
functionObjectSizethe size of a function object, in bytes.

Member Data Documentation

template<typename FunctionType, typename LocalFunctionType>
std::size_t fesa::FunctionIterator< FunctionType, LocalFunctionType >::interval_
protected

Allows objects to compute the offset to the next function. Stores either:

  • When current_ is not NULL: the size of a function object,
  • When storage_ is not NULL: the maximum number of points a FunctionStorage can hold.

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