#include <DGtal/kernel/UnorderedSetByBlock.h>
template<typename TElement, typename TWord = uint32_t>
struct DGtal::Splitter< TElement, TWord >
Splits an integral-array element into an integral-array element and a 32 or 64 bit integer (depending on TWord). The expected behaviour is for an element e of dimension 3 (and 32 bits word):
v.first == 117 & 31
v.second ==
Point( 117 - v.first, 43, 52 );
static std::pair< Element, Coordinate > split(Element e)
Splitter< Point,uint64_t >
split;
v.first == 117 & 63
v.second ==
Point( 117 - v.first, 43, 52 );
- Template Parameters
-
- See also
- UnorderedSetByBlock
Definition at line 67 of file UnorderedSetByBlock.h.
◆ Coordinate
template<typename TElement , typename TWord = uint32_t>
◆ Element
template<typename TElement , typename TWord = uint32_t>
◆ Self
template<typename TElement , typename TWord = uint32_t>
◆ Word
template<typename TElement , typename TWord = uint32_t>
◆ BOOST_CONCEPT_ASSERT() [1/2]
template<typename TElement , typename TWord = uint32_t>
◆ BOOST_CONCEPT_ASSERT() [2/2]
template<typename TElement , typename TWord = uint32_t>
◆ join() [1/2]
template<typename TElement , typename TWord = uint32_t>
Rejoins a splitted element (see split).
- Parameters
-
p | a pair grouping the block coordinate and the bit coordinate of the element. |
- Returns
- the corresponding rejoined element.
Definition at line 115 of file UnorderedSetByBlock.h.
◆ join() [2/2]
template<typename TElement , typename TWord = uint32_t>
Rejoins a splitted element (see split).
- Parameters
-
e | the block coordinate of the element. |
x | the bit coordinate of the element. |
- Returns
- the corresponding rejoined element.
Definition at line 101 of file UnorderedSetByBlock.h.
◆ split()
template<typename TElement , typename TWord = uint32_t>
Splits an element e into a pair grouping its block coordinates and its bit within this block.
- Parameters
-
- Returns
- a pair grouping its block coordinates and its bit within this block.
Definition at line 85 of file UnorderedSetByBlock.h.
88 ( e[ 0 ] &
static_cast<Coordinate>(
sizeof(
Word ) * CHAR_BIT - 1 ) );
89 e[ 0 ] -= block_coords;
90 return { e, block_coords };
Element::Coordinate Coordinate
The documentation for this struct was generated from the following file: