Loading [MathJax]/extensions/TeX/AMSsymbols.js
DGtal 2.0.0
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage > Class Template Reference

Aim: model of CBidirectionalRangeFromPoint that adapts a TiledImage range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it. More...

#include <DGtal/base/TiledImageBidirectionalRangeFromPoint.h>

Inheritance diagram for DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >:
[legend]

Public Types

typedef TTiledImage TiledImage
typedef TiledImage::Point Point
typedef TiledImage::OutputIterator Iterator
typedef TiledImage::ConstIterator ConstIterator
typedef boost::reverse_iterator< IteratorReverseIterator
typedef boost::reverse_iterator< ConstIteratorConstReverseIterator
typedef TiledImage::OutputIterator OutputIterator
typedef boost::reverse_iterator< IteratorReverseOutputIterator

Public Member Functions

 TiledImageBidirectionalRangeFromPoint (const TiledImage *ti)
 TiledImageBidirectionalRangeFromPoint (const TiledImageBidirectionalRangeFromPoint &other)
TiledImageBidirectionalRangeFromPointoperator= (const TiledImageBidirectionalRangeFromPoint &other)
 ~TiledImageBidirectionalRangeFromPoint ()
bool isValid () const
void selfDisplay (std::ostream &out) const
std::string className () const
Iterator begin ()
Iterator begin (const Point &aPoint)
ConstIterator begin () const
ConstIterator begin (const Point &aPoint) const
Iterator end ()
ConstIterator end () const
OutputIterator outputIterator ()
OutputIterator outputIterator (const Point &aPoint)
ReverseOutputIterator routputIterator ()
ReverseOutputIterator routputIterator (const Point &aPoint)
ReverseIterator rbegin ()
ReverseIterator rbegin (const Point &aPoint)
ReverseIterator rend ()
ConstReverseIterator rbegin () const
ConstReverseIterator rbegin (const Point &aPoint) const
ConstReverseIterator rend () const

Private Member Functions

 BOOST_CONCEPT_ASSERT ((boost::BidirectionalIterator< typename TTiledImage::OutputIterator >))
 BOOST_CONCEPT_ASSERT ((boost::BidirectionalIterator< typename TTiledImage::ConstIterator >))

Private Attributes

const TTiledImage * myti

Detailed Description

template<typename TTiledImage>
class DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >

Aim: model of CBidirectionalRangeFromPoint that adapts a TiledImage range of elements bounded by two iterators [itb, ite) and provides services to (circularly)iterate over it.

Template Parameters
TTiledImagethe type of the TiledImage with his const iterator to adapt (at least bidirectional)
See also
RangeAdapter

Definition at line 72 of file TiledImageBidirectionalRangeFromPoint.h.

Member Typedef Documentation

◆ ConstIterator

template<typename TTiledImage>
typedef TiledImage::ConstIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::ConstIterator

Definition at line 87 of file TiledImageBidirectionalRangeFromPoint.h.

◆ ConstReverseIterator

template<typename TTiledImage>
typedef boost::reverse_iterator<ConstIterator> DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::ConstReverseIterator

Definition at line 90 of file TiledImageBidirectionalRangeFromPoint.h.

◆ Iterator

template<typename TTiledImage>
typedef TiledImage::OutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::Iterator

Definition at line 86 of file TiledImageBidirectionalRangeFromPoint.h.

◆ OutputIterator

template<typename TTiledImage>
typedef TiledImage::OutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::OutputIterator

Definition at line 92 of file TiledImageBidirectionalRangeFromPoint.h.

◆ Point

template<typename TTiledImage>
typedef TiledImage::Point DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::Point

Definition at line 84 of file TiledImageBidirectionalRangeFromPoint.h.

◆ ReverseIterator

template<typename TTiledImage>
typedef boost::reverse_iterator<Iterator> DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::ReverseIterator

Definition at line 89 of file TiledImageBidirectionalRangeFromPoint.h.

◆ ReverseOutputIterator

template<typename TTiledImage>
typedef boost::reverse_iterator<Iterator> DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::ReverseOutputIterator

Definition at line 93 of file TiledImageBidirectionalRangeFromPoint.h.

◆ TiledImage

template<typename TTiledImage>
typedef TTiledImage DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::TiledImage

