[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
|
NeighborOffsetCirculator< NEIGHBORCODE > Class Template Reference | ![]() |
Circulator that walks around a given location. More...
#include <vigra/pixelneighborhood.hxx>
Circulator that walks around a given location.
The template parameter defines the kind of neighborhood used, e.g.
NeighborOffsetCirculator<EightNeighborCode> eight_circulator;
NeighborOffsetCirculator<FourNeighborCode> four_circulator;
Since this circulator doesn't know about the pixels in any particular image, you usually don't use it directly but rather as a base class or helper for neighborhood circulators referring to a particular image (e.g. NeighborhoodCirculator)
#include <vigra/pixelneighborhood.hxx>
Namespace: vigra
| typedef NEIGHBORCODE::Direction Direction |
return type of direction()
| typedef NEIGHBORCODE::difference_type value_type |
the circulator's value type
| typedef value_type const& reference |
the circulator's reference type (return type of *circ)
| typedef value_type const& index_reference |
the circulator's index reference type (return type of circ[n])
| typedef value_type const* pointer |
the circulator's pointer type (return type of operator->)
| typedef int difference_type |
the circulator's difference type (argument type of circ[diff])
| typedef random_access_circulator_tag iterator_category |
the circulator tag (random access iterator)
| NeighborOffsetCirculator | ( | Direction | dir = NEIGHBORCODE::InitialDirection | ) |
Create circulator referring to the given direction.
| NeighborOffsetCirculator& operator++ | ( | ) |
pre-increment
| NeighborOffsetCirculator& operator-- | ( | ) |
pre-decrement
| NeighborOffsetCirculator operator++ | ( | int | ) |
post-increment
| NeighborOffsetCirculator operator-- | ( | int | ) |
post-decrement
| NeighborOffsetCirculator& operator+= | ( | difference_type | d | ) |
add-assignment
| NeighborOffsetCirculator& operator-= | ( | difference_type | d | ) |
subtract-assignment
| NeighborOffsetCirculator operator+ | ( | difference_type | d | ) | const |
addition
| NeighborOffsetCirculator operator- | ( | difference_type | d | ) | const |
subtraction
Move to the direction that is 'right' relative to the current direction. This is equivalent to four_circulator-- and eight_circulator -= 2 respectively.
Move to the direction that is 'left' relative to the current direction. This is equivalent to four_circulator++ and eight_circulator += 2 respectively.
Move to the opposite direction of the current direction. This is equivalent to four_circulator += 2 and eight_circulator += 4 respectively.
Move to the given direction.
| bool operator== | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
equality
| bool operator!= | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
inequality
| difference_type operator- | ( | NeighborOffsetCirculator< NEIGHBORCODE > const & | o | ) | const |
subtraction
| reference operator* | ( | ) | const |
dereference
| index_reference operator[] | ( | difference_type | d | ) | const |
index
| pointer operator-> | ( | ) | const |
member access
| value_type relativeDiff | ( | difference_type | offset | ) | const |
Get relative distance from current neighbor to neighbor at given offset.
| bool isDiagonal | ( | ) | const |
Check whether current direction is a diagonal one.
| unsigned int directionBit | ( | ) | const |
Get current direction bit.
| unsigned int oppositeDirectionBit | ( | ) | const |
Get opposite bit of current direction.
| Direction direction | ( | difference_type | offset | ) | const |
Get direction code at offset of current direction.
|
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|