template<typename TData, unsigned int L, typename TWord, unsigned int N, unsigned int M>
struct DGtal::LabelledMap< TData, L, TWord, N, M >::__FirstBlock
Represents the first block in the container. Internal structure.
Definition at line 179 of file LabelledMap.h.
template<typename TData, unsigned int L, typename TWord, unsigned int N, unsigned int M>
Definition at line 185 of file LabelledMap.h.
References DGtal::LabelledMap< TData, L, TWord, N, M >::__AnyBlock::datas.
187 ASSERT( idx <= size );
191 return (
datas[ idx ] = v );
193 else if ( size == N )
197 data.lastData =
datas[ N - 1 ];
199 return (
datas[ idx ] = v );
203 return ( data.lastData = v );
206 else if ( size == (N+1) )
210 __AnyBlock* next =
new __AnyBlock;
213 next->datas[ 0 ] =
datas[ N - 1 ];
214 next->datas[ 1 ] = data.lastData;
216 data.nextBlock = next;
217 return (
datas[ idx ] = v );
221 next->datas[ 1 ] = data.lastData;
222 data.nextBlock = next;
223 return ( next->datas[ 0 ] = v );
227 next->datas[ 0 ] = data.lastData;
228 data.nextBlock = next;
229 return ( next->datas[ 1 ] = v );
238 data.nextBlock->insert( 0, size - N, v1 );
239 return (
datas[ idx ] = v );
242 return data.nextBlock->insert( idx - N, size - N, v );