35 #if defined(OrderedAlphabet_RECURSES)
36 #error Recursive header files inclusion detected in OrderedAlphabet.h
37 #else // defined(OrderedAlphabet_RECURSES)
39 #define OrderedAlphabet_RECURSES
41 #if !defined OrderedAlphabet_h
43 #define OrderedAlphabet_h
49 #include "DGtal/base/Common.h"
50 #include "DGtal/kernel/NumberTraits.h"
51 #include "DGtal/arithmetic/ModuloComputer.h"
139 unsigned int order(
char c )
const;
149 char letter(
unsigned int i )
const;
156 bool less(
char c1,
char c2 )
const;
170 bool equal(
char c1,
char c2 )
const;
189 const std::string & w,
207 const std::string & w,
232 bool duvalPP(
size_t & len,
size_t & nb,
233 const std::string & w,
259 const std::string & w,
288 unsigned int & n1,
unsigned int & n2,
289 unsigned int & Lf1,
unsigned int & Lf2,
290 const std::string & w,
319 size_t nextEdge(
size_t & nb_a1,
size_t & nb_a2,
320 std::string & w,
index_t & s,
bool & cvx );
404 #include "DGtal/base/OrderedAlphabet.ih"
409 #endif // !defined OrderedAlphabet_h
411 #undef OrderedAlphabet_RECURSES
412 #endif // else defined(OrderedAlphabet_RECURSES)
char letter(unsigned int i) const
bool lessOrEqual(char c1, char c2) const
bool equal(char c1, char c2) const
bool less(char c1, char c2) const
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
std::string orderedAlphabet() const
bool duvalPP(size_t &len, size_t &nb, const std::string &w, index_t s, index_t e) const
void firstLyndonFactor(size_t &len, size_t &nb, const std::string &w, index_t s, index_t e) const
DGtal is the top-level namespace which contains all DGtal functions and types.
bool duvalPPMod(size_t &len, size_t &nb, const std::string &w, index_t s, index_t e) const
void firstLyndonFactorMod(size_t &len, size_t &nb, const std::string &w, index_t s, index_t e) const
Aim: Describes an alphabet over an interval of (ascii) letters, where the lexicographic order can be ...
void selfDisplay(std::ostream &out) const
unsigned int order(char c) const
size_t nextEdge(size_t &nb_a1, size_t &nb_a2, std::string &w, index_t &s, bool &cvx)
OrderedAlphabet & operator=(const OrderedAlphabet &other)
bool duvalPPtoDSS(size_t &len, size_t &nb, unsigned int &n1, unsigned int &n2, unsigned int &Lf1, unsigned int &Lf2, const std::string &w, index_t s, index_t e) const