diff options
Diffstat (limited to 'src/lib/eina/eina_matrix.h')
-rw-r--r-- | src/lib/eina/eina_matrix.h | 181 |
1 files changed, 121 insertions, 60 deletions
diff --git a/src/lib/eina/eina_matrix.h b/src/lib/eina/eina_matrix.h index ed12f6f0db..a4dfb3c609 100644 --- a/src/lib/eina/eina_matrix.h +++ b/src/lib/eina/eina_matrix.h @@ -22,9 +22,6 @@ /** * @file - * @ender_group{Eina_Matrix_Type} - * @ender_group{Eina_Matrix3_F16p16} - * @ender_group{Eina_Matrix3} */ /** @@ -57,6 +54,17 @@ typedef enum _Eina_Matrix_Type } Eina_Matrix_Type; /** + * @typedef Eina_Matrix_Axis + * Matrix Axes + */ +typedef enum _Eina_Matrix_Axis + { + EINA_MATRIX_AXIS_X, /**< X-Axis */ + EINA_MATRIX_AXIS_Y, /**< Y-Axis */ + EINA_MATRIX_AXIS_Z, /**< Z-Axis */ + } Eina_Matrix_Axis; + +/** * @defgroup Eina_Matrix3_Group 3x3 floating point matrices * * @brief Definition and operations for 3x3 matrices. @@ -180,7 +188,7 @@ struct _Eina_Matrix3_F16p16 * * @since 1.14 */ -EAPI void eina_matrix3_f16p16_identity(Eina_Matrix3_F16p16 *m); +EINA_API void eina_matrix3_f16p16_identity(Eina_Matrix3_F16p16 *m); /** * @brief Sets dst as the matrix multiplication (composition) of two @@ -197,7 +205,7 @@ EAPI void eina_matrix3_f16p16_identity(Eina_Matrix3_F16p16 *m); * * @since 1.14 */ -EAPI void eina_matrix3_f16p16_compose(const Eina_Matrix3_F16p16 *m1, +EINA_API void eina_matrix3_f16p16_compose(const Eina_Matrix3_F16p16 *m1, const Eina_Matrix3_F16p16 *m2, Eina_Matrix3_F16p16 *dst); @@ -212,7 +220,7 @@ EAPI void eina_matrix3_f16p16_compose(const Eina_Matrix3_F16p16 *m1, * * @since 1.14 */ -EAPI Eina_Matrix_Type eina_matrix3_f16p16_type_get(const Eina_Matrix3_F16p16 *m); +EINA_API Eina_Matrix_Type eina_matrix3_f16p16_type_get(const Eina_Matrix3_F16p16 *m); /** * @} @@ -244,7 +252,7 @@ EAPI Eina_Matrix_Type eina_matrix3_f16p16_type_get(const Eina_Matrix3_F16p16 *m) * * @since 1.14 */ -EAPI Eina_Matrix_Type eina_matrix3_type_get(const Eina_Matrix3 *m); +EINA_API Eina_Matrix_Type eina_matrix3_type_get(const Eina_Matrix3 *m); /** * @brief Sets the values of the coefficients of the given floating @@ -268,7 +276,7 @@ EAPI Eina_Matrix_Type eina_matrix3_type_get(const Eina_Matrix3 *m); * * @since 1.14 */ -EAPI void eina_matrix3_values_set(Eina_Matrix3 *m, +EINA_API void eina_matrix3_values_set(Eina_Matrix3 *m, double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz); @@ -295,7 +303,7 @@ EAPI void eina_matrix3_values_set(Eina_Matrix3 *m, * * @since 1.14 */ -EAPI void eina_matrix3_values_get(const Eina_Matrix3 *m, +EINA_API void eina_matrix3_values_get(const Eina_Matrix3 *m, double *xx, double *xy, double *xz, double *yx, double *yy, double *yz, double *zx, double *zy, double *zz); @@ -322,7 +330,7 @@ EAPI void eina_matrix3_values_get(const Eina_Matrix3 *m, * * @since 1.14 */ -EAPI void eina_matrix3_fixed_values_get(const Eina_Matrix3 *m, +EINA_API void eina_matrix3_fixed_values_get(const Eina_Matrix3 *m, Eina_F16p16 *xx, Eina_F16p16 *xy, Eina_F16p16 *xz, Eina_F16p16 *yx, Eina_F16p16 *yy, Eina_F16p16 *yz, Eina_F16p16 *zx, Eina_F16p16 *zy, Eina_F16p16 *zz); @@ -340,7 +348,7 @@ EAPI void eina_matrix3_fixed_values_get(const Eina_Matrix3 *m, * * @since 1.14 */ -EAPI void eina_matrix3_matrix3_f16p16_to(const Eina_Matrix3 *m, +EINA_API void eina_matrix3_matrix3_f16p16_to(const Eina_Matrix3 *m, Eina_Matrix3_F16p16 *fm); /** @@ -355,7 +363,7 @@ EAPI void eina_matrix3_matrix3_f16p16_to(const Eina_Matrix3 *m, * * @since 1.14 */ -EAPI Eina_Bool eina_matrix3_equal(const Eina_Matrix3 *m1, const Eina_Matrix3 *m2); +EINA_API Eina_Bool eina_matrix3_equal(const Eina_Matrix3 *m1, const Eina_Matrix3 *m2); /** * @brief Sets dst as the matrix multiplication (composition) of two matrices. @@ -371,7 +379,7 @@ EAPI Eina_Bool eina_matrix3_equal(const Eina_Matrix3 *m1, const Eina_Matrix3 *m2 * * @since 1.14 */ -EAPI void eina_matrix3_compose(const Eina_Matrix3 *m1, +EINA_API void eina_matrix3_compose(const Eina_Matrix3 *m1, const Eina_Matrix3 *m2, Eina_Matrix3 *dst); @@ -384,7 +392,7 @@ EAPI void eina_matrix3_compose(const Eina_Matrix3 *m1, * * @since 1.14 */ -EAPI void eina_matrix3_translate(Eina_Matrix3 *t, double tx, double ty); +EINA_API void eina_matrix3_translate(Eina_Matrix3 *m, double tx, double ty); /** * @brief Sets the matrix values for a scaling operation. @@ -395,16 +403,16 @@ EAPI void eina_matrix3_translate(Eina_Matrix3 *t, double tx, double ty); * * @since 1.14 */ -EAPI void eina_matrix3_scale(Eina_Matrix3 *t, double sx, double sy); +EINA_API void eina_matrix3_scale(Eina_Matrix3 *m, double sx, double sy); /** * @brief Sets the matrix values for a rotation operation. - * @param[out] t The matrix. + * @param[out] m The matrix. * @param[in] rad The number of radians to rotate. * * @since 1.14 */ -EAPI void eina_matrix3_rotate(Eina_Matrix3 *t, double rad); +EINA_API void eina_matrix3_rotate(Eina_Matrix3 *m, double rad); /** * @brief Sets the given floating point matrix to the identity matrix. @@ -416,7 +424,7 @@ EAPI void eina_matrix3_rotate(Eina_Matrix3 *t, double rad); * * @since 1.14 */ -EAPI void eina_matrix3_identity(Eina_Matrix3 *t); +EINA_API void eina_matrix3_identity(Eina_Matrix3 *m); /** * @brief Calculates the determinant of the given matrix. @@ -429,7 +437,7 @@ EAPI void eina_matrix3_identity(Eina_Matrix3 *t); * * @since 1.14 */ -EAPI double eina_matrix3_determinant(const Eina_Matrix3 *m); +EINA_API double eina_matrix3_determinant(const Eina_Matrix3 *m); /** * @brief Divides the given matrix by a scalar number. @@ -442,7 +450,7 @@ EAPI double eina_matrix3_determinant(const Eina_Matrix3 *m); * * @since 1.14 */ -EAPI void eina_matrix3_divide(Eina_Matrix3 *m, double scalar); +EINA_API void eina_matrix3_divide(Eina_Matrix3 *m, double scalar); /** * @brief Computes the inverse of the given matrix. @@ -456,7 +464,7 @@ EAPI void eina_matrix3_divide(Eina_Matrix3 *m, double scalar); * * @since 1.14 */ -EAPI void eina_matrix3_inverse(const Eina_Matrix3 *m, Eina_Matrix3 *m2); +EINA_API void eina_matrix3_inverse(const Eina_Matrix3 *m, Eina_Matrix3 *m2); /** * @brief Computes the transpose of the given matrix. @@ -470,7 +478,7 @@ EAPI void eina_matrix3_inverse(const Eina_Matrix3 *m, Eina_Matrix3 *m2); * * @since 1.14 */ -EAPI void eina_matrix3_transpose(const Eina_Matrix3 *m, Eina_Matrix3 *a); +EINA_API void eina_matrix3_transpose(const Eina_Matrix3 *m, Eina_Matrix3 *a); /** * @brief Computes the cofactor of the given matrix. @@ -486,7 +494,7 @@ EAPI void eina_matrix3_transpose(const Eina_Matrix3 *m, Eina_Matrix3 *a); * * @since 1.14 */ -EAPI void eina_matrix3_cofactor(const Eina_Matrix3 *m, Eina_Matrix3 *a); +EINA_API void eina_matrix3_cofactor(const Eina_Matrix3 *m, Eina_Matrix3 *a); /** * @brief Computes the adjoint of the given matrix. @@ -500,7 +508,7 @@ EAPI void eina_matrix3_cofactor(const Eina_Matrix3 *m, Eina_Matrix3 *a); * * @since 1.14 */ -EAPI void eina_matrix3_adjoint(const Eina_Matrix3 *m, Eina_Matrix3 *a); +EINA_API void eina_matrix3_adjoint(const Eina_Matrix3 *m, Eina_Matrix3 *a); /** * @brief Computes the transform of a 2D point using the given matrix. @@ -518,7 +526,7 @@ EAPI void eina_matrix3_adjoint(const Eina_Matrix3 *m, Eina_Matrix3 *a); * * @since 1.14 */ -EAPI void eina_matrix3_point_transform(const Eina_Matrix3 *m, +EINA_API void eina_matrix3_point_transform(const Eina_Matrix3 *m, double x, double y, double *xr, double *yr); /** @@ -534,7 +542,7 @@ EAPI void eina_matrix3_point_transform(const Eina_Matrix3 *m, * * @since 1.14 */ -EAPI void eina_matrix3_rectangle_transform(const Eina_Matrix3 *m, +EINA_API void eina_matrix3_rectangle_transform(const Eina_Matrix3 *m, const Eina_Rectangle *r, const Eina_Quad *q); @@ -549,7 +557,7 @@ EAPI void eina_matrix3_rectangle_transform(const Eina_Matrix3 *m, * Calculates a matrix @p m that can be used to transform from an arbitrary * source quadrangle @p src to another arbitrary quadrangle @p dst. */ -EAPI Eina_Bool eina_matrix3_quad_quad_map(Eina_Matrix3 *m, +EINA_API Eina_Bool eina_matrix3_quad_quad_map(Eina_Matrix3 *m, const Eina_Quad *src, const Eina_Quad *dst); @@ -568,7 +576,7 @@ EAPI Eina_Bool eina_matrix3_quad_quad_map(Eina_Matrix3 *m, * * @since 1.14 */ -EAPI Eina_Bool eina_matrix3_square_quad_map(Eina_Matrix3 *m, +EINA_API Eina_Bool eina_matrix3_square_quad_map(Eina_Matrix3 *m, const Eina_Quad *q); /** @@ -585,7 +593,7 @@ EAPI Eina_Bool eina_matrix3_square_quad_map(Eina_Matrix3 *m, * * @since 1.14 */ -EAPI Eina_Bool eina_matrix3_quad_square_map(Eina_Matrix3 *m, +EINA_API Eina_Bool eina_matrix3_quad_square_map(Eina_Matrix3 *m, const Eina_Quad *q); /** @@ -600,7 +608,7 @@ EAPI Eina_Bool eina_matrix3_quad_square_map(Eina_Matrix3 *m, * * @since 1.17 */ -EAPI void eina_matrix3_array_set(Eina_Matrix3 *m, const double *v); +EINA_API void eina_matrix3_array_set(Eina_Matrix3 *m, const double *v); /** * @brief Copies a matrix. @@ -610,7 +618,7 @@ EAPI void eina_matrix3_array_set(Eina_Matrix3 *m, const double *v); * * @since 1.16 */ -EAPI void eina_matrix3_copy(Eina_Matrix3 *dst, const Eina_Matrix3 *src); +EINA_API void eina_matrix3_copy(Eina_Matrix3 *dst, const Eina_Matrix3 *src); /** * @brief Multiplies two matrices. @@ -625,7 +633,7 @@ EAPI void eina_matrix3_copy(Eina_Matrix3 *dst, const Eina_Matrix3 *src); * * @since 1.17 */ -EAPI void eina_matrix3_multiply(Eina_Matrix3 *out, const Eina_Matrix3 *mat_a, +EINA_API void eina_matrix3_multiply(Eina_Matrix3 *out, const Eina_Matrix3 *mat_a, const Eina_Matrix3 *mat_b); /** @@ -641,7 +649,7 @@ EAPI void eina_matrix3_multiply(Eina_Matrix3 *out, const Eina_Matrix3 *mat_a, * * @since 1.17 */ -EAPI void eina_matrix3_multiply_copy(Eina_Matrix3 *out, const Eina_Matrix3 *mat_a, +EINA_API void eina_matrix3_multiply_copy(Eina_Matrix3 *out, const Eina_Matrix3 *mat_a, const Eina_Matrix3 *mat_b); /** @@ -656,7 +664,7 @@ EAPI void eina_matrix3_multiply_copy(Eina_Matrix3 *out, const Eina_Matrix3 *mat_ * * @since 1.17 */ -EAPI void eina_matrix3_scale_transform_set(Eina_Matrix3 *out, double s_x, double s_y); +EINA_API void eina_matrix3_scale_transform_set(Eina_Matrix3 *out, double s_x, double s_y); /** * @brief Sets the positional parameters (XZ, YZ) of a matrix. @@ -670,7 +678,7 @@ EAPI void eina_matrix3_scale_transform_set(Eina_Matrix3 *out, double s_x, double * @since 1.17 */ -EAPI void eina_matrix3_position_transform_set(Eina_Matrix3 *out, const double p_x, +EINA_API void eina_matrix3_position_transform_set(Eina_Matrix3 *out, const double p_x, const double p_y); /** @@ -681,7 +689,7 @@ EAPI void eina_matrix3_position_transform_set(Eina_Matrix3 *out, const double p_ * * @since 1.17 */ -EAPI void eina_normal3_matrix_get(Eina_Matrix3 *out, const Eina_Matrix4 *m); +EINA_API void eina_normal3_matrix_get(Eina_Matrix3 *out, const Eina_Matrix4 *m); /** * @brief Converts an Eina_Matrix3 into an Eina_Matrix4. @@ -691,7 +699,7 @@ EAPI void eina_normal3_matrix_get(Eina_Matrix3 *out, const Eina_Matrix4 *m); * * @since 1.15 */ -EAPI void eina_matrix3_matrix4_to(Eina_Matrix4 *m4, const Eina_Matrix3 *m3); +EINA_API void eina_matrix3_matrix4_to(Eina_Matrix4 *m4, const Eina_Matrix3 *m3); /** * @} @@ -714,7 +722,7 @@ EAPI void eina_matrix3_matrix4_to(Eina_Matrix4 *m4, const Eina_Matrix3 *m3); * * @since 1.15 */ -EAPI Eina_Matrix_Type eina_matrix4_type_get(const Eina_Matrix4 *m); +EINA_API Eina_Matrix_Type eina_matrix4_type_get(const Eina_Matrix4 *m); /** * @brief Sets the values of the coefficients of the given floating @@ -745,7 +753,7 @@ EAPI Eina_Matrix_Type eina_matrix4_type_get(const Eina_Matrix4 *m); * * @since 1.15 */ -EAPI void eina_matrix4_values_set(Eina_Matrix4 *m, +EINA_API void eina_matrix4_values_set(Eina_Matrix4 *m, double xx, double xy, double xz, double xw, double yx, double yy, double yz, double yw, double zx, double zy, double zz, double zw, @@ -780,7 +788,7 @@ EAPI void eina_matrix4_values_set(Eina_Matrix4 *m, * * @since 1.15 */ -EAPI void eina_matrix4_values_get(const Eina_Matrix4 *m, +EINA_API void eina_matrix4_values_get(const Eina_Matrix4 *m, double *xx, double *xy, double *xz, double *xw, double *yx, double *yy, double *yz, double *yw, double *zx, double *zy, double *zz, double *zw, @@ -797,7 +805,7 @@ EAPI void eina_matrix4_values_get(const Eina_Matrix4 *m, * * @since 1.16 */ -EAPI double eina_matrix4_determinant(const Eina_Matrix4 *m); +EINA_API double eina_matrix4_determinant(const Eina_Matrix4 *m); /** * @brief Normalizes the given matrix. @@ -812,7 +820,7 @@ EAPI double eina_matrix4_determinant(const Eina_Matrix4 *m); * * @since 1.16 */ -EAPI Eina_Bool eina_matrix4_normalized(Eina_Matrix4 *out, +EINA_API Eina_Bool eina_matrix4_normalized(Eina_Matrix4 *out, const Eina_Matrix4 *in); /** @@ -828,7 +836,7 @@ EAPI Eina_Bool eina_matrix4_normalized(Eina_Matrix4 *out, * * @since 1.16 */ -EAPI Eina_Bool eina_matrix4_inverse(Eina_Matrix4 *out, const Eina_Matrix4 *in); +EINA_API Eina_Bool eina_matrix4_inverse(Eina_Matrix4 *out, const Eina_Matrix4 *in); /** * @brief Computes the transpose of the given matrix. @@ -842,7 +850,7 @@ EAPI Eina_Bool eina_matrix4_inverse(Eina_Matrix4 *out, const Eina_Matrix4 *in); * * @since 1.16 */ -EAPI void eina_matrix4_transpose(Eina_Matrix4 *out, const Eina_Matrix4 *in); +EINA_API void eina_matrix4_transpose(Eina_Matrix4 *out, const Eina_Matrix4 *in); /** * @brief Converts an Eina_Matrix4 into an Eina_Matrix3. @@ -852,7 +860,7 @@ EAPI void eina_matrix4_transpose(Eina_Matrix4 *out, const Eina_Matrix4 *in); * * @since 1.15 */ -EAPI void eina_matrix4_matrix3_to(Eina_Matrix3 *m3, const Eina_Matrix4 *m4); +EINA_API void eina_matrix4_matrix3_to(Eina_Matrix3 *m3, const Eina_Matrix4 *m4); /** * @brief Sets the given matrix to identity. @@ -861,7 +869,7 @@ EAPI void eina_matrix4_matrix3_to(Eina_Matrix3 *m3, const Eina_Matrix4 *m4); * * @since 1.16 */ -EAPI void eina_matrix4_identity(Eina_Matrix4 *out); +EINA_API void eina_matrix4_identity(Eina_Matrix4 *out); /** * @brief Multiplies two matrix. @@ -876,7 +884,7 @@ EAPI void eina_matrix4_identity(Eina_Matrix4 *out); * * @since 1.17 */ -EAPI void eina_matrix4_multiply_copy(Eina_Matrix4 *out, +EINA_API void eina_matrix4_multiply_copy(Eina_Matrix4 *out, const Eina_Matrix4 *mat_a, const Eina_Matrix4 *mat_b); /** @@ -891,7 +899,7 @@ EAPI void eina_matrix4_multiply_copy(Eina_Matrix4 *out, * * @since 1.17 */ -EAPI void eina_matrix4_array_set(Eina_Matrix4 *m, const double *v); +EINA_API void eina_matrix4_array_set(Eina_Matrix4 *m, const double *v); /** * @brief Copies matrix. @@ -901,7 +909,7 @@ EAPI void eina_matrix4_array_set(Eina_Matrix4 *m, const double *v); * * @since 1.17 */ -EAPI void eina_matrix4_copy(Eina_Matrix4 *dst, const Eina_Matrix4 *src); +EINA_API void eina_matrix4_copy(Eina_Matrix4 *dst, const Eina_Matrix4 *src); /** * @brief Multiplies two matrices with check. @@ -912,7 +920,7 @@ EAPI void eina_matrix4_copy(Eina_Matrix4 *dst, const Eina_Matrix4 *src); * * @since 1.17 */ -EAPI void eina_matrix4_multiply(Eina_Matrix4 *out, const Eina_Matrix4 *mat_a, +EINA_API void eina_matrix4_multiply(Eina_Matrix4 *out, const Eina_Matrix4 *mat_a, const Eina_Matrix4 *mat_b); /** @@ -928,10 +936,63 @@ EAPI void eina_matrix4_multiply(Eina_Matrix4 *out, const Eina_Matrix4 *mat_a, * * @since 1.17 */ -EAPI void eina_matrix4_ortho_set(Eina_Matrix4 *m, +EINA_API void eina_matrix4_ortho_set(Eina_Matrix4 *m, double left, double right, double bottom, double top, double dnear, double dfar); + +/** + * @brief Sets out as the matrix multiplication (composition) of two matrices. + * + * @param[in] mat_a The first matrix. Must be non-NULL. + * @param[in] mat_b The second matrix. Must be non-NULL. + * @param[out] out The results matrix. + * + * In matrix multiplication, AB, the resultant matrix is created from + * the rows of A multiplied against the columns of B and summed. This + * is not commutative; i.e. AB != BA, so the ordering of arguments + * @p m1 and @p m2 matters. + * + * @since 1.24 + */ +EINA_API void eina_matrix4_compose(const Eina_Matrix4 *mat_a, + const Eina_Matrix4 *mat_b, + Eina_Matrix4 *out); + +/** + * @brief Sets the matrix values for a translation operation. + * + * @param[out] t Where to store the resulting matrix. + * @param[in] tx The X coordinate translation. + * @param[in] ty The Y coordinate translation. + * @param[in] tz The Z coordinate translation. + * + * @since 1.24 + */ +EINA_API void eina_matrix4_translate(Eina_Matrix4 *t, double tx, double ty, double tz); + +/** + * @brief Sets the matrix values for a scaling operation. + * + * @param[out] t Where to store the resulting matrix. + * @param[in] sx The X coordinate scaling factor. + * @param[in] sy The Y coordinate scaling factor. + * @param[in] sz The Z coordinate scaling factor. + * + * @since 1.24 + */ +EINA_API void eina_matrix4_scale(Eina_Matrix4 *t, double sx, double sy, double sz); + +/** + * @brief Sets the matrix values for a rotation operation. + * @param[out] t Where to store the resulting matrix. + * @param[in] rad The number of radians to rotate. + * @param[in] axis The Axis of rotation. + * + * @since 1.24 + */ +EINA_API void eina_matrix4_rotate(Eina_Matrix4 *t, double rad, Eina_Matrix_Axis axis); + /** * @} */ @@ -980,7 +1041,7 @@ struct _Eina_Matrix2 * * @since 1.17 */ -EAPI void eina_matrix2_values_set(Eina_Matrix2 *m, double xx, double xy, +EINA_API void eina_matrix2_values_set(Eina_Matrix2 *m, double xx, double xy, double yx, double yy); /** @@ -1000,7 +1061,7 @@ EAPI void eina_matrix2_values_set(Eina_Matrix2 *m, double xx, double xy, * * @since 1.17 */ -EAPI void eina_matrix2_values_get(const Eina_Matrix2 *m, double *xx, double *xy, +EINA_API void eina_matrix2_values_get(const Eina_Matrix2 *m, double *xx, double *xy, double *yx, double *yy); /** @@ -1015,7 +1076,7 @@ EAPI void eina_matrix2_values_get(const Eina_Matrix2 *m, double *xx, double *xy, * * @since 1.17 */ -EAPI void eina_matrix2_inverse(Eina_Matrix2 *out, const Eina_Matrix2 *mat); +EINA_API void eina_matrix2_inverse(Eina_Matrix2 *out, const Eina_Matrix2 *mat); /** * @brief Sets the given floating point matrix to the identity matrix. @@ -1027,7 +1088,7 @@ EAPI void eina_matrix2_inverse(Eina_Matrix2 *out, const Eina_Matrix2 *mat); * * @since 1.17 */ -EAPI void eina_matrix2_identity(Eina_Matrix2 *m); +EINA_API void eina_matrix2_identity(Eina_Matrix2 *m); /** * @brief Sets array to matrix. @@ -1039,7 +1100,7 @@ EAPI void eina_matrix2_identity(Eina_Matrix2 *m); * * @since 1.17 */ -EAPI void eina_matrix2_array_set(Eina_Matrix2 *m, const double *v); +EINA_API void eina_matrix2_array_set(Eina_Matrix2 *m, const double *v); /** * @brief Copies matrix. @@ -1049,7 +1110,7 @@ EAPI void eina_matrix2_array_set(Eina_Matrix2 *m, const double *v); * * @since 1.17 */ -EAPI void eina_matrix2_copy(Eina_Matrix2 *dst, const Eina_Matrix2 *src); +EINA_API void eina_matrix2_copy(Eina_Matrix2 *dst, const Eina_Matrix2 *src); /** * @brief Multiplies two matrices. @@ -1060,7 +1121,7 @@ EAPI void eina_matrix2_copy(Eina_Matrix2 *dst, const Eina_Matrix2 *src); * * @since 1.17 */ -EAPI void eina_matrix2_multiply(Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, +EINA_API void eina_matrix2_multiply(Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, const Eina_Matrix2 *mat_b); /** @@ -1072,7 +1133,7 @@ EAPI void eina_matrix2_multiply(Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, * * @since 1.17 */ -EAPI void eina_matrix2_multiply_copy(Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, +EINA_API void eina_matrix2_multiply_copy(Eina_Matrix2 *out, const Eina_Matrix2 *mat_a, const Eina_Matrix2 *mat_b); /** @@ -1086,7 +1147,7 @@ EAPI void eina_matrix2_multiply_copy(Eina_Matrix2 *out, const Eina_Matrix2 *mat_ * * @since 1.17 */ -EAPI Eina_Matrix_Type eina_matrix2_type_get(const Eina_Matrix2 *m); +EINA_API Eina_Matrix_Type eina_matrix2_type_get(const Eina_Matrix2 *m); /** * @} |