|
|
using | ConstPermutationView |
|
using | ConstViewType = SortedSegmentsView< typename EmbeddedSegments::ConstViewType > |
| | Type of constant segments view.
|
|
using | DeviceType |
| | The device where the segments are operating.
|
|
using | EmbeddedSegmentsConstView |
|
using | EmbeddedSegmentsType = EmbeddedSegments |
|
using | EmbeddedSegmentsView |
|
using | IndexAllocatorType = IndexAllocator |
|
using | IndexType |
| | The type used for indexing of segments elements.
|
|
using | PermutationContainer = Containers::Vector< IndexType, DeviceType, IndexType, IndexAllocatorType > |
| | Type of container storing offsets of particular segments.
|
|
using | PermutationView |
| template<typename Device_ = DeviceType, typename Index_ = IndexType> |
| using | ViewTemplate = SortedSegmentsView< typename EmbeddedSegments::template ViewTemplate< Device_, Index_ > > |
| | Templated view type.
|
|
using | ViewType = SortedSegmentsView< typename EmbeddedSegments::ViewType > |
| | Type of segments view.
|
|
using | ConstPermutationView |
|
using | DeviceType |
| | The device where the segments are operating.
|
|
using | EmbeddedSegmentsConstView |
|
using | EmbeddedSegmentsView |
|
using | IndexType |
| | The type used for indexing of segments elements.
|
|
using | PermutationView |
|
using | SegmentViewType |
| | Accessor type for one particular segment.
|
|
|
| SortedSegments () |
| | Constructor with no parameters to create empty segments.
|
| template<typename SizesContainer, std::enable_if_t< IsArrayType< SizesContainer >::value, bool > = true> |
| | SortedSegments (const SizesContainer &segmentsSizes) |
| | Constructor that initializes segments based on their sizes.
|
|
| SortedSegments (const SortedSegments &segments) |
| | Copy constructor (makes deep copy).
|
| template<typename ListIndex> |
| | SortedSegments (const std::initializer_list< ListIndex > &segmentsSizes) |
| | Constructor that initializes segments using an initializer list.
|
|
| SortedSegments (SortedSegments &&) noexcept=default |
| | Move constructor.
|
|
ConstViewType | getConstView () const |
| | Returns a constant view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
|
const EmbeddedSegments & | getEmbeddedSegments () const |
| | Returns a reference on embedded segments.
|
|
const PermutationContainer & | getInverseSegmentsPermutation () const |
| | Returns a reference on inverse segments permutation.
|
|
const PermutationContainer & | getSegmentsPermutation () const |
| | Returns a reference on segments permutation.
|
|
ViewType | getView () |
| | Returns a view for this instance of segments which can by used for example in lambda functions running in GPU kernels.
|
| void | load (File &file) |
| | Method for loading the segments from a file in a binary form.
|
|
SortedSegments & | operator= (const SortedSegments &segments) |
| | Copy-assignment operator (makes a deep copy).
|
|
template<typename EmbeddedSegments_, typename IndexAllocator_> |
| SortedSegments & | operator= (const SortedSegments< EmbeddedSegments_, IndexAllocator_ > &segments) noexcept(false) |
| | Copy-assignment operator for segments with different template parameters.
|
|
SortedSegments & | operator= (SortedSegments &&) noexcept(false) |
| | Move-assignment operator.
|
|
template<typename EmbeddedSegments_, typename IndexAllocator_> |
| SortedSegments & | operator= (SortedSegments< EmbeddedSegments_, IndexAllocator_ > &&segments) noexcept(false) |
| | Move-assignment operator for segments with different template parameters.
|
|
void | reset () |
| | Reset the segments to empty states (it means that there is no segment in the segments).
|
| void | save (File &file) const |
| | Method for saving the segments to a file in a binary form.
|
| template<typename SizesContainer> |
| void | setSegmentsSizes (const SizesContainer &segmentsSizes) |
| | Set sizes of particular segments.
|
|
__cuda_callable__ | SortedSegmentsBase ()=default |
| | Default constructor with no parameters to create empty segments view.
|
|
__cuda_callable__ IndexType | getElementCount () const |
| | Returns the number of elements managed by all segments.
|
|
__cuda_callable__ EmbeddedSegmentsConstView | getEmbeddedSegmentsView () const |
| __cuda_callable__ IndexType | getGlobalIndex (IndexType segmentIdx, IndexType localIdx) const |
| | Computes the global index of an element managed by the segments.
|
|
__cuda_callable__ PermutationView | getInverseSegmentsPermutationView () |
| | Returns a modifiable vector view with inverse segments permutation.
|
|
__cuda_callable__ IndexType | getSegmentCount () const |
| | Returns the number of segments.
|
|
__cuda_callable__ IndexType | getSegmentsCount () const |
| | Returns the number of segments. Deprecated, use getSegmentCount().
|
|
__cuda_callable__ IndexType | getSegmentSize (IndexType segmentIdx) const |
| | Returns the size of a particular segment denoted by segmentIdx.
|
|
__cuda_callable__ PermutationView | getSegmentsPermutationView () |
| | Returns a modifiable vector view with segments permutation.
|
| __cuda_callable__ SegmentViewType | getSegmentView (IndexType segmentIdx) const |
| | Returns a segment view (i.e., a segment accessor) for the specified segment index.
|
|
__cuda_callable__ IndexType | getSigma () const |
| | Gets the value of sigma.
|
|
__cuda_callable__ IndexType | getSize () const |
| | Returns the number of elements managed by all segments.
|
|
__cuda_callable__ IndexType | getStorageSize () const |
| | Returns number of elements that needs to be allocated by a container connected to this segments.
|
|
SortedSegmentsBase & | operator= (const SortedSegmentsBase &)=delete |
| | Copy-assignment operator.
|
|
__cuda_callable__ void | setSigma (IndexType value) |
| | Sets the value of sigma.
|
template<typename EmbeddedSegments, typename IndexAllocator = typename EmbeddedSegments::IndexAllocatorType>
class TNL::Algorithms::Segments::SortedSegments< EmbeddedSegments, IndexAllocator >
Data structure for sorted segments.
See TNL::Algorithms::Segments for more details about segments.
- Template Parameters
-
| EmbeddedSegments | The type of embedded segments. |
| IndexAllocator | The allocator used for managing index containers. |