MeshLib C Docs
Loading...
Searching...
No Matches
MRChunkIterator.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/common.h>
4#include <MRCMisc/exports.h>
5
6#include <stdbool.h>
7#include <stddef.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_IteratorRange_MR_ChunkIterator MR_IteratorRange_MR_ChunkIterator; // Defined in `#include <MRCMesh/MRIteratorRange.h>`.
14
15
19typedef struct MR_Chunk MR_Chunk;
20
25
32
39
46
53
60
67
71
76
83
86MRC_API const MR_Chunk *MR_Chunk_OffsetPtr(const MR_Chunk *ptr, ptrdiff_t i);
87
91
97
100
103
111
117
123
129
135
141
147
153
159
165
171
177
183
187
192
201
205
209
215
218
221
229
234
239
244
250
255
260
266
267#ifdef __cplusplus
268} // extern "C"
269#endif
MRC_API MR_uint64_t * MR_ChunkIterator_GetMutable_overlap(MR_ChunkIterator *_this)
MRC_API MR_uint64_t * MR_ChunkIterator_GetMutable_index(MR_ChunkIterator *_this)
MRC_API MR_ChunkIterator * MR_ChunkIterator_DefaultConstructArray(size_t num_elems)
MRC_API MR_Chunk * MR_Chunk_ConstructFromAnother(const MR_Chunk *_other)
MRC_API const MR_uint64_t * MR_ChunkIterator_Get_chunkSize(const MR_ChunkIterator *_this)
MRC_API MR_uint64_t MR_chunkCount(MR_uint64_t totalSize, MR_uint64_t chunkSize, const MR_uint64_t *overlap)
MRC_API void MR_Chunk_DestroyArray(const MR_Chunk *_this)
Destroys a heap-allocated array of MR_Chunk. Does nothing if the pointer is null.
MRC_API void MR_ChunkIterator_DestroyArray(const MR_ChunkIterator *_this)
Destroys a heap-allocated array of MR_ChunkIterator. Does nothing if the pointer is null.
MRC_API void MR_ChunkIterator_Set_totalSize(MR_ChunkIterator *_this, MR_uint64_t value)
MRC_API MR_ChunkIterator * MR_post_incr_MR_ChunkIterator(MR_ChunkIterator *_this)
MRC_API const MR_uint64_t * MR_Chunk_Get_size(const MR_Chunk *_this)
MRC_API MR_uint64_t * MR_ChunkIterator_GetMutable_chunkSize(MR_ChunkIterator *_this)
MRC_API MR_uint64_t * MR_ChunkIterator_GetMutable_totalSize(MR_ChunkIterator *_this)
MRC_API MR_Chunk * MR_ChunkIterator_arrow(const MR_ChunkIterator *_this)
MRC_API const MR_uint64_t * MR_ChunkIterator_Get_index(const MR_ChunkIterator *_this)
MRC_API MR_Chunk * MR_Chunk_DefaultConstructArray(size_t num_elems)
struct MR_IteratorRange_MR_ChunkIterator MR_IteratorRange_MR_ChunkIterator
simple alternative to boost/iterator_range Generated from class MR::IteratorRange<MR::ChunkIterator>....
Definition MRChunkIterator.h:13
MRC_API void MR_ChunkIterator_Set_index(MR_ChunkIterator *_this, MR_uint64_t value)
MRC_API bool MR_equal_MR_ChunkIterator(const MR_ChunkIterator *_this, const MR_ChunkIterator *other)
MRC_API const MR_Chunk * MR_Chunk_OffsetPtr(const MR_Chunk *ptr, ptrdiff_t i)
MRC_API const MR_uint64_t * MR_ChunkIterator_Get_overlap(const MR_ChunkIterator *_this)
MRC_API void MR_ChunkIterator_Set_chunkSize(MR_ChunkIterator *_this, MR_uint64_t value)
MRC_API MR_uint64_t * MR_Chunk_GetMutable_size(MR_Chunk *_this)
MRC_API MR_IteratorRange_MR_ChunkIterator * MR_splitByChunks(MR_uint64_t totalSize, MR_uint64_t chunkSize, const MR_uint64_t *overlap)
MRC_API void MR_Chunk_Set_offset(MR_Chunk *_this, MR_uint64_t value)
MRC_API MR_Chunk * MR_Chunk_AssignFromAnother(MR_Chunk *_this, const MR_Chunk *_other)
MRC_API void MR_Chunk_Set_size(MR_Chunk *_this, MR_uint64_t value)
MRC_API MR_Chunk * MR_Chunk_OffsetMutablePtr(MR_Chunk *ptr, ptrdiff_t i)
MRC_API MR_ChunkIterator * MR_ChunkIterator_DefaultConstruct(void)
struct MR_Chunk MR_Chunk
Definition MRChunkIterator.h:19
MRC_API const MR_ChunkIterator * MR_ChunkIterator_OffsetPtr(const MR_ChunkIterator *ptr, ptrdiff_t i)
MRC_API MR_Chunk * MR_Chunk_DefaultConstruct(void)
MRC_API MR_ChunkIterator * MR_ChunkIterator_AssignFromAnother(MR_ChunkIterator *_this, const MR_ChunkIterator *_other)
MRC_API MR_Chunk * MR_Chunk_ConstructFrom(MR_uint64_t offset, MR_uint64_t size)
MRC_API void MR_ChunkIterator_Destroy(const MR_ChunkIterator *_this)
Destroys a heap-allocated instance of MR_ChunkIterator. Does nothing if the pointer is null.
MRC_API MR_ChunkIterator * MR_ChunkIterator_ConstructFromAnother(const MR_ChunkIterator *_other)
MRC_API const MR_uint64_t * MR_Chunk_Get_offset(const MR_Chunk *_this)
MRC_API void MR_ChunkIterator_Set_overlap(MR_ChunkIterator *_this, MR_uint64_t value)
MRC_API void MR_Chunk_Destroy(const MR_Chunk *_this)
Destroys a heap-allocated instance of MR_Chunk. Does nothing if the pointer is null.
MRC_API MR_ChunkIterator * MR_incr_MR_ChunkIterator(MR_ChunkIterator *_this)
struct MR_ChunkIterator MR_ChunkIterator
Definition MRChunkIterator.h:24
MRC_API MR_uint64_t * MR_Chunk_GetMutable_offset(MR_Chunk *_this)
MRC_API const MR_uint64_t * MR_ChunkIterator_Get_totalSize(const MR_ChunkIterator *_this)
MRC_API MR_ChunkIterator * MR_ChunkIterator_OffsetMutablePtr(MR_ChunkIterator *ptr, ptrdiff_t i)
MRC_API MR_Chunk * MR_deref_MR_ChunkIterator(const MR_ChunkIterator *_this)
MRC_API MR_ChunkIterator * MR_ChunkIterator_ConstructFrom(MR_uint64_t totalSize, MR_uint64_t chunkSize, MR_uint64_t overlap, MR_uint64_t index)
uint64_t MR_uint64_t
Definition common.h:18
#define MRC_API
Definition include/MRCMisc/exports.h:11