MeshLib C Docs
Loading...
Searching...
No Matches
MRVector4.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMesh/MRVector3.h>
4#include <MRCMisc/common.h>
5#include <MRCMisc/exports.h>
6
7#include <stdbool.h>
8#include <stddef.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14typedef struct MR_NoInit MR_NoInit; // Defined in `#include <MRCMesh/MRMeshFwd.h>`.
15typedef struct MR_std_istream MR_std_istream; // Defined in `#include <MRCMisc/iostream.h>`.
16typedef struct MR_std_ostream MR_std_ostream; // Defined in `#include <MRCMisc/iostream.h>`.
17
18
21typedef struct MR_Vector4b
22{
23 bool x;
24 bool y;
25 bool z;
26 bool w;
28
31typedef struct MR_Vector4i
32{
33 int x;
34 int y;
35 int z;
36 int w;
38
41typedef struct MR_Vector4i64
42{
43 MR_int64_t x;
44 MR_int64_t y;
45 MR_int64_t z;
46 MR_int64_t w;
48
51typedef struct MR_Vector4f
52{
53 float x;
54 float y;
55 float z;
56 float w;
58
61typedef struct MR_Vector4d
62{
63 double x;
64 double y;
65 double z;
66 double w;
68
73
76MRC_API const int *MR_Vector4b_Get_elements(void);
77
80
85
90
92MRC_API MR_Vector4b MR_Vector4b_Construct_4(bool x, bool y, bool z, bool w);
93
96
100MRC_API const bool *MR_Vector4b_index(const MR_Vector4b *_this, int e);
101
105MRC_API bool *MR_Vector4b_index_mut(MR_Vector4b *_this, int e);
106
109MRC_API bool MR_Vector4b_lengthSq(const MR_Vector4b *_this);
110
113MRC_API double MR_Vector4b_length(const MR_Vector4b *_this);
114
118MRC_API bool MR_equal_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b);
119
123MRC_API bool MR_not_equal_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b);
124
125// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
130
134
139
144
148
152
155
161
167
172
177
183
189
192MRC_API const int *MR_Vector4i_Get_elements(void);
193
196
201
206
208MRC_API MR_Vector4i MR_Vector4i_Construct_4(int x, int y, int z, int w);
209
212
216MRC_API const int *MR_Vector4i_index(const MR_Vector4i *_this, int e);
217
221MRC_API int *MR_Vector4i_index_mut(MR_Vector4i *_this, int e);
222
225MRC_API int MR_Vector4i_lengthSq(const MR_Vector4i *_this);
226
229MRC_API double MR_Vector4i_length(const MR_Vector4i *_this);
230
234MRC_API bool MR_equal_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b);
235
239MRC_API bool MR_not_equal_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b);
240
241// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
246
250
255
260
264
268
271
277
283
288
293
299
305
308MRC_API const int *MR_Vector4i64_Get_elements(void);
309
312
317
322
328MRC_API MR_Vector4i64 MR_Vector4i64_Construct_4(MR_int64_t x, MR_int64_t y, MR_int64_t z, MR_int64_t w);
329
332
336MRC_API const MR_int64_t *MR_Vector4i64_index(const MR_Vector4i64 *_this, int e);
337
341MRC_API MR_int64_t *MR_Vector4i64_index_mut(MR_Vector4i64 *_this, int e);
342
345MRC_API MR_int64_t MR_Vector4i64_lengthSq(const MR_Vector4i64 *_this);
346
349MRC_API double MR_Vector4i64_length(const MR_Vector4i64 *_this);
350
354MRC_API bool MR_equal_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b);
355
360
361// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
366
370
375
380
384
388
391
397
403
408
413
419
425
428MRC_API const int *MR_Vector4f_Get_elements(void);
429
432
437
442
444MRC_API MR_Vector4f MR_Vector4f_Construct_4(float x, float y, float z, float w);
445
448
452MRC_API const float *MR_Vector4f_index(const MR_Vector4f *_this, int e);
453
457MRC_API float *MR_Vector4f_index_mut(MR_Vector4f *_this, int e);
458
461MRC_API float MR_Vector4f_lengthSq(const MR_Vector4f *_this);
462
465MRC_API float MR_Vector4f_length(const MR_Vector4f *_this);
466
470
475
478MRC_API bool MR_Vector4f_isFinite(const MR_Vector4f *_this);
479
483MRC_API bool MR_equal_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b);
484
488MRC_API bool MR_not_equal_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b);
489
490// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
495
499
504
509
513
517
520
526
532
537
542
548
554
557MRC_API const int *MR_Vector4d_Get_elements(void);
558
561
566
571
573MRC_API MR_Vector4d MR_Vector4d_Construct_4(double x, double y, double z, double w);
574
577
581MRC_API const double *MR_Vector4d_index(const MR_Vector4d *_this, int e);
582
586MRC_API double *MR_Vector4d_index_mut(MR_Vector4d *_this, int e);
587
590MRC_API double MR_Vector4d_lengthSq(const MR_Vector4d *_this);
591
594MRC_API double MR_Vector4d_length(const MR_Vector4d *_this);
595
599
604
607MRC_API bool MR_Vector4d_isFinite(const MR_Vector4d *_this);
608
612MRC_API bool MR_equal_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b);
613
617MRC_API bool MR_not_equal_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b);
618
619// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
624
628
633
638
642
646
649
655
661
666
671
677
683
687
692MRC_API const unsigned char *MR_Vector4_unsigned_char_Get_x(const MR_Vector4_unsigned_char *_this);
693
698MRC_API void MR_Vector4_unsigned_char_Set_x(MR_Vector4_unsigned_char *_this, unsigned char value);
699
705
710MRC_API const unsigned char *MR_Vector4_unsigned_char_Get_y(const MR_Vector4_unsigned_char *_this);
711
716MRC_API void MR_Vector4_unsigned_char_Set_y(MR_Vector4_unsigned_char *_this, unsigned char value);
717
723
728MRC_API const unsigned char *MR_Vector4_unsigned_char_Get_z(const MR_Vector4_unsigned_char *_this);
729
734MRC_API void MR_Vector4_unsigned_char_Set_z(MR_Vector4_unsigned_char *_this, unsigned char value);
735
741
746MRC_API const unsigned char *MR_Vector4_unsigned_char_Get_w(const MR_Vector4_unsigned_char *_this);
747
752MRC_API void MR_Vector4_unsigned_char_Set_w(MR_Vector4_unsigned_char *_this, unsigned char value);
753
759
763
768
772
776
782
788
795MRC_API MR_Vector4_unsigned_char *MR_Vector4_unsigned_char_Construct_4(unsigned char x, unsigned char y, unsigned char z, unsigned char w);
796
799
802
810
814
818MRC_API const unsigned char *MR_Vector4_unsigned_char_index(const MR_Vector4_unsigned_char *_this, int e);
819
824
828
832
837
842
843// NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.
848
852
857
862
866
870
874
880
886
891
896
902
908
913MRC_API int MR_dot_bool_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b);
914
919MRC_API int MR_dot_int_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b);
920
925MRC_API MR_int64_t MR_dot_int64_t_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b);
926
931MRC_API float MR_dot_float_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b);
932
937MRC_API double MR_dot_double_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b);
938
944
945#ifdef __cplusplus
946} // extern "C"
947#endif
struct MR_NoInit MR_NoInit
Definition MRBox.h:15
struct MR_std_ostream MR_std_ostream
Definition MRCtm.h:31
struct MR_std_istream MR_std_istream
Definition MRCtm.h:28
struct MR_Vector4_unsigned_char MR_Vector4_unsigned_char
Definition MRMatrix4.h:19
struct MR_Vector4i64 MR_Vector4i64
MRC_API MR_Vector4i64 MR_sub_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API const MR_Vector4_unsigned_char * MR_pos_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a)
MRC_API MR_Vector4i64 * MR_mul_assign_MR_Vector4i64_int64_t(MR_Vector4i64 *a, MR_int64_t b)
MRC_API MR_Vector4i * MR_sub_assign_MR_Vector4i(MR_Vector4i *a, const MR_Vector4i *b)
MRC_API unsigned char MR_Vector4_unsigned_char_lengthSq(const MR_Vector4_unsigned_char *_this)
MRC_API bool * MR_Vector4b_index_mut(MR_Vector4b *_this, int e)
struct MR_Vector4d MR_Vector4d
MRC_API MR_Vector4d * MR_sub_assign_MR_Vector4d(MR_Vector4d *a, const MR_Vector4d *b)
MRC_API MR_Vector3f MR_Vector4f_proj3d(const MR_Vector4f *_this)
MRC_API MR_Vector4f MR_mul_float_MR_Vector4f(float a, const MR_Vector4f *b)
MRC_API MR_Vector4i MR_div_MR_Vector4_unsigned_char_unsigned_char(const MR_Vector4_unsigned_char *b, unsigned char a)
MRC_API const MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_OffsetPtr(const MR_Vector4_unsigned_char *ptr, ptrdiff_t i)
MRC_API const unsigned char * MR_Vector4_unsigned_char_index(const MR_Vector4_unsigned_char *_this, int e)
MRC_API const int * MR_Vector4f_Get_elements(void)
MRC_API MR_Vector4d * MR_div_assign_MR_Vector4d_double(MR_Vector4d *a, double b)
MRC_API float MR_Vector4f_length(const MR_Vector4f *_this)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_diagonal(unsigned char a)
MRC_API unsigned char * MR_Vector4_unsigned_char_GetMutable_w(MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4f MR_Vector4f_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector4i MR_sub_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b)
MRC_API MR_int64_t MR_Vector4i64_lengthSq(const MR_Vector4i64 *_this)
MRC_API bool MR_not_equal_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API const MR_int64_t * MR_Vector4i64_index(const MR_Vector4i64 *_this, int e)
MRC_API bool MR_equal_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4i MR_neg_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a)
MRC_API MR_Vector4d MR_add_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b)
MRC_API MR_Vector4b * MR_div_assign_MR_Vector4b_bool(MR_Vector4b *a, bool b)
MRC_API MR_Vector4d MR_Vector4d_Construct_4(double x, double y, double z, double w)
Generated from constructor MR::Vector4d::Vector4d.
MRC_API bool MR_Vector4d_isFinite(const MR_Vector4d *_this)
struct MR_Vector4f MR_Vector4f
MRC_API MR_Vector4i MR_div_MR_Vector4b_bool(MR_Vector4b b, bool a)
Generated from function MR::operator/.
MRC_API MR_std_istream * MR_input_MR_Vector4i(MR_std_istream *s, MR_Vector4i *vec)
MRC_API MR_Vector4i64 * MR_add_assign_MR_Vector4i64(MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API MR_Vector4f MR_mul_MR_Vector4f_float(const MR_Vector4f *b, float a)
MRC_API const MR_Vector4b * MR_pos_MR_Vector4b(const MR_Vector4b *a)
MRC_API MR_Vector4i64 MR_neg_MR_Vector4i64(const MR_Vector4i64 *a)
MRC_API double MR_dot_double_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b)
MRC_API MR_Vector4i * MR_add_assign_MR_Vector4i(MR_Vector4i *a, const MR_Vector4i *b)
MRC_API MR_Vector4i64 MR_mul_MR_Vector4i64_int64_t(const MR_Vector4i64 *b, MR_int64_t a)
MRC_API MR_int64_t MR_dot_int64_t_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API bool MR_equal_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b)
MRC_API const MR_Vector4f * MR_pos_MR_Vector4f(const MR_Vector4f *a)
MRC_API MR_Vector4i * MR_div_assign_MR_Vector4i_int(MR_Vector4i *a, int b)
MRC_API void MR_Vector4_unsigned_char_Destroy(const MR_Vector4_unsigned_char *_this)
Destroys a heap-allocated instance of MR_Vector4_unsigned_char. Does nothing if the pointer is null.
MRC_API MR_std_ostream * MR_print_MR_Vector4i(MR_std_ostream *s, const MR_Vector4i *vec)
MRC_API MR_Vector4d * MR_add_assign_MR_Vector4d(MR_Vector4d *a, const MR_Vector4d *b)
MRC_API double MR_Vector4i_length(const MR_Vector4i *_this)
MRC_API double MR_Vector4i64_length(const MR_Vector4i64 *_this)
MRC_API bool MR_equal_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b)
MRC_API void MR_Vector4_unsigned_char_Set_y(MR_Vector4_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector4i MR_Vector4i_Construct_1(const MR_NoInit *_1)
MRC_API const double * MR_Vector4d_index(const MR_Vector4d *_this, int e)
MRC_API const unsigned char * MR_Vector4_unsigned_char_Get_x(const MR_Vector4_unsigned_char *_this)
MRC_API const unsigned char * MR_Vector4_unsigned_char_Get_z(const MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4d MR_Vector4d_diagonal(double a)
Generated from method MR::Vector4d::diagonal.
MRC_API const unsigned char * MR_Vector4_unsigned_char_Get_y(const MR_Vector4_unsigned_char *_this)
MRC_API const int * MR_Vector4b_Get_elements(void)
MRC_API bool MR_equal_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API MR_std_ostream * MR_print_MR_Vector4f(MR_std_ostream *s, const MR_Vector4f *vec)
MRC_API double MR_Vector4_unsigned_char_length(const MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4i64 MR_mul_int64_t_MR_Vector4i64(MR_int64_t a, const MR_Vector4i64 *b)
MRC_API MR_Vector4f MR_Vector4f_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector4i MR_mul_bool_MR_Vector4b(bool a, const MR_Vector4b *b)
MRC_API int MR_dot_bool_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b)
MRC_API float MR_Vector4f_lengthSq(const MR_Vector4f *_this)
MRC_API unsigned char * MR_Vector4_unsigned_char_index_mut(MR_Vector4_unsigned_char *_this, int e)
MRC_API MR_Vector4i MR_Vector4i_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API const bool * MR_Vector4b_index(const MR_Vector4b *_this, int e)
MRC_API MR_Vector4i MR_sub_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4d MR_div_MR_Vector4d_double(MR_Vector4d b, double a)
Generated from function MR::operator/.
MRC_API const MR_Vector4i * MR_pos_MR_Vector4i(const MR_Vector4i *a)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_ConstructFromAnother(const MR_Vector4_unsigned_char *_other)
MRC_API bool MR_Vector4f_isFinite(const MR_Vector4f *_this)
MRC_API MR_Vector4f MR_neg_MR_Vector4f(const MR_Vector4f *a)
MRC_API MR_Vector4d MR_neg_MR_Vector4d(const MR_Vector4d *a)
MRC_API MR_Vector4f * MR_div_assign_MR_Vector4f_float(MR_Vector4f *a, float b)
MRC_API MR_Vector4d MR_sub_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b)
MRC_API bool MR_equal_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b)
MRC_API MR_std_ostream * MR_print_MR_Vector4_unsigned_char(MR_std_ostream *s, const MR_Vector4_unsigned_char *vec)
MRC_API MR_Vector4d MR_mul_MR_Vector4d_double(const MR_Vector4d *b, double a)
MRC_API MR_Vector4b * MR_mul_assign_MR_Vector4b_bool(MR_Vector4b *a, bool b)
MRC_API MR_Vector4i MR_neg_MR_Vector4i(const MR_Vector4i *a)
MRC_API MR_std_ostream * MR_print_MR_Vector4i64(MR_std_ostream *s, const MR_Vector4i64 *vec)
struct MR_Vector4b MR_Vector4b
MRC_API MR_Vector4i MR_mul_MR_Vector4i_int(const MR_Vector4i *b, int a)
MRC_API bool MR_not_equal_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b)
MRC_API unsigned char * MR_Vector4_unsigned_char_GetMutable_x(MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4f MR_Vector4f_diagonal(float a)
Generated from method MR::Vector4f::diagonal.
MRC_API double MR_Vector4b_length(const MR_Vector4b *_this)
MRC_API float * MR_Vector4f_index_mut(MR_Vector4f *_this, int e)
MRC_API const float * MR_Vector4f_index(const MR_Vector4f *_this, int e)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_AssignFromAnother(MR_Vector4_unsigned_char *_this, const MR_Vector4_unsigned_char *_other)
MRC_API const MR_Vector4i64 * MR_pos_MR_Vector4i64(const MR_Vector4i64 *a)
MRC_API MR_Vector3d MR_Vector4d_proj3d(const MR_Vector4d *_this)
MRC_API void MR_Vector4_unsigned_char_Set_w(MR_Vector4_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector4_unsigned_char * MR_sub_assign_MR_Vector4_unsigned_char(MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_OffsetMutablePtr(MR_Vector4_unsigned_char *ptr, ptrdiff_t i)
MRC_API MR_Vector4d MR_mul_double_MR_Vector4d(double a, const MR_Vector4d *b)
MRC_API double MR_Vector4d_length(const MR_Vector4d *_this)
MRC_API MR_Vector4i MR_mul_int_MR_Vector4i(int a, const MR_Vector4i *b)
MRC_API double * MR_Vector4d_index_mut(MR_Vector4d *_this, int e)
MRC_API MR_Vector4i MR_add_MR_Vector4b(const MR_Vector4b *a, const MR_Vector4b *b)
MRC_API unsigned char * MR_Vector4_unsigned_char_GetMutable_z(MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4_unsigned_char * MR_div_assign_MR_Vector4_unsigned_char_unsigned_char(MR_Vector4_unsigned_char *a, unsigned char b)
MRC_API MR_Vector4i64 MR_Vector4i64_diagonal(MR_int64_t a)
Generated from method MR::Vector4i64::diagonal.
MRC_API MR_Vector4f MR_add_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b)
MRC_API MR_Vector4i MR_Vector4i_diagonal(int a)
Generated from method MR::Vector4i::diagonal.
MRC_API MR_Vector4d MR_Vector4d_normalized(const MR_Vector4d *_this)
MRC_API MR_Vector4i64 MR_Vector4i64_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API const unsigned char * MR_Vector4_unsigned_char_Get_w(const MR_Vector4_unsigned_char *_this)
MRC_API bool MR_Vector4b_lengthSq(const MR_Vector4b *_this)
MRC_API const MR_Vector4d * MR_pos_MR_Vector4d(const MR_Vector4d *a)
MRC_API MR_Vector4f MR_Vector4f_normalized(const MR_Vector4f *_this)
MRC_API double MR_Vector4d_lengthSq(const MR_Vector4d *_this)
MRC_API const int * MR_Vector4i_index(const MR_Vector4i *_this, int e)
MRC_API bool MR_not_equal_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_int64_t * MR_Vector4i64_index_mut(MR_Vector4i64 *_this, int e)
MRC_API int * MR_Vector4i_index_mut(MR_Vector4i *_this, int e)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_DefaultConstructArray(size_t num_elems)
MRC_API MR_std_ostream * MR_print_MR_Vector4b(MR_std_ostream *s, const MR_Vector4b *vec)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_Construct_1(const MR_NoInit *_1)
struct MR_Vector4i MR_Vector4i
MRC_API MR_Vector4i MR_neg_MR_Vector4b(const MR_Vector4b *a)
MRC_API bool MR_not_equal_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b)
MRC_API const int * MR_Vector4i64_Get_elements(void)
MRC_API MR_Vector4i MR_mul_unsigned_char_MR_Vector4_unsigned_char(unsigned char a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4i64 MR_Vector4i64_Construct_4(MR_int64_t x, MR_int64_t y, MR_int64_t z, MR_int64_t w)
MRC_API bool MR_equal_MR_Vector4d(const MR_Vector4d *a, const MR_Vector4d *b)
MRC_API MR_Vector4f MR_div_MR_Vector4f_float(MR_Vector4f b, float a)
Generated from function MR::operator/.
MRC_API void MR_Vector4_unsigned_char_Set_z(MR_Vector4_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector4i64 MR_add_MR_Vector4i64(const MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API MR_Vector4f * MR_Vector4f_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector4i64 * MR_div_assign_MR_Vector4i64_int64_t(MR_Vector4i64 *a, MR_int64_t b)
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_DefaultConstruct(void)
MRC_API int MR_Vector4i_lengthSq(const MR_Vector4i *_this)
MRC_API MR_Vector4b MR_Vector4b_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_std_istream * MR_input_MR_Vector4_unsigned_char(MR_std_istream *s, MR_Vector4_unsigned_char *vec)
MRC_API MR_Vector4d * MR_Vector4d_DefaultConstructArray(size_t num_elems)
MRC_API MR_std_istream * MR_input_MR_Vector4i64(MR_std_istream *s, MR_Vector4i64 *vec)
MRC_API MR_Vector4f MR_sub_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b)
MRC_API MR_Vector4b MR_Vector4b_Construct_4(bool x, bool y, bool z, bool w)
Generated from constructor MR::Vector4b::Vector4b.
MRC_API MR_Vector4f * MR_mul_assign_MR_Vector4f_float(MR_Vector4f *a, float b)
MRC_API void MR_Vector4_unsigned_char_Set_x(MR_Vector4_unsigned_char *_this, unsigned char value)
MRC_API MR_Vector4f * MR_add_assign_MR_Vector4f(MR_Vector4f *a, const MR_Vector4f *b)
MRC_API const int * MR_Vector4i_Get_elements(void)
MRC_API bool MR_not_equal_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b)
MRC_API MR_Vector4i64 * MR_sub_assign_MR_Vector4i64(MR_Vector4i64 *a, const MR_Vector4i64 *b)
MRC_API MR_Vector4i MR_div_MR_Vector4i_int(MR_Vector4i b, int a)
Generated from function MR::operator/.
MRC_API const int * MR_Vector4_unsigned_char_Get_elements(void)
MRC_API MR_Vector4i64 * MR_Vector4i64_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector4_unsigned_char * MR_mul_assign_MR_Vector4_unsigned_char_unsigned_char(MR_Vector4_unsigned_char *a, unsigned char b)
MRC_API float MR_dot_float_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b)
MRC_API MR_std_istream * MR_input_MR_Vector4b(MR_std_istream *s, MR_Vector4b *vec)
MRC_API MR_Vector4i * MR_Vector4i_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector4i64 MR_div_MR_Vector4i64_int64_t(MR_Vector4i64 b, MR_int64_t a)
Generated from function MR::operator/.
MRC_API int MR_dot_int_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b)
MRC_API void MR_Vector4_unsigned_char_DestroyArray(const MR_Vector4_unsigned_char *_this)
Destroys a heap-allocated array of MR_Vector4_unsigned_char. Does nothing if the pointer is null.
MRC_API bool MR_not_equal_MR_Vector4f(const MR_Vector4f *a, const MR_Vector4f *b)
MRC_API MR_Vector4i MR_sub_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b)
MRC_API int MR_dot_unsigned_char_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API const int * MR_Vector4d_Get_elements(void)
MRC_API MR_Vector4d MR_Vector4d_DefaultConstruct(void)
Constructs an empty (default-constructed) instance.
MRC_API MR_Vector4i MR_mul_MR_Vector4_unsigned_char_unsigned_char(const MR_Vector4_unsigned_char *b, unsigned char a)
MRC_API MR_Vector4b MR_Vector4b_diagonal(bool a)
Generated from method MR::Vector4b::diagonal.
MRC_API MR_Vector4_unsigned_char * MR_Vector4_unsigned_char_Construct_4(unsigned char x, unsigned char y, unsigned char z, unsigned char w)
MRC_API MR_std_istream * MR_input_MR_Vector4f(MR_std_istream *s, MR_Vector4f *vec)
MRC_API MR_Vector4i64 MR_Vector4i64_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector4b MR_Vector4b_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector4b * MR_add_assign_MR_Vector4b(MR_Vector4b *a, const MR_Vector4b *b)
MRC_API MR_Vector4_unsigned_char * MR_add_assign_MR_Vector4_unsigned_char(MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4i MR_mul_MR_Vector4b_bool(const MR_Vector4b *b, bool a)
MRC_API MR_Vector4i MR_Vector4i_Construct_4(int x, int y, int z, int w)
Generated from constructor MR::Vector4i::Vector4i.
MRC_API MR_Vector4d * MR_mul_assign_MR_Vector4d_double(MR_Vector4d *a, double b)
MRC_API MR_std_ostream * MR_print_MR_Vector4d(MR_std_ostream *s, const MR_Vector4d *vec)
MRC_API MR_Vector4f * MR_sub_assign_MR_Vector4f(MR_Vector4f *a, const MR_Vector4f *b)
MRC_API unsigned char * MR_Vector4_unsigned_char_GetMutable_y(MR_Vector4_unsigned_char *_this)
MRC_API MR_Vector4d MR_Vector4d_Construct_1(const MR_NoInit *_1)
MRC_API MR_Vector4b * MR_Vector4b_DefaultConstructArray(size_t num_elems)
MRC_API MR_Vector4i MR_add_MR_Vector4i(const MR_Vector4i *a, const MR_Vector4i *b)
MRC_API MR_Vector4b * MR_sub_assign_MR_Vector4b(MR_Vector4b *a, const MR_Vector4b *b)
MRC_API MR_std_istream * MR_input_MR_Vector4d(MR_std_istream *s, MR_Vector4d *vec)
MRC_API MR_Vector4f MR_Vector4f_Construct_4(float x, float y, float z, float w)
Generated from constructor MR::Vector4f::Vector4f.
MRC_API MR_Vector4i MR_add_MR_Vector4_unsigned_char(const MR_Vector4_unsigned_char *a, const MR_Vector4_unsigned_char *b)
MRC_API MR_Vector4i * MR_mul_assign_MR_Vector4i_int(MR_Vector4i *a, int b)
Generated from class MR::Vector3d.
Definition MRVector3.h:55
Generated from class MR::Vector3f.
Definition MRVector3.h:47
Definition MRVector4.h:22
bool y
Definition MRVector4.h:24
bool z
Definition MRVector4.h:25
bool w
Definition MRVector4.h:26
bool x
Definition MRVector4.h:23
Definition MRVector4.h:62
double x
Definition MRVector4.h:63
double z
Definition MRVector4.h:65
double y
Definition MRVector4.h:64
double w
Definition MRVector4.h:66
Definition MRVector4.h:52
float y
Definition MRVector4.h:54
float z
Definition MRVector4.h:55
float x
Definition MRVector4.h:53
float w
Definition MRVector4.h:56
Definition MRVector4.h:42
MR_int64_t x
Definition MRVector4.h:43
MR_int64_t z
Definition MRVector4.h:45
MR_int64_t w
Definition MRVector4.h:46
MR_int64_t y
Definition MRVector4.h:44
Definition MRVector4.h:32
int y
Definition MRVector4.h:34
int x
Definition MRVector4.h:33
int w
Definition MRVector4.h:36
int z
Definition MRVector4.h:35