summaryrefslogtreecommitdiff
path: root/gst/geometrictransform
diff options
context:
space:
mode:
authorGeorge Kiagiadakis <george.kiagiadakis@collabora.com>2015-10-26 16:51:06 +0100
committerGeorge Kiagiadakis <george.kiagiadakis@collabora.com>2015-10-26 16:51:06 +0100
commitf1ced59ccb5fb17cb0b23fd022ebd2fbb71c5d05 (patch)
treec2aab64deb4e56eedba15c2f219cc31225e96c82 /gst/geometrictransform
parentc2f34b981427f2698ce47195627a40894b640962 (diff)
downloadgstreamer-plugins-bad-f1ced59ccb5fb17cb0b23fd022ebd2fbb71c5d05.tar.gz
geometrictransform: rename gemetric math functions to have their symbols namespaced
Otherwise those symbols can conflict with external libraries when linking everything statically for mobile targets. Use the gst_gm_ prefix, short for gst geometric math. https://bugzilla.gnome.org/show_bug.cgi?id=756882
Diffstat (limited to 'gst/geometrictransform')
-rw-r--r--gst/geometrictransform/geometricmath.c20
-rw-r--r--gst/geometrictransform/geometricmath.h14
-rw-r--r--gst/geometrictransform/gstbulge.c4
-rw-r--r--gst/geometrictransform/gstcircle.c2
-rw-r--r--gst/geometrictransform/gstgeometrictransform.c4
-rw-r--r--gst/geometrictransform/gstkaleidoscope.c4
-rw-r--r--gst/geometrictransform/gstmarble.c6
-rw-r--r--gst/geometrictransform/gstmarble.h2
-rw-r--r--gst/geometrictransform/gstsquare.c8
-rw-r--r--gst/geometrictransform/gststretch.c4
10 files changed, 34 insertions, 34 deletions
diff --git a/gst/geometrictransform/geometricmath.c b/gst/geometrictransform/geometricmath.c
index 1ca5a785e..6c7949e1c 100644
--- a/gst/geometrictransform/geometricmath.c
+++ b/gst/geometrictransform/geometricmath.c
@@ -54,7 +54,7 @@
#define B 0x100
#define BM 0xff
-struct _Noise
+struct _GstGMNoise
{
gdouble p[2 * B + 2];
gdouble g2[2 * B + 2][2];
@@ -69,10 +69,10 @@ normalize_2 (gdouble * v)
v[1] = v[1] / s;
}
-Noise *
-noise_new (void)
+GstGMNoise *
+gst_gm_noise_new (void)
{
- Noise *noise = g_new0 (Noise, 1);
+ GstGMNoise *noise = g_new0 (GstGMNoise, 1);
gint i, j, k;
for (i = 0; i < B; i++) {
@@ -102,7 +102,7 @@ noise_new (void)
}
void
-noise_free (Noise * noise)
+gst_gm_noise_free (GstGMNoise * noise)
{
g_free (noise);
}
@@ -120,7 +120,7 @@ lerp (gdouble t, gdouble a, gdouble b)
}
gdouble
-noise_2 (Noise * noise, gdouble x, gdouble y)
+gst_gm_noise_2 (GstGMNoise * noise, gdouble x, gdouble y)
{
gint bx0, bx1, by0, by1, b00, b10, b01, b11;
gdouble rx0, rx1, ry0, ry1, sx, sy, a, b, t, u, v;
@@ -169,7 +169,7 @@ noise_2 (Noise * noise, gdouble x, gdouble y)
* This differs from the % operator with respect to negative numbers
*/
gdouble
-mod_float (gdouble a, gdouble b)
+gst_gm_mod_float (gdouble a, gdouble b)
{
gint n = (gint) (a / b);
@@ -183,9 +183,9 @@ mod_float (gdouble a, gdouble b)
* Returns a repeating triangle shape in the range 0..1 with wavelength 1.0
*/
gdouble
-geometric_math_triangle (gdouble x)
+gst_gm_triangle (gdouble x)
{
- gdouble r = mod_float (x, 1.0);
+ gdouble r = gst_gm_mod_float (x, 1.0);
return 2.0 * (r < 0.5 ? r : 1 - r);
}
@@ -194,7 +194,7 @@ geometric_math_triangle (gdouble x)
* Hermite interpolation
*/
gdouble
-smoothstep (gdouble edge0, gdouble edge1, gdouble x)
+gst_gm_smoothstep (gdouble edge0, gdouble edge1, gdouble x)
{
gdouble t = CLAMP ((x - edge0) / (edge1 - edge0), 0.0, 1.0);
return t * t * (3.0 - 2.0 * t);
diff --git a/gst/geometrictransform/geometricmath.h b/gst/geometrictransform/geometricmath.h
index 0c6ccdcba..40451d820 100644
--- a/gst/geometrictransform/geometricmath.h
+++ b/gst/geometrictransform/geometricmath.h
@@ -54,16 +54,16 @@
G_BEGIN_DECLS
-typedef struct _Noise Noise;
+typedef struct _GstGMNoise GstGMNoise;
-Noise * noise_new (void);
-void noise_free (Noise * noise);
-gdouble noise_2 (Noise * noise, gdouble x, gdouble y);
+GstGMNoise * gst_gm_noise_new (void);
+void gst_gm_noise_free (GstGMNoise * noise);
+gdouble gst_gm_noise_2 (GstGMNoise * noise, gdouble x, gdouble y);
-gdouble mod_float (gdouble a, gdouble b);
-gdouble geometric_math_triangle (gdouble x);
+gdouble gst_gm_mod_float (gdouble a, gdouble b);
+gdouble gst_gm_triangle (gdouble x);
-gdouble smoothstep (gdouble edge0, gdouble edge1, gdouble x);
+gdouble gst_gm_smoothstep (gdouble edge0, gdouble edge1, gdouble x);
G_END_DECLS
diff --git a/gst/geometrictransform/gstbulge.c b/gst/geometrictransform/gstbulge.c
index 5864c83e0..4baf22357 100644
--- a/gst/geometrictransform/gstbulge.c
+++ b/gst/geometrictransform/gstbulge.c
@@ -140,8 +140,8 @@ bulge_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
* zoom is achieved dividing */
scale =
- 1.0 / (bulge->zoom + ((1.0 - bulge->zoom) * smoothstep (0, cgt->radius,
- r)));
+ 1.0 / (bulge->zoom + ((1.0 - bulge->zoom) * gst_gm_smoothstep (0,
+ cgt->radius, r)));
norm_x *= scale;
norm_y *= scale;
diff --git a/gst/geometrictransform/gstcircle.c b/gst/geometrictransform/gstcircle.c
index cbbd41559..cf6ab01d9 100644
--- a/gst/geometrictransform/gstcircle.c
+++ b/gst/geometrictransform/gstcircle.c
@@ -158,7 +158,7 @@ circle_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
distance = sqrt (dx * dx + dy * dy);
theta = atan2 (-dy, -dx) + circle->angle;
- theta = mod_float (theta, 2 * G_PI);
+ theta = gst_gm_mod_float (theta, 2 * G_PI);
*in_x = gt->width * theta / (circle->spread_angle + 0.0001);
*in_y =
diff --git a/gst/geometrictransform/gstgeometrictransform.c b/gst/geometrictransform/gstgeometrictransform.c
index 7cfaafd0e..94910ed2e 100644
--- a/gst/geometrictransform/gstgeometrictransform.c
+++ b/gst/geometrictransform/gstgeometrictransform.c
@@ -181,8 +181,8 @@ gst_geometric_transform_do_map (GstGeometricTransform * gt, guint8 * in_data,
break;
case GST_GT_OFF_EDGES_PIXELS_WRAP:
- in_x = mod_float (in_x, gt->width);
- in_y = mod_float (in_y, gt->height);
+ in_x = gst_gm_mod_float (in_x, gt->width);
+ in_y = gst_gm_mod_float (in_y, gt->height);
if (in_x < 0)
in_x += gt->width;
if (in_y < 0)
diff --git a/gst/geometrictransform/gstkaleidoscope.c b/gst/geometrictransform/gstkaleidoscope.c
index 9caf7f420..554655851 100644
--- a/gst/geometrictransform/gstkaleidoscope.c
+++ b/gst/geometrictransform/gstkaleidoscope.c
@@ -158,12 +158,12 @@ kaleidoscope_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
distance = sqrt (dx * dx + dy * dy);
theta = atan2 (dy, dx) - kaleidoscope->angle - kaleidoscope->angle2;
- theta = geometric_math_triangle (theta / G_PI * kaleidoscope->sides * 0.5);
+ theta = gst_gm_triangle (theta / G_PI * kaleidoscope->sides * 0.5);
if (cgt->precalc_radius != 0) {
gdouble radiusc = cgt->precalc_radius / cos (theta);
- distance = radiusc * geometric_math_triangle (distance / radiusc);
+ distance = radiusc * gst_gm_triangle (distance / radiusc);
}
theta += kaleidoscope->angle;
diff --git a/gst/geometrictransform/gstmarble.c b/gst/geometrictransform/gstmarble.c
index 08bbd3cb2..a268a3d6d 100644
--- a/gst/geometrictransform/gstmarble.c
+++ b/gst/geometrictransform/gstmarble.c
@@ -158,7 +158,7 @@ gst_marble_finalize (GObject * obj)
{
GstMarble *marble = GST_MARBLE_CAST (obj);
- noise_free (marble->noise);
+ gst_gm_noise_free (marble->noise);
g_free (marble->sin_table);
g_free (marble->cos_table);
@@ -172,7 +172,7 @@ marble_prepare (GstGeometricTransform * trans)
gint i;
if (!marble->noise) {
- marble->noise = noise_new ();
+ marble->noise = gst_gm_noise_new ();
}
g_free (marble->sin_table);
@@ -197,7 +197,7 @@ marble_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
GstMarble *marble = GST_MARBLE_CAST (gt);
gint displacement;
- displacement = 127 * (1 + noise_2 (marble->noise, x / marble->xscale,
+ displacement = 127 * (1 + gst_gm_noise_2 (marble->noise, x / marble->xscale,
y / marble->xscale));
displacement = CLAMP (displacement, 0, 255);
diff --git a/gst/geometrictransform/gstmarble.h b/gst/geometrictransform/gstmarble.h
index b74768f88..2665775ab 100644
--- a/gst/geometrictransform/gstmarble.h
+++ b/gst/geometrictransform/gstmarble.h
@@ -76,7 +76,7 @@ struct _GstMarble
gdouble turbulence;
gdouble amount;
- Noise *noise;
+ GstGMNoise *noise;
gdouble *sin_table;
gdouble *cos_table;
};
diff --git a/gst/geometrictransform/gstsquare.c b/gst/geometrictransform/gstsquare.c
index 8e4c99cbc..ba0d2bf4f 100644
--- a/gst/geometrictransform/gstsquare.c
+++ b/gst/geometrictransform/gstsquare.c
@@ -157,12 +157,12 @@ square_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
/* zoom at the center, smoothstep around half quadrant and get back to normal */
norm_x *=
(1.0 / square->zoom) * (1.0 + (square->zoom -
- 1.0) * smoothstep (square->width - 0.125, square->width + 0.125,
- ABS (norm_x)));
+ 1.0) * gst_gm_smoothstep (square->width - 0.125,
+ square->width + 0.125, ABS (norm_x)));
norm_y *=
(1.0 / square->zoom) * (1.0 + (square->zoom -
- 1.0) * smoothstep (square->height - 0.125, square->height + 0.125,
- ABS (norm_y)));
+ 1.0) * gst_gm_smoothstep (square->height - 0.125,
+ square->height + 0.125, ABS (norm_y)));
/* unnormalize */
*in_x = 0.5 * (norm_x + 1.0) * width;
diff --git a/gst/geometrictransform/gststretch.c b/gst/geometrictransform/gststretch.c
index f9b3344de..f0c7998fe 100644
--- a/gst/geometrictransform/gststretch.c
+++ b/gst/geometrictransform/gststretch.c
@@ -145,8 +145,8 @@ stretch_map (GstGeometricTransform * gt, gint x, gint y, gdouble * in_x,
a = 1.0 + (MAX_SHRINK_AMOUNT - 1.0) * stretch->intensity;
b = a - 1.0;
- norm_x *= a - b * smoothstep (0.0, cgt->radius, r);
- norm_y *= a - b * smoothstep (0.0, cgt->radius, r);
+ norm_x *= a - b * gst_gm_smoothstep (0.0, cgt->radius, r);
+ norm_y *= a - b * gst_gm_smoothstep (0.0, cgt->radius, r);
/* unnormalize */
*in_x = (0.5 * norm_x + cgt->x_center) * width;