#include <MRCMesh/MRId.h>#include <MRCMesh/MRVector3.h>#include <MRCMisc/common.h>#include <MRCMisc/exports.h>#include <stdbool.h>#include <stddef.h>Go to the source code of this file.
| Typedefs | |
| typedef struct MR_VoxelBitSet | MR_VoxelBitSet | 
| typedef signed char | MR_OutEdge | 
| typedef struct MR_VoxelLocation | MR_VoxelLocation | 
| typedef struct MR_VolumeIndexer | MR_VolumeIndexer | 
| Generated from class MR::VolumeIndexer. | |
| Enumerations | |
| enum | { MR_OutEdge_Invalid = -1 , MR_OutEdge_PlusZ = 0 , MR_OutEdge_MinusZ = 1 , MR_OutEdge_PlusY = 2 , MR_OutEdge_MinusY = 3 , MR_OutEdge_PlusX = 4 , MR_OutEdge_MinusX = 5 , MR_OutEdge_Count = 6 } | 
| typedef signed char MR_OutEdge | 
| typedef struct MR_VolumeIndexer MR_VolumeIndexer | 
Generated from class MR::VolumeIndexer. 
| typedef struct MR_VoxelBitSet MR_VoxelBitSet | 
| typedef struct MR_VoxelLocation MR_VoxelLocation | 
contains both linear Id and 3D coordinates of the same voxel Generated from class MR::VoxelLocation. 
| anonymous enum | 
| MRC_API void MR_expandVoxelsMask | ( | MR_VoxelBitSet * | mask, | 
| const MR_VolumeIndexer * | indexer, | ||
| const int * | expansion ) | 
expands VoxelBitSet with given number of steps Generated from function MR::expandVoxelsMask. Parameter mask can not be null. It is a single object. Parameter indexer can not be null. It is a single object. Parameter expansion has a default argument: 1, pass a null pointer to use it. 
| MRC_API MR_OutEdge MR_opposite_MR_OutEdge | ( | MR_OutEdge | e | ) | 
Generated from function MR::opposite. 
| MRC_API void MR_shrinkVoxelsMask | ( | MR_VoxelBitSet * | mask, | 
| const MR_VolumeIndexer * | indexer, | ||
| const int * | shrinkage ) | 
shrinks VoxelBitSet with given number of steps Generated from function MR::shrinkVoxelsMask. Parameter mask can not be null. It is a single object. Parameter indexer can not be null. It is a single object. Parameter shrinkage has a default argument: 1, pass a null pointer to use it. 
| MRC_API bool MR_VolumeIndexer_areNeigbors_MR_Vector3i | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos0, | ||
| const MR_Vector3i * | pos1 ) | 
Generated from a method of class MR::VolumeIndexer named areNeigbors. Parameter _this can not be null. It is a single object. Parameter pos0 can not be null. It is a single object. Parameter pos1 can not be null. It is a single object. 
| MRC_API bool MR_VolumeIndexer_areNeigbors_MR_VoxelId | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | v0, | ||
| MR_VoxelId | v1 ) | 
returns true if v1 is within at most 6 neighbors of v0 Generated from a method of class MR::VolumeIndexer named areNeigbors. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VolumeIndexer * MR_VolumeIndexer_AssignFromAnother | ( | MR_VolumeIndexer * | _this, | 
| const MR_VolumeIndexer * | _other ) | 
Generated from a method of class MR::VolumeIndexer named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VolumeIndexer * MR_VolumeIndexer_Construct | ( | const MR_Vector3i * | dims | ) | 
Generated from a constructor of class MR::VolumeIndexer. Parameter dims can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VolumeIndexer_Destroy() to free it when you're done using it. 
| MRC_API MR_VolumeIndexer * MR_VolumeIndexer_ConstructFromAnother | ( | const MR_VolumeIndexer * | _other | ) | 
Generated from a constructor of class MR::VolumeIndexer. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VolumeIndexer_Destroy() to free it when you're done using it. 
| MRC_API void MR_VolumeIndexer_Destroy | ( | const MR_VolumeIndexer * | _this | ) | 
Destroys a heap-allocated instance of MR_VolumeIndexer. Does nothing if the pointer is null. 
| MRC_API void MR_VolumeIndexer_DestroyArray | ( | const MR_VolumeIndexer * | _this | ) | 
Destroys a heap-allocated array of MR_VolumeIndexer. Does nothing if the pointer is null. 
| MRC_API const MR_Vector3i * MR_VolumeIndexer_dims | ( | const MR_VolumeIndexer * | _this | ) | 
Generated from a method of class MR::VolumeIndexer named dims. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VoxelId MR_VolumeIndexer_endId | ( | const MR_VolumeIndexer * | _this | ) | 
returns the last plus one voxel Id for defining iteration range Generated from a method of class MR::VolumeIndexer named endId. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelId MR_VolumeIndexer_getExistingNeighbor | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | v, | ||
| MR_OutEdge | toNei ) | 
returns id of v's neighbor specified by the edge, which is known to exist (so skipping a lot of checks) Generated from a method of class MR::VolumeIndexer named getExistingNeighbor. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelId MR_VolumeIndexer_getNeighbor_2_MR_VoxelId | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | v, | ||
| MR_OutEdge | toNei ) | 
returns id of v's neighbor specified by the edge Generated from a method of class MR::VolumeIndexer named getNeighbor. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelLocation * MR_VolumeIndexer_getNeighbor_2_MR_VoxelLocation | ( | const MR_VolumeIndexer * | _this, | 
| const MR_VoxelLocation * | loc, | ||
| MR_OutEdge | toNei ) | 
given existing voxel at (loc), returns its neighbor specified by the edge (toNei); if the neighbour does not exist (loc is on boundary), returns invalid VoxelLocation Generated from a method of class MR::VolumeIndexer named getNeighbor. Parameter _this can not be null. It is a single object. Parameter loc can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API MR_VoxelId MR_VolumeIndexer_getNeighbor_3 | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | v, | ||
| const MR_Vector3i * | pos, | ||
| MR_OutEdge | toNei ) | 
Generated from a method of class MR::VolumeIndexer named getNeighbor. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API MR_VoxelId MR_VolumeIndexer_getNeighbor_4 | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | v, | ||
| const MR_Vector3i * | pos, | ||
| bool | bdPos, | ||
| MR_OutEdge | toNei ) | 
Generated from a method of class MR::VolumeIndexer named getNeighbor. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API bool MR_VolumeIndexer_hasNeighbour | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos, | ||
| MR_OutEdge | toNei ) | 
given existing voxel at (pos), returns whether it has valid neighbor specified by the edge (toNei) Generated from a method of class MR::VolumeIndexer named hasNeighbour. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API bool MR_VolumeIndexer_isBdVoxel | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos ) | 
returns true if this voxel is on the boundary of the volume Generated from a method of class MR::VolumeIndexer named isBdVoxel. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API bool MR_VolumeIndexer_isInDims | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos ) | 
returns true if this voxel is within dimensions Generated from a method of class MR::VolumeIndexer named isInDims. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API MR_VolumeIndexer * MR_VolumeIndexer_OffsetMutablePtr | ( | MR_VolumeIndexer * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_VolumeIndexer * MR_VolumeIndexer_OffsetPtr | ( | const MR_VolumeIndexer * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API MR_uint64_t MR_VolumeIndexer_size | ( | const MR_VolumeIndexer * | _this | ) | 
returns the total number of voxels Generated from a method of class MR::VolumeIndexer named size. Parameter _this can not be null. It is a single object. 
| MRC_API MR_uint64_t MR_VolumeIndexer_sizeXY | ( | const MR_VolumeIndexer * | _this | ) | 
Generated from a method of class MR::VolumeIndexer named sizeXY. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelLocation * MR_VolumeIndexer_toLoc_MR_Vector3i | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos ) | 
Generated from a method of class MR::VolumeIndexer named toLoc. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API MR_VoxelLocation * MR_VolumeIndexer_toLoc_MR_VoxelId | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | id ) | 
Generated from a method of class MR::VolumeIndexer named toLoc. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API MR_Vector3i MR_VolumeIndexer_toPos | ( | const MR_VolumeIndexer * | _this, | 
| MR_VoxelId | id ) | 
Generated from a method of class MR::VolumeIndexer named toPos. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelId MR_VolumeIndexer_toVoxelId | ( | const MR_VolumeIndexer * | _this, | 
| const MR_Vector3i * | pos ) | 
Generated from a method of class MR::VolumeIndexer named toVoxelId. Parameter _this can not be null. It is a single object. Parameter pos can not be null. It is a single object. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_AssignFromAnother | ( | MR_VoxelLocation * | _this, | 
| const MR_VoxelLocation * | _other ) | 
Generated from a method of class MR::VoxelLocation named operator=. Parameter _this can not be null. It is a single object. Parameter _other can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_ConstructFrom | ( | MR_VoxelId | id, | 
| MR_Vector3i | pos ) | 
Constructs MR::VoxelLocation elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_ConstructFromAnother | ( | const MR_VoxelLocation * | _other | ) | 
Generated from a constructor of class MR::VoxelLocation. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API bool MR_VoxelLocation_ConvertTo_bool | ( | const MR_VoxelLocation * | _this | ) | 
check for validity Generated from a conversion operator of class MR::VoxelLocation to type bool. Parameter _this can not be null. It is a single object. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_DefaultConstruct | ( | void | ) | 
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_VoxelLocation_Destroy() to free it when you're done using it. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_DefaultConstructArray | ( | size_t | num_elems | ) | 
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_VoxelLocation_DestroyArray(). Use MR_VoxelLocation_OffsetMutablePtr() and MR_VoxelLocation_OffsetPtr() to access the array elements. 
| MRC_API void MR_VoxelLocation_Destroy | ( | const MR_VoxelLocation * | _this | ) | 
Destroys a heap-allocated instance of MR_VoxelLocation. Does nothing if the pointer is null. 
| MRC_API void MR_VoxelLocation_DestroyArray | ( | const MR_VoxelLocation * | _this | ) | 
Destroys a heap-allocated array of MR_VoxelLocation. Does nothing if the pointer is null. 
| MRC_API const MR_VoxelId * MR_VoxelLocation_Get_id | ( | const MR_VoxelLocation * | _this | ) | 
Returns a pointer to a member variable of class MR::VoxelLocation named id. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API const MR_Vector3i * MR_VoxelLocation_Get_pos | ( | const MR_VoxelLocation * | _this | ) | 
Returns a pointer to a member variable of class MR::VoxelLocation named pos. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VoxelId * MR_VoxelLocation_GetMutable_id | ( | MR_VoxelLocation * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::VoxelLocation named id. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_Vector3i * MR_VoxelLocation_GetMutable_pos | ( | MR_VoxelLocation * | _this | ) | 
Returns a mutable pointer to a member variable of class MR::VoxelLocation named pos. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. 
| MRC_API MR_VoxelLocation * MR_VoxelLocation_OffsetMutablePtr | ( | MR_VoxelLocation * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API const MR_VoxelLocation * MR_VoxelLocation_OffsetPtr | ( | const MR_VoxelLocation * | ptr, | 
| ptrdiff_t | i ) | 
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. 
| MRC_API void MR_VoxelLocation_Set_id | ( | MR_VoxelLocation * | _this, | 
| MR_VoxelId | value ) | 
Modifies a member variable of class MR::VoxelLocation named id. Parameter _this can not be null. It is a single object. 
| MRC_API void MR_VoxelLocation_Set_pos | ( | MR_VoxelLocation * | _this, | 
| MR_Vector3i | value ) | 
Modifies a member variable of class MR::VoxelLocation named pos. Parameter _this can not be null. It is a single object.