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
21
25
29
33
37
42
47
52
57
62
67
72
75
78
84
87
90
96
101
106
111
116
121
126
131
136
141
144
147
153
156
159
165
170
175
180
185
190
195
200
205
210
213
216
222
225
228
234
239
244
249
254
259
264
269
274
279
282
285
291
294
297
303
308
313
318
323
328
333
338
343
348
351
354
360
363
366
372
377
382
383#ifdef __cplusplus
384} // extern "C"
385#endif
struct MR_IteratorRange_MR_ChunkIterator MR_IteratorRange_MR_ChunkIterator
Definition MRChunkIterator.h:13
struct MR_ChunkIterator MR_ChunkIterator
Definition MRChunkIterator.h:22
struct MR_IteratorRange_MR_UndirectedEdgeIterator MR_IteratorRange_MR_UndirectedEdgeIterator
Definition MREdgeIterator.h:13
struct MR_UndirectedEdgeIterator MR_UndirectedEdgeIterator
Generated from class MR::UndirectedEdgeIterator.
Definition MREdgeIterator.h:19
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:28
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:36
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:32
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