Template Numerical Library version\ main:bb09b17
Loading...
Searching...
No Matches
TNL::Algorithms::Segments::SlicedEllpack< Device, Index, IndexAllocator, Organization, SliceSize > Class Template Reference
Inheritance diagram for TNL::Algorithms::Segments::SlicedEllpack< Device, Index, IndexAllocator, Organization, SliceSize >:
Collaboration diagram for TNL::Algorithms::Segments::SlicedEllpack< Device, Index, IndexAllocator, Organization, SliceSize >:

Public Types

using ConstViewType = SlicedEllpackView< Device, std::add_const_t< Index >, Organization, SliceSize >
 
using OffsetsContainer = Containers::Vector< Index, Device, typename Base::IndexType, IndexAllocator >
 
template<typename Device_ , typename Index_ >
using ViewTemplate = SlicedEllpackView< Device_, Index_, Organization, SliceSize >
 
using ViewType = SlicedEllpackView< Device, Index, Organization, SliceSize >
 
- Public Types inherited from TNL::Algorithms::Segments::SlicedEllpackBase< Device, Index, Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization(), 32 >
using ConstOffsetsView
 
using DeviceType
 
using IndexType
 
using OffsetsView
 
using SegmentViewType
 

Public Member Functions

template<typename SizesContainer >
 SlicedEllpack (const SizesContainer &segmentsSizes)
 
 SlicedEllpack (const SlicedEllpack &)
 
template<typename ListIndex >
 SlicedEllpack (const std::initializer_list< ListIndex > &segmentsSizes)
 
 SlicedEllpack (SlicedEllpack &&) noexcept=default
 
ConstViewType getConstView () const
 
ViewType getView ()
 
void load (File &file)
 
SlicedEllpackoperator= (const SlicedEllpack &segments)
 Copy-assignment operator (makes a deep copy).
 
template<typename Device_ , typename Index_ , typename IndexAllocator_ , ElementsOrganization Organization_>
SlicedEllpackoperator= (const SlicedEllpack< Device_, Index_, IndexAllocator_, Organization_, SliceSize > &segments)
 
template<typename Device_ , typename Index_ , typename IndexAllocator_ , ElementsOrganization Organization_>
SlicedEllpack< Device, Index, IndexAllocator, Organization, SliceSize > & operator= (const SlicedEllpack< Device_, Index_, IndexAllocator_, Organization_, SliceSize > &segments)
 
SlicedEllpackoperator= (SlicedEllpack &&) noexcept(false)
 Move-assignment operator.
 
void reset ()
 
void save (File &file) const
 
template<typename SizesHolder = OffsetsContainer>
void setSegmentsSizes (const SizesHolder &sizes)
 Set sizes of particular segments.
 
- Public Member Functions inherited from TNL::Algorithms::Segments::SlicedEllpackBase< Device, Index, Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization(), 32 >
__cuda_callable__ SlicedEllpackBase (const SlicedEllpackBase &)=default
 
__cuda_callable__ SlicedEllpackBase (IndexType size, IndexType storageSize, IndexType segmentsCount, OffsetsView &&sliceOffsets, OffsetsView &&sliceSegmentSizes)
 
__cuda_callable__ SlicedEllpackBase (SlicedEllpackBase &&) noexcept=default
 
void forAllElements (Function &&function) const
 
void forAllSegments (Function &&function) const
 
void forElements (IndexType begin, IndexType end, Function &&function) const
 
void forSegments (IndexType begin, IndexType end, Function &&function) const
 
__cuda_callable__ IndexType getGlobalIndex (Index segmentIdx, Index localIdx) const
 
__cuda_callable__ IndexType getSegmentsCount () const
 
__cuda_callable__ IndexType getSegmentSize (IndexType segmentIdx) const
 
__cuda_callable__ SegmentViewType getSegmentView (IndexType segmentIdx) const
 
__cuda_callable__ IndexType getSize () const
 
__cuda_callable__ OffsetsView getSliceOffsetsView ()
 
__cuda_callable__ ConstOffsetsView getSliceOffsetsView () const
 
__cuda_callable__ OffsetsView getSliceSegmentSizesView ()
 
__cuda_callable__ ConstOffsetsView getSliceSegmentSizesView () const
 
__cuda_callable__ IndexType getStorageSize () const
 
SlicedEllpackBaseoperator= (const SlicedEllpackBase &)=delete
 
SlicedEllpackBaseoperator= (SlicedEllpackBase &&)=delete
 

Protected Attributes

OffsetsContainer sliceOffsets
 
OffsetsContainer sliceSegmentSizes
 
- Protected Attributes inherited from TNL::Algorithms::Segments::SlicedEllpackBase< Device, Index, Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization(), 32 >
IndexType segmentsCount
 
IndexType size
 
OffsetsView sliceOffsets
 
OffsetsView sliceSegmentSizes
 
IndexType storageSize
 

Additional Inherited Members

- Static Public Member Functions inherited from TNL::Algorithms::Segments::SlicedEllpackBase< Device, Index, Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization(), 32 >
static constexpr ElementsOrganization getOrganization ()
 
static std::string getSegmentsType ()
 
static std::string getSerializationType ()
 
static constexpr int getSliceSize ()
 
static constexpr bool havePadding ()
 
- Protected Member Functions inherited from TNL::Algorithms::Segments::SlicedEllpackBase< Device, Index, Algorithms::Segments::DefaultElementsOrganization< Device >::getOrganization(), 32 >
__cuda_callable__ void bind (IndexType size, IndexType storageSize, IndexType segmentsCount, OffsetsView sliceOffsets, OffsetsView sliceSegmentSizes)
 Re-initializes the internal attributes of the base class.
 

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