MeshLib C Docs
Loading...
Searching...
No Matches
MRMatrix.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRId.h>
4#include <MRCMisc/common.h>
5#include <MRCMisc/exports.h>
6
7#include <stddef.h>
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct MR_RectIndexer MR_RectIndexer; // Defined in `#include <MRCMesh/MRRectIndexer.h>`.
14typedef struct MR_Vector2i MR_Vector2i; // Defined in `#include <MRCMesh/MRVector2.h>`.
15typedef struct MR_std_vector_float MR_std_vector_float; // Defined in `#include <MRCMisc/std_vector_float.h>`.
16
17
25
29
34
37MRC_API const MR_Matrix_float *MR_Matrix_float_OffsetPtr(const MR_Matrix_float *ptr, ptrdiff_t i);
38
42
47
51
55MRC_API MR_Matrix_float *MR_Matrix_float_ConstructFromAnother(MR_PassBy _other_pass_by, MR_Matrix_float *_other);
56
61MRC_API MR_Matrix_float *MR_Matrix_float_Construct(MR_uint64_t numRows, MR_uint64_t numCols);
62
64MRC_API void MR_Matrix_float_Destroy(const MR_Matrix_float *_this);
65
68
74MRC_API MR_Matrix_float *MR_Matrix_float_AssignFromAnother(MR_Matrix_float *_this, MR_PassBy _other_pass_by, MR_Matrix_float *_other);
75
80MRC_API float *MR_Matrix_float_call_mut_2(MR_Matrix_float *_this, MR_uint64_t row, MR_uint64_t col);
81
85MRC_API float *MR_Matrix_float_call_mut_1(MR_Matrix_float *_this, MR_uint64_t i);
86
90MRC_API const float *MR_Matrix_float_call_2(const MR_Matrix_float *_this, MR_uint64_t row, MR_uint64_t col);
91
95MRC_API const float *MR_Matrix_float_call_1(const MR_Matrix_float *_this, MR_uint64_t i);
96
100MRC_API MR_Matrix_float *MR_Matrix_float_getSubMatrix(MR_Matrix_float *_this, MR_uint64_t startRow, MR_uint64_t nRow, MR_uint64_t startCol, MR_uint64_t nCol);
101
107
110MRC_API void MR_Matrix_float_fill(MR_Matrix_float *_this, float val);
111
115
118MRC_API MR_uint64_t MR_Matrix_float_getRowsNum(const MR_Matrix_float *_this);
119
122MRC_API MR_uint64_t MR_Matrix_float_getColsNum(const MR_Matrix_float *_this);
123
128
132MRC_API void MR_Matrix_float_resize(MR_Matrix_float *_this, const MR_Vector2i *dims);
133
138
141MRC_API MR_uint64_t MR_Matrix_float_size(const MR_Matrix_float *_this);
142
147
151MRC_API MR_uint64_t MR_Matrix_float_toIndex(const MR_Matrix_float *_this, const MR_Vector2i *pos);
152
153#ifdef __cplusplus
154} // extern "C"
155#endif
struct MR_RectIndexer MR_RectIndexer
Definition MRDistanceMap.h:22
struct MR_Matrix_float MR_Matrix_float
Definition MRDistanceMap.h:17
MRC_API void MR_Matrix_float_clear(MR_Matrix_float *_this)
MRC_API MR_Matrix_float * MR_Matrix_float_getSubMatrix(MR_Matrix_float *_this, MR_uint64_t startRow, MR_uint64_t nRow, MR_uint64_t startCol, MR_uint64_t nCol)
MRC_API MR_Matrix_float * MR_Matrix_float_AssignFromAnother(MR_Matrix_float *_this, MR_PassBy _other_pass_by, MR_Matrix_float *_other)
MRC_API MR_uint64_t MR_Matrix_float_getColsNum(const MR_Matrix_float *_this)
MRC_API MR_Matrix_float * MR_Matrix_float_ConstructFromAnother(MR_PassBy _other_pass_by, MR_Matrix_float *_other)
MRC_API void MR_Matrix_float_fill(MR_Matrix_float *_this, float val)
MRC_API MR_Matrix_float * MR_Matrix_float_DefaultConstruct(void)
MRC_API MR_Matrix_float * MR_Matrix_float_OffsetMutablePtr(MR_Matrix_float *ptr, ptrdiff_t i)
MRC_API MR_uint64_t MR_Matrix_float_size(const MR_Matrix_float *_this)
MRC_API void MR_Matrix_float_Destroy(const MR_Matrix_float *_this)
Destroys a heap-allocated instance of MR_Matrix_float. Does nothing if the pointer is null.
MRC_API MR_Matrix_float * MR_Matrix_float_DefaultConstructArray(size_t num_elems)
MRC_API void MR_Matrix_float_DestroyArray(const MR_Matrix_float *_this)
Destroys a heap-allocated array of MR_Matrix_float. Does nothing if the pointer is null.
MRC_API MR_Matrix_float * MR_Matrix_float_transposed(const MR_Matrix_float *_this)
MRC_API MR_PixelId MR_Matrix_float_toPixelId(const MR_Matrix_float *_this, const MR_Vector2i *pos)
MRC_API const MR_Vector2i * MR_Matrix_float_dims(const MR_Matrix_float *_this)
MRC_API void MR_Matrix_float_resize(MR_Matrix_float *_this, const MR_Vector2i *dims)
MRC_API const MR_RectIndexer * MR_Matrix_float_UpcastTo_MR_RectIndexer(const MR_Matrix_float *object)
MRC_API MR_uint64_t MR_Matrix_float_toIndex(const MR_Matrix_float *_this, const MR_Vector2i *pos)
MRC_API MR_uint64_t MR_Matrix_float_getRowsNum(const MR_Matrix_float *_this)
MRC_API const MR_Matrix_float * MR_Matrix_float_OffsetPtr(const MR_Matrix_float *ptr, ptrdiff_t i)
MRC_API const float * MR_Matrix_float_call_2(const MR_Matrix_float *_this, MR_uint64_t row, MR_uint64_t col)
MRC_API MR_RectIndexer * MR_Matrix_float_MutableUpcastTo_MR_RectIndexer(MR_Matrix_float *object)
MRC_API MR_Matrix_float * MR_Matrix_float_Construct(MR_uint64_t numRows, MR_uint64_t numCols)
MRC_API float * MR_Matrix_float_call_mut_2(MR_Matrix_float *_this, MR_uint64_t row, MR_uint64_t col)
MRC_API const float * MR_Matrix_float_call_1(const MR_Matrix_float *_this, MR_uint64_t i)
MRC_API float * MR_Matrix_float_call_mut_1(MR_Matrix_float *_this, MR_uint64_t i)
MRC_API const MR_std_vector_float * MR_Matrix_float_data(const MR_Matrix_float *_this)
struct MR_std_vector_float MR_std_vector_float
Definition MRPdf.h:27
Definition MRId.h:65
Generated from class MR::Vector2i.
Definition MRVector2.h:50