Definition at line 82 of file TiledImageBidirectionalRangeFromPoint.h.

Constructor & Destructor Documentation

◆ TiledImageBidirectionalRangeFromPoint() [1/2]

template<typename TTiledImage>
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::TiledImageBidirectionalRangeFromPoint ( const TiledImage * ti)
inline

Standard constructor from a TiledImage.

Parameters
tipointer on a TiledImage.

Definition at line 104 of file TiledImageBidirectionalRangeFromPoint.h.

105 : myti ( ti ) {}
Aim: model of CBidirectionalRangeFromPoint that adapts a TiledImage range of elements bounded by two ...

◆ TiledImageBidirectionalRangeFromPoint() [2/2]

template<typename TTiledImage>
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::TiledImageBidirectionalRangeFromPoint ( const TiledImageBidirectionalRangeFromPoint< TTiledImage > & other)
inline

Copy constructor.

Parameters
otherthe iterator to clone.

Definition at line 111 of file TiledImageBidirectionalRangeFromPoint.h.

112 : myti ( other.myti ) {}

◆ ~TiledImageBidirectionalRangeFromPoint()

template<typename TTiledImage>
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::~TiledImageBidirectionalRangeFromPoint ( )
inline

Destructor. Does nothing.

Definition at line 132 of file TiledImageBidirectionalRangeFromPoint.h.

132{}

Member Function Documentation

◆ begin() [1/4]

template<typename TTiledImage>
Iterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::begin ( )
inline

◆ begin() [2/4]

template<typename TTiledImage>
ConstIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::begin ( ) const
inline

Iterator service.

Returns
begin iterator

Definition at line 199 of file TiledImageBidirectionalRangeFromPoint.h.

200 {
201 return ConstIterator ( myti->begin() );
202 }

◆ begin() [3/4]

template<typename TTiledImage>
Iterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::begin ( const Point & aPoint)
inline

Iterator service.

Parameters
aPointa Point
Returns
begin iterator at aPoint

Definition at line 190 of file TiledImageBidirectionalRangeFromPoint.h.

191 {
192 return Iterator ( myti->begin(aPoint) );
193 }

◆ begin() [4/4]

template<typename TTiledImage>
ConstIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::begin ( const Point & aPoint) const
inline

Iterator service.

Parameters
aPointa Point
Returns
begin iterator at aPoint

Definition at line 209 of file TiledImageBidirectionalRangeFromPoint.h.

210 {
211 return ConstIterator ( myti->begin(aPoint) );
212 }

◆ BOOST_CONCEPT_ASSERT() [1/2]

template<typename TTiledImage>
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::BOOST_CONCEPT_ASSERT ( (boost::BidirectionalIterator< typename TTiledImage::ConstIterator >) )
private

◆ BOOST_CONCEPT_ASSERT() [2/2]

template<typename TTiledImage>
DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::BOOST_CONCEPT_ASSERT ( (boost::BidirectionalIterator< typename TTiledImage::OutputIterator >) )
private

◆ className()

template<typename TTiledImage>
std::string DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::className ( ) const
inline
Returns
the style name used for drawing this object.

Definition at line 160 of file TiledImageBidirectionalRangeFromPoint.h.

161 {
162 return "TiledImageBidirectionalRangeFromPoint";
163 }

◆ end() [1/2]

template<typename TTiledImage>
Iterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::end ( )
inline

◆ end() [2/2]

template<typename TTiledImage>
ConstIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::end ( ) const
inline

Iterator service.

Returns
end iterator

Definition at line 227 of file TiledImageBidirectionalRangeFromPoint.h.

228 {
229 return ConstIterator ( myti->end() );
230 }

◆ isValid()

template<typename TTiledImage>
bool DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::isValid ( ) const
inline

Checks the validity/consistency of the object.

Returns
'true' if the object is valid, 'false' otherwise.

Definition at line 138 of file TiledImageBidirectionalRangeFromPoint.h.

139 {
140 return true;
141 }

◆ operator=()

template<typename TTiledImage>
TiledImageBidirectionalRangeFromPoint & DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::operator= ( const TiledImageBidirectionalRangeFromPoint< TTiledImage > & other)
inline

Assignment.

Parameters
otherthe iterator to copy.
Returns
a reference on 'this'.

Definition at line 119 of file TiledImageBidirectionalRangeFromPoint.h.

