DGtal 1.3.0
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory > Class Template Reference

Public Member Functions

 CodeHandler ()
 
void init (const TIterator &it)
 
Code getCode (Index n) const
 
Code getCode (Index n)
 

Private Attributes

std::vector< CodemyPosCodes
 
std::vector< CodemyNegCodes
 
TIterator myFirst
 
TIterator myLast
 

Detailed Description

template<typename TConstIterator, typename TInteger>
template<class TIterator>
class DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >

Partial specialization template in the case where the iterator is of category bidirectional

Definition at line 163 of file OneBalancedWordComputer.h.

Constructor & Destructor Documentation

◆ CodeHandler()

template<typename TConstIterator , typename TInteger >
template<class TIterator >
DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::CodeHandler ( )
inline

Definition at line 166 of file OneBalancedWordComputer.h.

167 {
168 }

Member Function Documentation

◆ getCode() [1/2]

template<typename TConstIterator , typename TInteger >
template<class TIterator >
Code DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::getCode ( Index  n)
inline

Definition at line 180 of file OneBalancedWordComputer.h.

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 }
IteratorCirculatorTraits< ConstIterator >::Value Code

◆ getCode() [2/2]

template<typename TConstIterator , typename TInteger >
template<class TIterator >
Code DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::getCode ( Index  n) const
inline

Definition at line 175 of file OneBalancedWordComputer.h.

176 {
177 return ( n >= 0 ) ? myPosCodes[ n ] : myNegCodes[ 1-n ];
178 }

◆ init()

template<typename TConstIterator , typename TInteger >
template<class TIterator >
void DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::init ( const TIterator &  it)
inline

Definition at line 169 of file OneBalancedWordComputer.h.

170 {
171 myFirst = it;
172 myLast = it;
173 }

Field Documentation

◆ myFirst

template<typename TConstIterator , typename TInteger >
template<class TIterator >
TIterator DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::myFirst
private

Definition at line 209 of file OneBalancedWordComputer.h.

◆ myLast

template<typename TConstIterator , typename TInteger >
template<class TIterator >
TIterator DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::myLast
private

Definition at line 210 of file OneBalancedWordComputer.h.

◆ myNegCodes

template<typename TConstIterator , typename TInteger >
template<class TIterator >
std::vector<Code> DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::myNegCodes
private

Definition at line 208 of file OneBalancedWordComputer.h.

◆ myPosCodes

template<typename TConstIterator , typename TInteger >
template<class TIterator >
std::vector<Code> DGtal::OneBalancedWordComputer< TConstIterator, TInteger >::CodeHandler< TIterator, BidirectionalCategory >::myPosCodes
private

Definition at line 207 of file OneBalancedWordComputer.h.


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