#define MRMESH_API
Definition MRMesh/MRMeshFwd.h:79
MRMESH_API IteratorRange< ChunkIterator > splitByChunks(size_t totalSize, size_t chunkSize, size_t overlap=0)
returns a pair of iterators for chunks covering the array of given size
MRMESH_API size_t chunkCount(size_t totalSize, size_t chunkSize, size_t overlap=0)
returns the amount of chunks of given size required to cover the full array
iterator class for array chunks
Definition MRChunkIterator.h:22
Chunk operator->() const
Definition MRChunkIterator.h:40
MRMESH_API ChunkIterator & operator++()
std::input_iterator_tag iterator_category
Definition MRChunkIterator.h:30
size_t index
Definition MRChunkIterator.h:26
MRMESH_API bool operator==(const ChunkIterator &other) const
MRMESH_API Chunk operator*() const
std::ptrdiff_t difference_type
Definition MRChunkIterator.h:32
size_t totalSize
Definition MRChunkIterator.h:23
size_t overlap
Definition MRChunkIterator.h:25
size_t chunkSize
Definition MRChunkIterator.h:24
array chunk representation
Definition MRChunkIterator.h:13
size_t offset
chunk offset
Definition MRChunkIterator.h:15
size_t size
chunk size; the last chunk's size may be smaller than other chunk's ones
Definition MRChunkIterator.h:17
Definition MRMesh/MRMeshFwd.h:430