MeshLib C Docs
Loading...
Searching...
No Matches
MRIteratorRange.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/exports.h>
4
5#include <stddef.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11typedef struct MR_ChunkIterator MR_ChunkIterator; // Defined in `#include <MRCMesh/MRChunkIterator.h>`.
12typedef struct MR_PolylineUndirectedEdgeIterator MR_PolylineUndirectedEdgeIterator; // Defined in `#include <MRCMesh/MRPolylineEdgeIterator.h>`.
13typedef struct MR_RingIterator_MR_NextEdgeSameLeft MR_RingIterator_MR_NextEdgeSameLeft; // Defined in `#include <MRCMesh/MRRingIterator.h>`.
14typedef struct MR_RingIterator_MR_NextEdgeSameOrigin MR_RingIterator_MR_NextEdgeSameOrigin; // Defined in `#include <MRCMesh/MRRingIterator.h>`.
15typedef struct MR_UndirectedEdgeIterator MR_UndirectedEdgeIterator; // Defined in `#include <MRCMesh/MREdgeIterator.h>`.
16
17
22
27
32
37
42
47
52
57
62
67
72
77
80
83
89
92
95
101
106
111
116
121
126
131
136
141
146
149
152
158
161
164
170
175
180
185
190
195
200
205
210
215
218
221
227
230
233
239
244
249
254
259
264
269
274
279
284
287
290
296
299
302
308
313
318
323
328
333
338
343
348
353
356
359
365
368
371
377
382
387
388#ifdef __cplusplus
389} // extern "C"
390#endif
struct MR_IteratorRange_MR_ChunkIterator MR_IteratorRange_MR_ChunkIterator
Definition MRChunkIterator.h:13
struct MR_ChunkIterator MR_ChunkIterator
Definition MRChunkIterator.h:24
struct MR_IteratorRange_MR_UndirectedEdgeIterator MR_IteratorRange_MR_UndirectedEdgeIterator
Definition MREdgeIterator.h:13
struct MR_UndirectedEdgeIterator MR_UndirectedEdgeIterator
Definition MREdgeIterator.h:20
MRC_API void MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Destroy(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
Destroys a heap-allocated instance of MR_IteratorRange_MR_PolylineUndirectedEdgeIterator....
MRC_API const MR_IteratorRange_MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_OffsetPtr(const MR_IteratorRange_MR_UndirectedEdgeIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Construct(const MR_RingIterator_MR_NextEdgeSameLeft *begin, const MR_RingIterator_MR_NextEdgeSameLeft *end)
MRC_API MR_IteratorRange_MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_AssignFromAnother(MR_IteratorRange_MR_UndirectedEdgeIterator *_this, const MR_IteratorRange_MR_UndirectedEdgeIterator *_other)
MRC_API MR_ChunkIterator * MR_begin_MR_IteratorRange_MR_ChunkIterator(const MR_IteratorRange_MR_ChunkIterator *range)
struct MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin
simple alternative to boost/iterator_range Generated from class MR::IteratorRange<MR::RingIterator<MR...
Definition MRIteratorRange.h:21
MRC_API void MR_IteratorRange_MR_UndirectedEdgeIterator_DestroyArray(const MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
Destroys a heap-allocated array of MR_IteratorRange_MR_UndirectedEdgeIterator. Does nothing if the po...
MRC_API MR_PolylineUndirectedEdgeIterator * MR_begin_MR_IteratorRange_MR_PolylineUndirectedEdgeIterator(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *range)
MRC_API MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_GetMutable_begin_(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
MRC_API void MR_IteratorRange_MR_ChunkIterator_Destroy(const MR_IteratorRange_MR_ChunkIterator *_this)
Destroys a heap-allocated instance of MR_IteratorRange_MR_ChunkIterator. Does nothing if the pointer ...
MRC_API const MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Get_end_(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
MRC_API MR_IteratorRange_MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_OffsetMutablePtr(MR_IteratorRange_MR_ChunkIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_GetMutable_end_(MR_IteratorRange_MR_ChunkIterator *_this)
MRC_API MR_IteratorRange_MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_OffsetMutablePtr(MR_IteratorRange_MR_UndirectedEdgeIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_IteratorRange_MR_PolylineUndirectedEdgeIterator MR_IteratorRange_MR_PolylineUndirectedEdgeIterator
simple alternative to boost/iterator_range Generated from class MR::IteratorRange<MR::PolylineUndirec...
Definition MRIteratorRange.h:31
MRC_API const MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Get_begin_(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
MRC_API MR_RingIterator_MR_NextEdgeSameLeft * MR_begin_MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *range)
struct MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft
simple alternative to boost/iterator_range Generated from class MR::IteratorRange<MR::RingIterator<MR...
Definition MRIteratorRange.h:26
MRC_API const MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_Get_begin_(const MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
MRC_API const MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_Get_end_(const MR_IteratorRange_MR_ChunkIterator *_this)
MRC_API void MR_IteratorRange_MR_ChunkIterator_DestroyArray(const MR_IteratorRange_MR_ChunkIterator *_this)
Destroys a heap-allocated array of MR_IteratorRange_MR_ChunkIterator. Does nothing if the pointer is ...
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_OffsetMutablePtr(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_IteratorRange_MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_Construct(const MR_ChunkIterator *begin, const MR_ChunkIterator *end)
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Set_end_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this, const MR_RingIterator_MR_NextEdgeSameOrigin *value)
MRC_API MR_RingIterator_MR_NextEdgeSameOrigin * MR_end_MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *range)
MRC_API MR_UndirectedEdgeIterator * MR_begin_MR_IteratorRange_MR_UndirectedEdgeIterator(const MR_IteratorRange_MR_UndirectedEdgeIterator *range)
MRC_API MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_GetMutable_end_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
MRC_API const MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_Get_end_(const MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
MRC_API void MR_IteratorRange_MR_UndirectedEdgeIterator_Set_end_(MR_IteratorRange_MR_UndirectedEdgeIterator *_this, const MR_UndirectedEdgeIterator *value)
MRC_API MR_PolylineUndirectedEdgeIterator * MR_end_MR_IteratorRange_MR_PolylineUndirectedEdgeIterator(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *range)
MRC_API void MR_IteratorRange_MR_ChunkIterator_Set_begin_(MR_IteratorRange_MR_ChunkIterator *_this, const MR_ChunkIterator *value)
MRC_API MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_GetMutable_end_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
MRC_API const MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Get_end_(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
MRC_API MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_GetMutable_begin_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
MRC_API MR_RingIterator_MR_NextEdgeSameOrigin * MR_begin_MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *range)
MRC_API const MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_Get_begin_(const MR_IteratorRange_MR_ChunkIterator *_this)
MRC_API MR_IteratorRange_MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_AssignFromAnother(MR_IteratorRange_MR_ChunkIterator *_this, const MR_IteratorRange_MR_ChunkIterator *_other)
MRC_API MR_IteratorRange_MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_ConstructFromAnother(const MR_IteratorRange_MR_UndirectedEdgeIterator *_other)
MRC_API MR_IteratorRange_MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_Construct(const MR_UndirectedEdgeIterator *begin, const MR_UndirectedEdgeIterator *end)
MRC_API const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_OffsetPtr(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_ConstructFromAnother(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_other)
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Construct(const MR_RingIterator_MR_NextEdgeSameOrigin *begin, const MR_RingIterator_MR_NextEdgeSameOrigin *end)
MRC_API MR_ChunkIterator * MR_end_MR_IteratorRange_MR_ChunkIterator(const MR_IteratorRange_MR_ChunkIterator *range)
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Destroy(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
Destroys a heap-allocated instance of MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft....
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_DestroyArray(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
Destroys a heap-allocated array of MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin....
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_DestroyArray(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
Destroys a heap-allocated array of MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft....
struct MR_RingIterator_MR_NextEdgeSameOrigin MR_RingIterator_MR_NextEdgeSameOrigin
Definition MRIteratorRange.h:14
MRC_API const MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Get_end_(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
MRC_API MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_GetMutable_begin_(MR_IteratorRange_MR_ChunkIterator *_this)
MRC_API void MR_IteratorRange_MR_ChunkIterator_Set_end_(MR_IteratorRange_MR_ChunkIterator *_this, const MR_ChunkIterator *value)
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Set_begin_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this, const MR_RingIterator_MR_NextEdgeSameOrigin *value)
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_AssignFromAnother(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this, const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_other)
MRC_API void MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Set_end_(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this, const MR_PolylineUndirectedEdgeIterator *value)
MRC_API void MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Set_begin_(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this, const MR_PolylineUndirectedEdgeIterator *value)
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Set_end_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this, const MR_RingIterator_MR_NextEdgeSameLeft *value)
MRC_API MR_RingIterator_MR_NextEdgeSameLeft * MR_end_MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *range)
MRC_API MR_IteratorRange_MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Construct(const MR_PolylineUndirectedEdgeIterator *begin, const MR_PolylineUndirectedEdgeIterator *end)
MRC_API MR_IteratorRange_MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_AssignFromAnother(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this, const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_other)
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_Destroy(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
Destroys a heap-allocated instance of MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin....
MRC_API MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_GetMutable_end_(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
MRC_API MR_IteratorRange_MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_OffsetMutablePtr(MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API void MR_IteratorRange_MR_UndirectedEdgeIterator_Destroy(const MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
Destroys a heap-allocated instance of MR_IteratorRange_MR_UndirectedEdgeIterator. Does nothing if the...
MRC_API const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_OffsetPtr(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_IteratorRange_MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_ConstructFromAnother(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_other)
MRC_API const MR_IteratorRange_MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_OffsetPtr(const MR_IteratorRange_MR_ChunkIterator *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
struct MR_RingIterator_MR_NextEdgeSameLeft MR_RingIterator_MR_NextEdgeSameLeft
Definition MRIteratorRange.h:13
MRC_API void MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Set_begin_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this, const MR_RingIterator_MR_NextEdgeSameLeft *value)
MRC_API void MR_IteratorRange_MR_UndirectedEdgeIterator_Set_begin_(MR_IteratorRange_MR_UndirectedEdgeIterator *_this, const MR_UndirectedEdgeIterator *value)
MRC_API MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_GetMutable_begin_(MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
MRC_API const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_OffsetPtr(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_UndirectedEdgeIterator * MR_end_MR_IteratorRange_MR_UndirectedEdgeIterator(const MR_IteratorRange_MR_UndirectedEdgeIterator *range)
struct MR_PolylineUndirectedEdgeIterator MR_PolylineUndirectedEdgeIterator
Definition MRIteratorRange.h:12
MRC_API MR_UndirectedEdgeIterator * MR_IteratorRange_MR_UndirectedEdgeIterator_GetMutable_end_(MR_IteratorRange_MR_UndirectedEdgeIterator *_this)
MRC_API MR_IteratorRange_MR_ChunkIterator * MR_IteratorRange_MR_ChunkIterator_ConstructFromAnother(const MR_IteratorRange_MR_ChunkIterator *_other)
MRC_API const MR_PolylineUndirectedEdgeIterator * MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_Get_begin_(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
MRC_API void MR_IteratorRange_MR_PolylineUndirectedEdgeIterator_DestroyArray(const MR_IteratorRange_MR_PolylineUndirectedEdgeIterator *_this)
Destroys a heap-allocated array of MR_IteratorRange_MR_PolylineUndirectedEdgeIterator....
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_ConstructFromAnother(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_other)
MRC_API MR_RingIterator_MR_NextEdgeSameOrigin * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin_GetMutable_begin_(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameOrigin *_this)
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_OffsetMutablePtr(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_AssignFromAnother(MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this, const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_other)
MRC_API const MR_RingIterator_MR_NextEdgeSameLeft * MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft_Get_begin_(const MR_IteratorRange_MR_RingIterator_MR_NextEdgeSameLeft *_this)
#define MRC_API
Definition exports.h:11