DGtal  1.1.0
OneBalancedWordComputer.h
1 
17 #pragma once
18 
36 #if defined(OneBalancedWordComputer_RECURSES)
37 #error Recursive header files inclusion detected in OneBalancedWordComputer.h
38 #else // defined(OneBalancedWordComputer_RECURSES)
39 
40 #define OneBalancedWordComputer_RECURSES
41 
42 #if !defined OneBalancedWordComputer_h
43 
44 #define OneBalancedWordComputer_h
45 
47 // Inclusions
48 #include <iostream>
49 #include "DGtal/base/Common.h"
50 #include "DGtal/geometry/curves/FreemanChain.h"
51 #include "DGtal/base/OrderedAlphabet.h"
52 #include "DGtal/base/IteratorCirculatorTraits.h"
53 #include "DGtal/kernel/CInteger.h"
54 #include "DGtal/arithmetic/IntegerComputer.h"
55 #include "DGtal/geometry/curves/ArithmeticalDSL.h"
57 
58 namespace DGtal
59 {
60 
61 
62 
64  // template class OneBalancedWordComputer
90  template <typename TConstIterator, typename TInteger>
92  {
93 
94  // ----------------------- Types ------------------------------
95  public :
96  //Required type
98  typedef TConstIterator ConstIterator;
99  typedef TInteger Integer;
100 
101  //Required types
105 
106  //2D points and 2D vectors
109 
111  typedef int Size;
112  typedef int Index;
113 
114  //The basic steps associate to the codes are given by a function `f: Code -> Vector`
116 
117  //DSL
119 
120  private :
128  template < class TIterator, class iterator_type = typename IteratorCirculatorTraits <TIterator>::Category > class CodeHandler
129  {
130  public :
132  { }
133  void init( const TIterator & it )
134  {
135  myIter = it;
136  }
137 
138  Code getCode( Index n ) const
139  {
140  return myCodes[ n ];
141  }
142 
144  {
145  while ( n >= myCodes.size() )
146  {
147  myCodes.push_back( *myIter );
148  ++myIter;
149  }
150  return myCodes[ n ];
151  }
152 
153  private :
154  std::vector<Code> myCodes;
155  TIterator myIter;
156  };
157 
162  template < class TIterator >
163  class CodeHandler< TIterator, BidirectionalCategory >
164  {
165  public :
167  {
168  }
169  void init( const TIterator & it )
170  {
171  myFirst = it;
172  myLast = it;
173  }
174 
175  Code getCode( Index n ) const
176  {
177  return ( n >= 0 ) ? myPosCodes[ n ] : myNegCodes[ 1-n ];
178  }
179 
181  {
182  Code c;
183  if ( n<0 )
184  {
185  unsigned int i = 1-n;
186  while ( i >= myNegCodes.size() )
187  {
188  --myFirst;
189  myNegCodes.push_back( *myFirst );
190  }
191  c = myNegCodes[ n ];
192  }
193  else
194  {
195  unsigned int i = n;
196  while ( i >= myPosCodes.size() )
197  {
198  myPosCodes.push_back( *myLast );
199  ++myLast;
200  }
201  c = myPosCodes[ n ];
202  }
203  return c;
204  }
205 
206  private :
207  std::vector<Code> myPosCodes;
208  std::vector<Code> myNegCodes;
209  TIterator myFirst;
210  TIterator myLast;
211  };
212 
216  template < class TIterator>
218  {
219  public :
221  { }
222 
223  void init ( const TIterator & it )
224  {
225  myIter = it;
226  }
227 
228  Code getCode( Index n ) const
229  {
230  return myIter[ n ];
231  }
232 
234  {
235  return myIter[ n ];
236  }
237 
238  private :
239  TIterator myIter;
240  };
241 
242 
243  public :
244 
249  {
250 
252  typedef Point value_type;
254  typedef Point * pointer;
255  typedef Point & reference;
256 
260 
265  {}
266 
274  myDSS(dss), i(ind), p(pt)
275  {}
276 
281 
285  bool operator==( const ConstPointIterator other) const
286  {
287  return i == other.i;
288  }
289  bool operator!=( const ConstPointIterator other) const
290  {
291  return i != other.i;
292  }
293 
294  Index operator-( const ConstPointIterator other) const
295  {
296  return i - other.i;
297  }
298 
303  ConstPointIterator( const ConstPointIterator & other) = default;
304 
310  {
311  i = other.i;
312  myDSS = other.myDSS;
313  p = other.p;
314  return *this;
315  }
316 
317  Point operator*() const
318  {
319  return p;
320  }
321 
322  // pre-increment ++i
324  {
325  next();
326  return *this;
327  }
328 
329  // post-increment
331  {
332  ConstPointIterator it = *this;
333  next();
334  return it;
335  }
336 
337 
338  // pre-decrement --i
340  {
341  prev();
342  return *this;
343  }
344 
345  // post-decrement
347  {
348  ConstPointIterator it = *this;
349  prev();
350  return it;
351  }
352 
353  // Move to next position
354  void next()
355  {
356  p += myDSS->myDisplacements( myDSS->getCode( i ) );
357  ++i;
358  }
359 
360  // Move to previous position
361  void prev()
362  {
363  --i;
364  p -= myDSS->myDisplacements( myDSS->getCode( i ) );
365  }
366 
367 
368  // Get a reference to the current Combinatorial DSS
370  {
371  return myDSS;
372  }
373 
374 
375  // Get the index of the iterator
376  Index getIndex() const
377  {
378  return i;
379  }
380 
381  };
382 
383 
384 
385 
386  // ----------------------- Standard services ------------------------------
387  public:
388 
393 
398 
399 
412  void init( const ConstIterator & it,
413  const Point & start = Point(0,0),
414  Vector (*displacements) (Code) = defaultMoves );
415 
416 
417 
422  void init(const ConstPointIterator & i);
423 
432  void init(const FreemanChainCode & fc);
433 
442  void init(const typename FreemanChainCode::ConstIterator & it);
443 
448  OneBalancedWordComputer ( const Self & other );
449 
456 
460  Self getSelf( ) const;
461 
462 
463 
468  bool operator==( const Self & other ) const;
469 
476  bool operator!=( const Self & other ) const;
477 
478 
483 
484 
491 
497  bool extendFront();
498 
504  bool extendBack();
505 
512 
520  bool retractBack();
521 
529  bool retractFront();
530 
535  void setPosition( const Point & p );
536 
537 
542  void translate( const Vector & v );
543 
552 
560  Integer getA() const;
561 
569  Integer getB() const;
570 
578  Integer getMu() const;
579 
587  Integer getOmega() const;
588 
589 
596  Integer remainder(const Point & aPoint) const;
597 
605  void computeLeaningPoints( Point & uf, Point & ul,
606  Point & lf, Point & ll ) const;
607 
608 
615  Point Uf() const;
616 
623  Point Ul() const;
624 
631  Point Lf() const;
632 
639  Point Ll() const;
640 
646  bool isValid() const;
647 
672  ConstIterator it,
673  const OrderedAlphabet & aOA);
674 
675 
676  // ----------------------- Accessors --------------------------------------
677 
678  public:
679 
684  Point back() const;
685 
690  Point front() const;
691 
697 
703 
708 
713 
714 
715 
716 
717 
718 
719  // ----------------------- Interface --------------------------------------
720  public:
721 
726  void selfDisplay ( std::ostream & out ) const;
727 
728 
729  protected:
730  // ------------------------- Protected Datas ------------------------------
731 
736 
742 
749 
755 
756 
762  unsigned int myNbRepeat;
763 
770 
776 
784 
785 
790 
791 
792 
793  // ------------------------- Private Datas --------------------------------
794  private:
795 
796  // ------------------------- Hidden services ------------------------------
797  public:
798 
799 
805 
811 
819 
825  Code getCode(Index pos) const;
826 
832 
838 
845 
852 
863  bool isUL ( Index pos ) const;
864 
875  bool nextIsLL ( Index pos ) const;
876 
887  bool previousIsLL ( Index pos ) const;
888 
894  bool isTrivial() const;
895 
902 
903 
904 
905 
906  private:
907  // ------------------------- Internals ------------------------------------
908  public :
909 
926  {
927  Integer x = ( c == '0' ) ? 1 : ( ( c == '2' ) ? -1 : 0 ) ;
928  Integer y = ( c == '1' ) ? 1 : ( ( c == '3' ) ? -1 : 0 ) ;
929  return Vector( x, y );
930  }
931 
932 
933 
934  }; // end of class OneBalancedWordComputer
935 
942  template < typename TConstIterator, typename TInteger >
943  std::ostream&
944  operator<< ( std::ostream & out,
946 
947 
948 } // namespace DGtal
949 
950 
952 // Includes inline functions.
953 #include "DGtal/geometry/curves/OneBalancedWordComputer.ih"
954 // //
956 
957 #endif // !defined OneBalancedWordComputer_h
958 
959 #undef OneBalancedWordComputer_RECURSES
960 #endif // else defined(OneBalancedWordComputer_RECURSES)
DGtal::OneBalancedWordComputer::myBegin
ConstIterator myBegin
Definition: OneBalancedWordComputer.h:740
DGtal::OneBalancedWordComputer::ConstPointIterator::operator-
Index operator-(const ConstPointIterator other) const
Definition: OneBalancedWordComputer.h:294
DGtal::OneBalancedWordComputer::myNbRepeat
unsigned int myNbRepeat
Definition: OneBalancedWordComputer.h:762
DGtal::OneBalancedWordComputer::Size
int Size
Definition: OneBalancedWordComputer.h:111
DGtal::RandomAccessCategory
Definition: IteratorCirculatorTraits.h:59
DGtal::OneBalancedWordComputer::getBigLetter
Code getBigLetter() const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::getCode
Code getCode(Index n) const
Definition: OneBalancedWordComputer.h:175
DGtal::OneBalancedWordComputer::nextIsLL
bool nextIsLL(Index pos) const
DGtal::OneBalancedWordComputer::front
Point front() const
DGtal::concepts::CInteger
Aim: Concept checking for Integer Numbers. More precisely, this concept is a refinement of both CEucl...
Definition: CInteger.h:88
DGtal::OneBalancedWordComputer::myNextBefore
Index myNextBefore
Definition: OneBalancedWordComputer.h:782
DGtal::OneBalancedWordComputer::myEnd
ConstIterator myEnd
Definition: OneBalancedWordComputer.h:741
DGtal::OneBalancedWordComputer::Vector
DGtal::PointVector< 2, Integer > Vector
Definition: OneBalancedWordComputer.h:108
DGtal::OneBalancedWordComputer::mainPatternVector
Vector mainPatternVector() const
DGtal::OneBalancedWordComputer::ConstPointIterator::ConstPointIterator
ConstPointIterator(const OneBalancedWordComputer *dss, Index ind, Point pt)
Definition: OneBalancedWordComputer.h:273
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::getCode
Code getCode(Index n)
Definition: OneBalancedWordComputer.h:180
DGtal::OneBalancedWordComputer::previousIsLL
bool previousIsLL(Index pos) const
DGtal::OneBalancedWordComputer::ConstPointIterator::reference
Point & reference
Definition: OneBalancedWordComputer.h:255
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::myFirst
TIterator myFirst
Definition: OneBalancedWordComputer.h:209
DGtal::OneBalancedWordComputer::getMu
Integer getMu() const
DGtal::OneBalancedWordComputer::Lf
Point Lf() const
aPoint
const Point aPoint(3, 4)
DGtal::OneBalancedWordComputer::defaultMoves
static Vector defaultMoves(Code c)
Definition: OneBalancedWordComputer.h:925
DGtal::FreemanChain::ConstIterator
Definition: FreemanChain.h:143
DGtal::OneBalancedWordComputer::myLastPoint
Point myLastPoint
Definition: OneBalancedWordComputer.h:748
DGtal::FreemanChain
Definition: FreemanChain.h:114
DGtal::OneBalancedWordComputer::ConstPointIterator::next
void next()
Definition: OneBalancedWordComputer.h:354
DGtal::OneBalancedWordComputer::CodeHandler::getCode
Code getCode(Index n)
Definition: OneBalancedWordComputer.h:143
DGtal::OneBalancedWordComputer::CodeHandler::getCode
Code getCode(Index n) const
Definition: OneBalancedWordComputer.h:138
DGtal::OneBalancedWordComputer::ConstPointIterator::operator--
ConstPointIterator operator--(int)
Definition: OneBalancedWordComputer.h:346
DGtal::OneBalancedWordComputer::retractBack
bool retractBack()
DGtal::OneBalancedWordComputer::ConstPointIterator::operator--
ConstPointIterator & operator--()
Definition: OneBalancedWordComputer.h:339
DGtal::OneBalancedWordComputer::getCode
Code getCode(Index pos)
DGtal::OneBalancedWordComputer
Aim:
Definition: OneBalancedWordComputer.h:92
DGtal::OneBalancedWordComputer::operator==
bool operator==(const Self &other) const
DGtal::OneBalancedWordComputer::FreemanChainCode
FreemanChain< TInteger > FreemanChainCode
Definition: OneBalancedWordComputer.h:102
DGtal::OneBalancedWordComputer::pointBegin
ConstPointIterator pointBegin() const
DGtal::OneBalancedWordComputer::ConstPointIterator
Definition: OneBalancedWordComputer.h:249
DGtal::OneBalancedWordComputer::myLastLetter
Index myLastLetter
Definition: OneBalancedWordComputer.h:754
DGtal::OneBalancedWordComputer::ConstPointIterator::myDSS
const OneBalancedWordComputer * myDSS
Definition: OneBalancedWordComputer.h:257
DGtal::OneBalancedWordComputer::isUL
bool isUL(Index pos) const
DGtal::OneBalancedWordComputer::operator!=
bool operator!=(const Self &other) const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, RandomAccessCategory >::myIter
TIterator myIter
Definition: OneBalancedWordComputer.h:239
DGtal::OneBalancedWordComputer::Ul
Point Ul() const
DGtal::OneBalancedWordComputer::ConstPointIterator::p
Point p
Definition: OneBalancedWordComputer.h:259
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, RandomAccessCategory >::init
void init(const TIterator &it)
Definition: OneBalancedWordComputer.h:223
DGtal::OneBalancedWordComputer::Integer
TInteger Integer
Definition: OneBalancedWordComputer.h:99
DGtal::OneBalancedWordComputer::ConstPointIterator::ConstPointIterator
ConstPointIterator(const ConstPointIterator &other)=default
DGtal::OneBalancedWordComputer::ConstPointIterator::getIndex
Index getIndex() const
Definition: OneBalancedWordComputer.h:376
DGtal::OneBalancedWordComputer::OneBalancedWordComputer
OneBalancedWordComputer(const Self &other)
DGtal::OneBalancedWordComputer::suffixLength
Size suffixLength() const
DGtal::OneBalancedWordComputer::CodeHandler
Definition: OneBalancedWordComputer.h:129
DGtal::OneBalancedWordComputer::myFirstLetter
Index myFirstLetter
Definition: OneBalancedWordComputer.h:753
DGtal::OneBalancedWordComputer::retractFront
bool retractFront()
DGtal::OneBalancedWordComputer::CodeHandler::myCodes
std::vector< Code > myCodes
Definition: OneBalancedWordComputer.h:154
DGtal::OneBalancedWordComputer::OneBalancedWordComputer
OneBalancedWordComputer()
DGtal::OneBalancedWordComputer::ConstPointIterator::prev
void prev()
Definition: OneBalancedWordComputer.h:361
DGtal::OneBalancedWordComputer::longestChristoffelPrefix
bool longestChristoffelPrefix(ConstIterator it, const OrderedAlphabet &aOA)
DGtal::OneBalancedWordComputer::myPatternEnd
Index myPatternEnd
Definition: OneBalancedWordComputer.h:769
DGtal::OneBalancedWordComputer::ConstPointIterator::~ConstPointIterator
~ConstPointIterator()
Definition: OneBalancedWordComputer.h:280
DGtal::OneBalancedWordComputer::setPosition
void setPosition(const Point &p)
DGtal::OneBalancedWordComputer::ConstPointIterator::i
Index i
Definition: OneBalancedWordComputer.h:258
DGtal::OneBalancedWordComputer::operator=
OneBalancedWordComputer & operator=(const Self &other)
DGtal::OneBalancedWordComputer::ConstPointIterator::operator++
ConstPointIterator & operator++()
Definition: OneBalancedWordComputer.h:323
DGtal::OneBalancedWordComputer::ConstPointIterator::value_type
Point value_type
Definition: OneBalancedWordComputer.h:252
DGtal
DGtal is the top-level namespace which contains all DGtal functions and types.
Definition: ClosedIntegerHalfPlane.h:49
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::CodeHandler
CodeHandler()
Definition: OneBalancedWordComputer.h:166
DGtal::OneBalancedWordComputer::pointEnd
ConstPointIterator pointEnd() const
DGtal::OneBalancedWordComputer::begin
ConstIterator begin() const
DGtal::OneBalancedWordComputer::ConstPointIterator::operator==
bool operator==(const ConstPointIterator other) const
Definition: OneBalancedWordComputer.h:285
DGtal::OneBalancedWordComputer::myPatternBegin
Index myPatternBegin
Definition: OneBalancedWordComputer.h:768
DGtal::OneBalancedWordComputer::Uf
Point Uf() const
DGtal::OneBalancedWordComputer::ConstPointIterator::iterator_category
BidirectionalCategory iterator_category
Definition: OneBalancedWordComputer.h:251
DGtal::OneBalancedWordComputer::ConstIterator
TConstIterator ConstIterator
Definition: OneBalancedWordComputer.h:98
DGtal::OneBalancedWordComputer::myCodeHandler
CodeHandler< ConstIterator > myCodeHandler
Definition: OneBalancedWordComputer.h:735
DGtal::OneBalancedWordComputer::end
ConstIterator end() const
DGtal::OneBalancedWordComputer::ConstPointIterator::operator*
Point operator*() const
Definition: OneBalancedWordComputer.h:317
DGtal::OneBalancedWordComputer::isTrivial
bool isTrivial() const
DGtal::OneBalancedWordComputer::extendBack
bool extendBack()
DGtal::OneBalancedWordComputer::ConstPointIterator::getDSS
const OneBalancedWordComputer * getDSS() const
Definition: OneBalancedWordComputer.h:369
DGtal::OneBalancedWordComputer::getA
Integer getA() const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::myLast
TIterator myLast
Definition: OneBalancedWordComputer.h:210
DGtal::OneBalancedWordComputer::BOOST_CONCEPT_ASSERT
BOOST_CONCEPT_ASSERT((concepts::CInteger< TInteger >))
DGtal::OneBalancedWordComputer::getOmega
Integer getOmega() const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, RandomAccessCategory >::getCode
Code getCode(Index n) const
Definition: OneBalancedWordComputer.h:228
DGtal::OneBalancedWordComputer::getSelf
Self getSelf() const
DGtal::operator<<
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
DGtal::OneBalancedWordComputer::myDisplacements
Vector(* myDisplacements)(Code)
Definition: OneBalancedWordComputer.h:789
DGtal::OneBalancedWordComputer::isExtendableBack
bool isExtendableBack()
DGtal::OneBalancedWordComputer::myFirstPoint
Point myFirstPoint
Definition: OneBalancedWordComputer.h:747
DGtal::ArithmeticalDSL
Aim: This class represents a naive (resp. standard) digital straight line (DSL), ie....
Definition: ArithmeticalDSL.h:107
DGtal::OneBalancedWordComputer::ConstPointIterator::operator++
ConstPointIterator operator++(int)
Definition: OneBalancedWordComputer.h:330
DGtal::OneBalancedWordComputer::getReverse
Reverse getReverse() const
DGtal::OneBalancedWordComputer::init
void init(const ConstPointIterator &i)
DGtal::OneBalancedWordComputer::selfDisplay
void selfDisplay(std::ostream &out) const
DGtal::OrderedAlphabet
Aim: Describes an alphabet over an interval of (ascii) letters, where the lexicographic order can be ...
Definition: OrderedAlphabet.h:70
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, RandomAccessCategory >::getCode
Code getCode(Index n)
Definition: OneBalancedWordComputer.h:233
DGtal::OneBalancedWordComputer::remainder
Integer remainder(const Point &aPoint) const
DGtal::OneBalancedWordComputer::prefixLength
Size prefixLength() const
DGtal::OneBalancedWordComputer::DisplacementFct
Vector(* DisplacementFct)(Code)
Definition: OneBalancedWordComputer.h:115
DGtal::OneBalancedWordComputer::DSL
ArithmeticalDSL< TInteger, TInteger, 4 > DSL
Definition: OneBalancedWordComputer.h:118
DGtal::OneBalancedWordComputer::ConstPointIterator::pointer
Point * pointer
Definition: OneBalancedWordComputer.h:254
DGtal::OneBalancedWordComputer::init
void init(const typename FreemanChainCode::ConstIterator &it)
DGtal::OneBalancedWordComputer::ConstPointIterator::operator=
ConstPointIterator & operator=(const ConstPointIterator &other)
Definition: OneBalancedWordComputer.h:309
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::myNegCodes
std::vector< Code > myNegCodes
Definition: OneBalancedWordComputer.h:208
DGtal::OneBalancedWordComputer::Point
DGtal::PointVector< 2, Integer > Point
Definition: OneBalancedWordComputer.h:107
DGtal::OneBalancedWordComputer::myNextAfter
Index myNextAfter
Definition: OneBalancedWordComputer.h:783
DGtal::PointVector< 2, Integer >
DGtal::BidirectionalCategory
Definition: IteratorCirculatorTraits.h:58
DGtal::OneBalancedWordComputer::init
void init(const ConstIterator &it, const Point &start=Point(0, 0), Vector(*displacements)(Code)=defaultMoves)
DGtal::OneBalancedWordComputer::ConstPointIterator::difference_type
Index difference_type
Definition: OneBalancedWordComputer.h:253
DGtal::OneBalancedWordComputer::Reverse
OneBalancedWordComputer< ConstIterator, Integer > Reverse
Definition: OneBalancedWordComputer.h:104
DGtal::OneBalancedWordComputer::~OneBalancedWordComputer
~OneBalancedWordComputer()
DGtal::OneBalancedWordComputer::ConstPointIterator::ConstPointIterator
ConstPointIterator()
Definition: OneBalancedWordComputer.h:264
DGtal::OneBalancedWordComputer::back
Point back() const
DGtal::OneBalancedWordComputer::init
void init(const FreemanChainCode &fc)
DGtal::OneBalancedWordComputer::CodeHandler::CodeHandler
CodeHandler()
Definition: OneBalancedWordComputer.h:131
DGtal::OneBalancedWordComputer::CodeHandler::init
void init(const TIterator &it)
Definition: OneBalancedWordComputer.h:133
DGtal::OneBalancedWordComputer::isValid
bool isValid() const
DGtal::OneBalancedWordComputer::isExtendableFront
bool isExtendableFront()
DGtal::OneBalancedWordComputer::Index
int Index
Definition: OneBalancedWordComputer.h:112
DGtal::OneBalancedWordComputer::CodeHandler::myIter
TIterator myIter
Definition: OneBalancedWordComputer.h:155
DGtal::OneBalancedWordComputer::myLeftPatternLength
Size myLeftPatternLength
Definition: OneBalancedWordComputer.h:775
DGtal::OneBalancedWordComputer::computeLeaningPoints
void computeLeaningPoints(Point &uf, Point &ul, Point &lf, Point &ll) const
DGtal::OneBalancedWordComputer::translate
void translate(const Vector &v)
DGtal::OneBalancedWordComputer::getB
Integer getB() const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::myPosCodes
std::vector< Code > myPosCodes
Definition: OneBalancedWordComputer.h:207
DGtal::OneBalancedWordComputer::Self
OneBalancedWordComputer< ConstIterator, Integer > Self
Definition: OneBalancedWordComputer.h:103
DGtal::OneBalancedWordComputer::mainPatternLength
Size mainPatternLength() const
DGtal::OneBalancedWordComputer::getCode
Code getCode(Index pos) const
DGtal::OneBalancedWordComputer::Ll
Point Ll() const
DGtal::OneBalancedWordComputer::ConstPointIterator::operator!=
bool operator!=(const ConstPointIterator other) const
Definition: OneBalancedWordComputer.h:289
DGtal::OneBalancedWordComputer::getSmallLetter
Code getSmallLetter() const
DGtal::IteratorCirculatorTraits::Value
IC::value_type Value
Definition: IteratorCirculatorTraits.h:303
DGtal::OneBalancedWordComputer::displacement
Vector displacement(Code c) const
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, BidirectionalCategory >::init
void init(const TIterator &it)
Definition: OneBalancedWordComputer.h:169
DGtal::OneBalancedWordComputer::extendFront
bool extendFront()
DGtal::OneBalancedWordComputer::Code
IteratorCirculatorTraits< ConstIterator >::Value Code
Definition: OneBalancedWordComputer.h:110
DGtal::OneBalancedWordComputer::CodeHandler< TIterator, RandomAccessCategory >::CodeHandler
CodeHandler()
Definition: OneBalancedWordComputer.h:220
DGtal::OneBalancedWordComputer::getArithmeticalDescription
DSL getArithmeticalDescription() const