summaryrefslogtreecommitdiffstats
path: root/art_affine.h
diff options
context:
space:
mode:
authorSlávek Banko <[email protected]>2019-04-22 20:57:31 +0200
committerSlávek Banko <[email protected]>2019-04-23 20:48:39 +0200
commit2a50894a436559785a7e0f6f65dde13b0082572c (patch)
tree560491aa8af08f16cb61cf8815aca8b5100d9e1d /art_affine.h
parent87237501c51b48ba3b802efbd47776bb7e410c2a (diff)
downloadlibart-lgpl-2a50894a436559785a7e0f6f65dde13b0082572c.tar.gz
libart-lgpl-2a50894a436559785a7e0f6f65dde13b0082572c.zip
Add support for GCC hidden visibility.
Signed-off-by: Slávek Banko <[email protected]>
Diffstat (limited to 'art_affine.h')
-rw-r--r--art_affine.h28
1 files changed, 15 insertions, 13 deletions
diff --git a/art_affine.h b/art_affine.h
index c2baa1e..38982ae 100644
--- a/art_affine.h
+++ b/art_affine.h
@@ -21,8 +21,10 @@
#define __ART_AFFINE_H__
#ifdef LIBART_COMPILATION
+#include "art_config.h"
#include "art_point.h"
#else
+#include <libart_lgpl/art_config.h>
#include <libart_lgpl/art_point.h>
#endif
@@ -30,59 +32,59 @@
extern "C" {
#endif /* __cplusplus */
-void
+LIBART_EXPORT void
art_affine_point (ArtPoint *dst, const ArtPoint *src,
const double affine[6]);
-void
+LIBART_EXPORT void
art_affine_invert (double dst_affine[6], const double src_affine[6]);
/* flip the matrix, FALSE, FALSE is a simple copy operation, and
TRUE, TRUE equals a rotation by 180 degrees */
-void
+LIBART_EXPORT void
art_affine_flip (double dst_affine[6], const double src_affine[6],
int horz, int vert);
-void
+LIBART_EXPORT void
art_affine_to_string (char str[128], const double src[6]);
-void
+LIBART_EXPORT void
art_affine_multiply (double dst[6],
const double src1[6], const double src2[6]);
/* set up the identity matrix */
-void
+LIBART_EXPORT void
art_affine_identity (double dst[6]);
/* set up a scaling matrix */
-void
+LIBART_EXPORT void
art_affine_scale (double dst[6], double sx, double sy);
/* set up a rotation matrix; theta is given in degrees */
-void
+LIBART_EXPORT void
art_affine_rotate (double dst[6], double theta);
/* set up a shearing matrix; theta is given in degrees */
-void
+LIBART_EXPORT void
art_affine_shear (double dst[6], double theta);
/* set up a translation matrix */
-void
+LIBART_EXPORT void
art_affine_translate (double dst[6], double tx, double ty);
/* find the affine's "expansion factor", i.e. the scale amount */
-double
+LIBART_EXPORT double
art_affine_expansion (const double src[6]);
/* Determine whether the affine transformation is rectilinear,
i.e. whether a rectangle aligned to the grid is transformed into
another rectangle aligned to the grid. */
-int
+LIBART_EXPORT int
art_affine_rectilinear (const double src[6]);
/* Determine whether two affine transformations are equal within grid allignment */
-int
+LIBART_EXPORT int
art_affine_equal (double matrix1[6], double matrix2[6]);