MeshLib C Docs
Loading...
Searching...
No Matches
MRScanHelpers.h File Reference
#include <MRCMesh/MRVector3.h>
#include <MRCMisc/exports.h>
#include <stddef.h>
#include <stdint.h>

Go to the source code of this file.

Typedefs

typedef struct MR_std_vector_MR_SliceInfo MR_std_vector_MR_SliceInfo
 
typedef struct MR_std_vector_std_filesystem_path MR_std_vector_std_filesystem_path
 
typedef struct MR_SliceInfoBase MR_SliceInfoBase
 
typedef struct MR_SliceInfo MR_SliceInfo
 

Functions

MRC_API const int32_t * MR_SliceInfoBase_Get_instanceNum (const MR_SliceInfoBase *_this)
 
MRC_API void MR_SliceInfoBase_Set_instanceNum (MR_SliceInfoBase *_this, int32_t value)
 
MRC_API int32_t * MR_SliceInfoBase_GetMutable_instanceNum (MR_SliceInfoBase *_this)
 
MRC_API const double * MR_SliceInfoBase_Get_z (const MR_SliceInfoBase *_this)
 
MRC_API void MR_SliceInfoBase_Set_z (MR_SliceInfoBase *_this, double value)
 
MRC_API double * MR_SliceInfoBase_GetMutable_z (MR_SliceInfoBase *_this)
 
MRC_API const int32_t * MR_SliceInfoBase_Get_fileNum (const MR_SliceInfoBase *_this)
 
MRC_API void MR_SliceInfoBase_Set_fileNum (MR_SliceInfoBase *_this, int32_t value)
 
MRC_API int32_t * MR_SliceInfoBase_GetMutable_fileNum (MR_SliceInfoBase *_this)
 
MRC_API MR_SliceInfoBaseMR_SliceInfoBase_DefaultConstruct (void)
 
MRC_API MR_SliceInfoBaseMR_SliceInfoBase_DefaultConstructArray (size_t num_elems)
 
MRC_API MR_SliceInfoBaseMR_SliceInfoBase_ConstructFrom (int32_t instanceNum, double z, int32_t fileNum)
 