120 {
121 if ( this != &other )
122 {
123 myti = other.myti;
124 }
125
126 return *this;
127 }

◆ outputIterator() [1/2]

template<typename TTiledImage>
OutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::outputIterator ( )
inline

OutputIterator service.

Returns
an output itertor on the first elements

Definition at line 236 of file TiledImageBidirectionalRangeFromPoint.h.

237 {
238 return OutputIterator ( myti->begin() );
239 }

◆ outputIterator() [2/2]

template<typename TTiledImage>
OutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::outputIterator ( const Point & aPoint)
inline

OutputIterator service.

Parameters
aPointa point
Returns
an output itertor on the point

Definition at line 246 of file TiledImageBidirectionalRangeFromPoint.h.

247 {
248 return OutputIterator ( myti->begin(aPoint) );
249 }

◆ rbegin() [1/4]

template<typename TTiledImage>
ReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rbegin ( )
inline

Iterator service.

Returns
rbegin iterator

Definition at line 274 of file TiledImageBidirectionalRangeFromPoint.h.

◆ rbegin() [2/4]

template<typename TTiledImage>
ConstReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rbegin ( ) const
inline

Iterator service.

Returns
rbegin iterator

Definition at line 302 of file TiledImageBidirectionalRangeFromPoint.h.

303 {
304 return ConstReverseIterator ( this->end() );
305 }
boost::reverse_iterator< ConstIterator > ConstReverseIterator

◆ rbegin() [3/4]

template<typename TTiledImage>
ReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rbegin ( const Point & aPoint)
inline

Iterator service.

Parameters
aPointa Point
Returns
rbegin iterator at aPoint

Definition at line 284 of file TiledImageBidirectionalRangeFromPoint.h.

285 {
286 return ReverseIterator ( myti->rbegin(aPoint) );
287 }

◆ rbegin() [4/4]

template<typename TTiledImage>
ConstReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rbegin ( const Point & aPoint) const
inline

Iterator service.

Parameters
aPointa Point
Returns
rbegin iterator at aPoint

Definition at line 312 of file TiledImageBidirectionalRangeFromPoint.h.

313 {
314 return ConstReverseIterator ( myti->rbegin(aPoint) );
315 }

◆ rend() [1/2]

template<typename TTiledImage>
ReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rend ( )
inline

Iterator service.

Returns
rend iterator

Definition at line 293 of file TiledImageBidirectionalRangeFromPoint.h.

◆ rend() [2/2]

template<typename TTiledImage>
ConstReverseIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::rend ( ) const
inline

Iterator service.

Returns
rend iterator

Definition at line 321 of file TiledImageBidirectionalRangeFromPoint.h.

322 {
323 return ConstReverseIterator ( this->begin() );
324 }

◆ routputIterator() [1/2]

template<typename TTiledImage>
ReverseOutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::routputIterator ( )
inline

ReverseOutputIterator service.

Returns
an output itertor on the first elements

Definition at line 255 of file TiledImageBidirectionalRangeFromPoint.h.

256 {
257 return ReverseOutputIterator ( myti->begin() );
258 }

◆ routputIterator() [2/2]

template<typename TTiledImage>
ReverseOutputIterator DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::routputIterator ( const Point & aPoint)
inline

ReverseOutputIterator service.

Parameters
aPointa point
Returns
an output itertor on the point

Definition at line 265 of file TiledImageBidirectionalRangeFromPoint.h.

266 {
267 return ReverseOutputIterator ( myti->begin(aPoint) );
268 }

◆ selfDisplay()

template<typename TTiledImage>
void DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::selfDisplay ( std::ostream & out) const
inline

Writes/Displays the object on an output stream.

Parameters
outthe output stream where the object is written.

Definition at line 148 of file TiledImageBidirectionalRangeFromPoint.h.

149 {
151 out << "[TiledImageBidirectionalRangeFromPoint]" << std::endl;
152 out << "\t";
153 std::copy ( myti->begin(), myti->end(), std::ostream_iterator<Value> ( out, ", " ) );
154 out << std::endl;
155 }

Field Documentation

◆ myti

template<typename TTiledImage>
const TTiledImage* DGtal::TiledImageBidirectionalRangeFromPoint< TTiledImage >::myti
private

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