[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]

| StandardAccessor [Data Accessors] |

Encapsulate access to the values an iterator points to. More...

`#include <vigra/accessor.hxx>`

List of all members.

## Public Types

typedef VALUETYPE | value_type

## Public Member Functions

template<class ITERATOR, class DIFFERENCE>
VALUETYPE const & | operator() (ITERATOR const &i, DIFFERENCE const &diff) const
template<class ITERATOR>
VALUETYPE const & | operator() (ITERATOR const &i) const
template<class V, class ITERATOR, class DIFFERENCE>
void | set (V const &value, ITERATOR const &i, DIFFERENCE const &diff) const
template<class V, class ITERATOR>
void | set (V const &value, ITERATOR const &i) const

## Detailed Description

### template<class VALUETYPE>
class vigra::StandardAccessor< VALUETYPE >

Encapsulate access to the values an iterator points to.

StandardAccessor is a trivial accessor that simply encapsulates the iterator's operator*() and operator[]() in its read and write functions. It passes its arguments by reference. If you want to return items by value, you must use StandardValueAccessor instead of StandardAccessor. Both accessors have different optimization properties -- StandardAccessor is usually faster for compound pixel types, while StandardValueAccessor is faster for the built-in types.

When a floating point number is assigned by means of an accessor with integral value_type, the value is rounded and clipped as approriate.

#include <vigra/accessor.hxx>
Namespace: vigra

## Member Typedef Documentation

typedef VALUETYPE value_type

the value_type

## Member Function Documentation

template<class ITERATOR, class DIFFERENCE>
VALUETYPE const& operator() | ( | ITERATOR const & | i,
|  | DIFFERENCE const & | diff |
| ) |  |  | const

read the data item at an offset (can be 1D or 2D or higher order difference).

template<class ITERATOR>
VALUETYPE const& operator() | ( | ITERATOR const & | i | ) | const

read the current data item

template<class V, class ITERATOR, class DIFFERENCE>
void set | ( | V const & | value,
|  | ITERATOR const & | i,
|  | DIFFERENCE const & | diff |
| ) |  |  | const

Write the data item at an offset (can be 1D or 2D or higher order difference).. The type `V` of the passed in `value` is automatically converted to `VALUETYPE`. In case of a conversion floating point -> intergral this includes rounding and clipping.

template<class V, class ITERATOR>
void set | ( | V const & | value,
|  | ITERATOR const & | i |
| ) |  |  | const

Write the current data item. The type `V` of the passed in `value` is automatically converted to `VALUETYPE`. In case of a conversion floating point -> intergral this includes rounding and clipping.

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

- vigra/accessor.hxx

© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) Heidelberg Collaboratory for Image Processing, University of Heidelberg, Germany | html generated using doxygen and Python VIGRA 1.6.0 (13 Aug 2008)