MeshLib C Docs
Loading...
Searching...
No Matches
MRSequentialNester.h File Reference
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stddef.h>

Go to the source code of this file.

Typedefs

typedef struct MR_Nesting_SequentialNester MR_Nesting_SequentialNester

Functions

MRC_API MR_Nesting_SequentialNesterMR_Nesting_SequentialNester_ConstructFromAnother (MR_PassBy _other_pass_by, MR_Nesting_SequentialNester *_other)
MRC_API const MR_Nesting_SequentialNesterMR_Nesting_SequentialNester_OffsetPtr (const MR_Nesting_SequentialNester *ptr, ptrdiff_t i)
MRC_API MR_Nesting_SequentialNesterMR_Nesting_SequentialNester_OffsetMutablePtr (MR_Nesting_SequentialNester *ptr, ptrdiff_t i)
MRC_API MR_Nesting_SequentialNesterMR_Nesting_SequentialNester_Construct (const MR_Nesting_NestingBaseParams *params, float voxelSize)
MRC_API void MR_Nesting_SequentialNester_Destroy (const MR_Nesting_SequentialNester *_this)
 Destroys a heap-allocated instance of MR_Nesting_SequentialNester. Does nothing if the pointer is null.
MRC_API void MR_Nesting_SequentialNester_DestroyArray (const MR_Nesting_SequentialNester *_this)
 Destroys a heap-allocated array of MR_Nesting_SequentialNester. Does nothing if the pointer is null.
MRC_API MR_Nesting_SequentialNesterMR_Nesting_SequentialNester_AssignFromAnother (MR_Nesting_SequentialNester *_this, MR_PassBy _other_pass_by, MR_Nesting_SequentialNester *_other)
MRC_API MR_expected_MR_Nesting_NestingResult_std_stringMR_Nesting_SequentialNester_nestMesh (MR_Nesting_SequentialNester *_this, const MR_Nesting_MeshXf *meshXf, const MR_Nesting_BoxNestingOptions *options, const MR_std_vector_MR_OutEdge *densificationSequence)
MRC_API MR_expected_MR_Vector_MR_Nesting_NestingResult_MR_ObjId_std_stringMR_Nesting_SequentialNester_nestMeshes (MR_Nesting_SequentialNester *_this, const MR_Vector_MR_Nesting_MeshXf_MR_ObjId *meshes, const MR_Nesting_BoxNestingOptions *options, const MR_std_vector_MR_OutEdge *densificationSequence)

Typedef Documentation

◆ MR_Nesting_SequentialNester

class to add meshes to nest sequentially Generated from class MR::Nesting::SequentialNester. Supported MR_PassBy modes: MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).

Function Documentation

◆ MR_Nesting_SequentialNester_AssignFromAnother()

MRC_API MR_Nesting_SequentialNester * MR_Nesting_SequentialNester_AssignFromAnother ( MR_Nesting_SequentialNester * _this,
MR_PassBy _other_pass_by,
MR_Nesting_SequentialNester * _other )

Generated from method MR::Nesting::SequentialNester::operator=. Parameter _this can not be null. It is a single object. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The returned pointer will never be null. It is non-owning, do NOT destroy it. When this function is called, this object will drop any object references it held previously.

◆ MR_Nesting_SequentialNester_Construct()

MRC_API MR_Nesting_SequentialNester * MR_Nesting_SequentialNester_Construct ( const MR_Nesting_NestingBaseParams * params,
float voxelSize )

if voxelSize > 0 peform densification on each addition Generated from constructor MR::Nesting::SequentialNester::SequentialNester. Parameter params can not be null. It is a single object. The reference to the parameter params might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Nesting_SequentialNester_Destroy() to free it when you're done using it.

◆ MR_Nesting_SequentialNester_ConstructFromAnother()

MRC_API MR_Nesting_SequentialNester * MR_Nesting_SequentialNester_ConstructFromAnother ( MR_PassBy _other_pass_by,
MR_Nesting_SequentialNester * _other )

Generated from constructor MR::Nesting::SequentialNester::SequentialNester. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_Nesting_SequentialNester_Destroy() to free it when you're done using it.

◆ MR_Nesting_SequentialNester_Destroy()

MRC_API void MR_Nesting_SequentialNester_Destroy ( const MR_Nesting_SequentialNester * _this)

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

◆ MR_Nesting_SequentialNester_DestroyArray()

MRC_API void MR_Nesting_SequentialNester_DestroyArray ( const MR_Nesting_SequentialNester * _this)

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

◆ MR_Nesting_SequentialNester_nestMesh()

MRC_API MR_expected_MR_Nesting_NestingResult_std_string * MR_Nesting_SequentialNester_nestMesh ( MR_Nesting_SequentialNester * _this,
const MR_Nesting_MeshXf * meshXf,
const MR_Nesting_BoxNestingOptions * options,
const MR_std_vector_MR_OutEdge * densificationSequence )

tries to add single mesh to the nest returns true if mesh is nested, false otherwise (can be canceled) Generated from method MR::Nesting::SequentialNester::nestMesh. Parameter _this can not be null. It is a single object. Parameter meshXf can not be null. It is a single object. Parameter options can not be null. It is a single object. Parameter densificationSequence defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Nesting_NestingResult_std_string_Destroy() to free it when you're done using it.

◆ MR_Nesting_SequentialNester_nestMeshes()

tries to add multiple mesh to the nest returns bitset of nested meshes (can be canceled) Generated from method MR::Nesting::SequentialNester::nestMeshes. Parameter _this can not be null. It is a single object. Parameter meshes can not be null. It is a single object. Parameter options can not be null. It is a single object. Parameter densificationSequence defaults to a null pointer in C++. Never returns null. Returns an instance allocated on the heap! Must call MR_expected_MR_Vector_MR_Nesting_NestingResult_MR_ObjId_std_string_Destroy() to free it when you're done using it.

◆ MR_Nesting_SequentialNester_OffsetMutablePtr()

MRC_API MR_Nesting_SequentialNester * MR_Nesting_SequentialNester_OffsetMutablePtr ( MR_Nesting_SequentialNester * 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. The reference to the parameter ptr might be preserved in the return value.

◆ MR_Nesting_SequentialNester_OffsetPtr()

MRC_API const MR_Nesting_SequentialNester * MR_Nesting_SequentialNester_OffsetPtr ( const MR_Nesting_SequentialNester * 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. The reference to the parameter ptr might be preserved in the return value.