MRC_API const MR_SliceInfoBaseMR_SliceInfoBase_OffsetPtr (const MR_SliceInfoBase *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_SliceInfoBaseMR_SliceInfoBase_OffsetMutablePtr (MR_SliceInfoBase *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_SliceInfoMR_SliceInfoBase_StaticDowncastTo_MR_SliceInfo (const MR_SliceInfoBase *object)
 
MRC_API MR_SliceInfoMR_SliceInfoBase_MutableStaticDowncastTo_MR_SliceInfo (MR_SliceInfoBase *object)
 
MRC_API MR_SliceInfoBaseMR_SliceInfoBase_ConstructFromAnother (const MR_SliceInfoBase *_other)
 
MRC_API void MR_SliceInfoBase_Destroy (const MR_SliceInfoBase *_this)
 Destroys a heap-allocated instance of MR_SliceInfoBase. Does nothing if the pointer is null.
 
MRC_API void MR_SliceInfoBase_DestroyArray (const MR_SliceInfoBase *_this)
 Destroys a heap-allocated array of MR_SliceInfoBase. Does nothing if the pointer is null.
 
MRC_API MR_SliceInfoBaseMR_SliceInfoBase_AssignFromAnother (MR_SliceInfoBase *_this, const MR_SliceInfoBase *_other)
 
MRC_API const MR_Vector3dMR_SliceInfo_Get_imagePos (const MR_SliceInfo *_this)
 
MRC_API void MR_SliceInfo_Set_imagePos (MR_SliceInfo *_this, MR_Vector3d value)
 
MRC_API MR_Vector3dMR_SliceInfo_GetMutable_imagePos (MR_SliceInfo *_this)
 
MRC_API MR_SliceInfoMR_SliceInfo_DefaultConstruct (void)
 
MRC_API MR_SliceInfoMR_SliceInfo_DefaultConstructArray (size_t num_elems)
 
MRC_API const MR_SliceInfoMR_SliceInfo_OffsetPtr (const MR_SliceInfo *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_SliceInfoMR_SliceInfo_OffsetMutablePtr (MR_SliceInfo *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_SliceInfoBaseMR_SliceInfo_UpcastTo_MR_SliceInfoBase (const MR_SliceInfo *object)
 
MRC_API MR_SliceInfoBaseMR_SliceInfo_MutableUpcastTo_MR_SliceInfoBase (MR_SliceInfo *object)
 Upcasts an instance of MR::SliceInfo to its base class MR::SliceInfoBase.
 
MRC_API MR_SliceInfoMR_SliceInfo_ConstructFromAnother (const MR_SliceInfo *_other)
 
MRC_API void MR_SliceInfo_Destroy (const MR_SliceInfo *_this)
 Destroys a heap-allocated instance of MR_SliceInfo. Does nothing if the pointer is null.
 
MRC_API void MR_SliceInfo_DestroyArray (const MR_SliceInfo *_this)
 Destroys a heap-allocated array of MR_SliceInfo. Does nothing if the pointer is null.
 
MRC_API MR_SliceInfoMR_SliceInfo_AssignFromAnother (MR_SliceInfo *_this, const MR_SliceInfo *_other)
 
MRC_API void MR_sortScansByOrder (MR_std_vector_std_filesystem_path *scans, MR_std_vector_MR_SliceInfo *zOrder)
 
MRC_API void MR_putScanFileNameInZ (const MR_std_vector_std_filesystem_path *scans, MR_std_vector_MR_SliceInfo *zOrder)
 
MRC_API void MR_sortScanFilesByName (MR_std_vector_std_filesystem_path *scans)
 

Typedef Documentation

◆ MR_SliceInfo

typedef struct MR_SliceInfo MR_SliceInfo

slice information these fields will be ignored in sorting

See also
SliceInfoBase Generated from class MR::SliceInfo. Base classes: Direct: (non-virtual) MR::SliceInfoBase

◆ MR_SliceInfoBase

slice information

See also
SliceInfo Generated from class MR::SliceInfoBase. Derived classes: Direct: (non-virtual) MR::SliceInfo

◆ MR_std_vector_MR_SliceInfo

◆ MR_std_vector_std_filesystem_path

Function Documentation

◆ MR_putScanFileNameInZ()

MRC_API void MR_putScanFileNameInZ ( const MR_std_vector_std_filesystem_path * scans,
MR_std_vector_MR_SliceInfo * zOrder )

Read layer heights from given scan file names Generated from function MR::putScanFileNameInZ. Parameter scans can not be null. It is a single object. Parameter zOrder can not be null. It is a single object.

◆ MR_SliceInfo_AssignFromAnother()

MRC_API MR_SliceInfo * MR_SliceInfo_AssignFromAnother ( MR_SliceInfo * _this,
const MR_SliceInfo * _other )

Generated from a method of class MR::SliceInfo 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.

◆ MR_SliceInfo_ConstructFromAnother()

MRC_API MR_SliceInfo * MR_SliceInfo_ConstructFromAnother ( const MR_SliceInfo * _other)

Generated from a constructor of class MR::SliceInfo. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_SliceInfo_Destroy() to free it when you're done using it.

◆ MR_SliceInfo_DefaultConstruct()

MRC_API MR_SliceInfo * MR_SliceInfo_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_SliceInfo_Destroy() to free it when you're done using it.

◆ MR_SliceInfo_DefaultConstructArray()

MRC_API MR_SliceInfo * MR_SliceInfo_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_SliceInfo_DestroyArray(). Use MR_SliceInfo_OffsetMutablePtr() and MR_SliceInfo_OffsetPtr() to access the array elements.

◆ MR_SliceInfo_Destroy()

MRC_API void MR_SliceInfo_Destroy ( const MR_SliceInfo * _this)

Destroys a heap-allocated instance of MR_SliceInfo. Does nothing if the pointer is null.

◆ MR_SliceInfo_DestroyArray()

MRC_API void MR_SliceInfo_DestroyArray ( const MR_SliceInfo * _this)

Destroys a heap-allocated array of MR_SliceInfo. Does nothing if the pointer is null.

◆ MR_SliceInfo_Get_imagePos()

MRC_API const MR_Vector3d * MR_SliceInfo_Get_imagePos ( const MR_SliceInfo * _this)

image position Returns a pointer to a member variable of class MR::SliceInfo named imagePos. 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.

◆ MR_SliceInfo_GetMutable_imagePos()

MRC_API MR_Vector3d * MR_SliceInfo_GetMutable_imagePos ( MR_SliceInfo * _this)

image position Returns a mutable pointer to a member variable of class MR::SliceInfo named imagePos. 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.

◆ MR_SliceInfo_MutableUpcastTo_MR_SliceInfoBase()

MRC_API MR_SliceInfoBase * MR_SliceInfo_MutableUpcastTo_MR_SliceInfoBase ( MR_SliceInfo * object)

Upcasts an instance of MR::SliceInfo to its base class MR::SliceInfoBase.

◆ MR_SliceInfo_OffsetMutablePtr()

MRC_API MR_SliceInfo * MR_SliceInfo_OffsetMutablePtr ( MR_SliceInfo * 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.

◆ MR_SliceInfo_OffsetPtr()

MRC_API const MR_SliceInfo * MR_SliceInfo_OffsetPtr ( const MR_SliceInfo * 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.

◆ MR_SliceInfo_Set_imagePos()

MRC_API void MR_SliceInfo_Set_imagePos ( MR_SliceInfo * _this,
MR_Vector3d value )

image position Modifies a member variable of class MR::SliceInfo named imagePos. Parameter _this can not be null. It is a single object.

◆ MR_SliceInfo_UpcastTo_MR_SliceInfoBase()

MRC_API const MR_SliceInfoBase * MR_SliceInfo_UpcastTo_MR_SliceInfoBase ( const MR_SliceInfo * object)

Upcasts an instance of MR::SliceInfo to its base class MR::SliceInfoBase. This version is acting on mutable pointers.

◆ MR_SliceInfoBase_AssignFromAnother()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_AssignFromAnother ( MR_SliceInfoBase * _this,
const MR_SliceInfoBase * _other )

Generated from a method of class MR::SliceInfoBase 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.

◆ MR_SliceInfoBase_ConstructFrom()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_ConstructFrom ( int32_t instanceNum,
double z,
int32_t fileNum )

Constructs MR::SliceInfoBase elementwise. Never returns null. Returns an instance allocated on the heap! Must call MR_SliceInfoBase_Destroy() to free it when you're done using it.

◆ MR_SliceInfoBase_ConstructFromAnother()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_ConstructFromAnother ( const MR_SliceInfoBase * _other)

Generated from a constructor of class MR::SliceInfoBase. Parameter _other can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_SliceInfoBase_Destroy() to free it when you're done using it.

◆ MR_SliceInfoBase_DefaultConstruct()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_SliceInfoBase_Destroy() to free it when you're done using it.

◆ MR_SliceInfoBase_DefaultConstructArray()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_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_SliceInfoBase_DestroyArray(). Use MR_SliceInfoBase_OffsetMutablePtr() and MR_SliceInfoBase_OffsetPtr() to access the array elements.

◆ MR_SliceInfoBase_Destroy()

MRC_API void MR_SliceInfoBase_Destroy ( const MR_SliceInfoBase * _this)

Destroys a heap-allocated instance of MR_SliceInfoBase. Does nothing if the pointer is null.

◆ MR_SliceInfoBase_DestroyArray()

MRC_API void MR_SliceInfoBase_DestroyArray ( const MR_SliceInfoBase * _this)

Destroys a heap-allocated array of MR_SliceInfoBase. Does nothing if the pointer is null.

◆ MR_SliceInfoBase_Get_fileNum()

MRC_API const int32_t * MR_SliceInfoBase_Get_fileNum ( const MR_SliceInfoBase * _this)

file index Returns a pointer to a member variable of class MR::SliceInfoBase named fileNum. 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.

◆ MR_SliceInfoBase_Get_instanceNum()

MRC_API const int32_t * MR_SliceInfoBase_Get_instanceNum ( const MR_SliceInfoBase * _this)

instance number Returns a pointer to a member variable of class MR::SliceInfoBase named instanceNum. 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.

◆ MR_SliceInfoBase_Get_z()

MRC_API const double * MR_SliceInfoBase_Get_z ( const MR_SliceInfoBase * _this)

layer height Returns a pointer to a member variable of class MR::SliceInfoBase named z. 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.

◆ MR_SliceInfoBase_GetMutable_fileNum()

MRC_API int32_t * MR_SliceInfoBase_GetMutable_fileNum ( MR_SliceInfoBase * _this)

file index Returns a mutable pointer to a member variable of class MR::SliceInfoBase named fileNum. 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.

◆ MR_SliceInfoBase_GetMutable_instanceNum()

MRC_API int32_t * MR_SliceInfoBase_GetMutable_instanceNum ( MR_SliceInfoBase * _this)

instance number Returns a mutable pointer to a member variable of class MR::SliceInfoBase named instanceNum. 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.

◆ MR_SliceInfoBase_GetMutable_z()

MRC_API double * MR_SliceInfoBase_GetMutable_z ( MR_SliceInfoBase * _this)

layer height Returns a mutable pointer to a member variable of class MR::SliceInfoBase named z. 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.

◆ MR_SliceInfoBase_MutableStaticDowncastTo_MR_SliceInfo()

MRC_API MR_SliceInfo * MR_SliceInfoBase_MutableStaticDowncastTo_MR_SliceInfo ( MR_SliceInfoBase * object)

Downcasts an instance of MR::SliceInfoBase to a derived class MR::SliceInfo. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise.

◆ MR_SliceInfoBase_OffsetMutablePtr()

MRC_API MR_SliceInfoBase * MR_SliceInfoBase_OffsetMutablePtr ( MR_SliceInfoBase * 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.

◆ MR_SliceInfoBase_OffsetPtr()

MRC_API const MR_SliceInfoBase * MR_SliceInfoBase_OffsetPtr ( const MR_SliceInfoBase * 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.

◆ MR_SliceInfoBase_Set_fileNum()

MRC_API void MR_SliceInfoBase_Set_fileNum ( MR_SliceInfoBase * _this,
int32_t value )

file index Modifies a member variable of class MR::SliceInfoBase named fileNum. Parameter _this can not be null. It is a single object.

◆ MR_SliceInfoBase_Set_instanceNum()

MRC_API void MR_SliceInfoBase_Set_instanceNum ( MR_SliceInfoBase * _this,
int32_t value )

instance number Modifies a member variable of class MR::SliceInfoBase named instanceNum. Parameter _this can not be null. It is a single object.

◆ MR_SliceInfoBase_Set_z()

MRC_API void MR_SliceInfoBase_Set_z ( MR_SliceInfoBase * _this,
double value )

layer height Modifies a member variable of class MR::SliceInfoBase named z. Parameter _this can not be null. It is a single object.

◆ MR_SliceInfoBase_StaticDowncastTo_MR_SliceInfo()

MRC_API const MR_SliceInfo * MR_SliceInfoBase_StaticDowncastTo_MR_SliceInfo ( const MR_SliceInfoBase * object)

Downcasts an instance of MR::SliceInfoBase to a derived class MR::SliceInfo. This is a static downcast, it trusts the programmer that the target type is correct. Results in UB and returns an invalid pointer otherwise. This version is acting on mutable pointers.

◆ MR_sortScanFilesByName()

MRC_API void MR_sortScanFilesByName ( MR_std_vector_std_filesystem_path * scans)

Sort scan files in given vector by names (respect numbers in it) Generated from function MR::sortScanFilesByName. Parameter scans can not be null. It is a single object.

◆ MR_sortScansByOrder()

MRC_API void MR_sortScansByOrder ( MR_std_vector_std_filesystem_path * scans,
MR_std_vector_MR_SliceInfo * zOrder )

Sort scan files in given vector by given slice information Generated from function MR::sortScansByOrder. Parameter scans can not be null. It is a single object. Parameter zOrder can not be null. It is a single object.