aboutsummaryrefslogtreecommitdiffstats
path: root/components/canvas_traits/canvas.rs
diff options
context:
space:
mode:
authorAnthony Ramine <n.oxyde@gmail.com>2018-10-06 00:40:48 +0200
committerAnthony Ramine <n.oxyde@gmail.com>2018-10-06 01:11:55 +0200
commit784fbb2bc17d311fe3322cc48d2dca8a902161ca (patch)
tree2194d8d1bb0fbb7d7c50f3fbcc83b40bb28b3ea8 /components/canvas_traits/canvas.rs
parenta2e3dd4e8636b7125140850dc4bc95433e801e77 (diff)
downloadservo-784fbb2bc17d311fe3322cc48d2dca8a902161ca.tar.gz
servo-784fbb2bc17d311fe3322cc48d2dca8a902161ca.zip
Merge some byte swap/premultiply functions in their own crate
Diffstat (limited to 'components/canvas_traits/canvas.rs')
-rw-r--r--components/canvas_traits/canvas.rs35
1 files changed, 0 insertions, 35 deletions
diff --git a/components/canvas_traits/canvas.rs b/components/canvas_traits/canvas.rs
index 1fcf1a89a4a..6c7022c62a8 100644
--- a/components/canvas_traits/canvas.rs
+++ b/components/canvas_traits/canvas.rs
@@ -382,38 +382,3 @@ impl FromStr for CompositionOrBlending {
Err(())
}
}
-
-// TODO(pcwalton): Speed up with SIMD, or better yet, find some way to not do this.
-pub fn byte_swap(data: &mut [u8]) {
- let length = data.len();
- // FIXME(rust #27741): Range::step_by is not stable yet as of this writing.
- let mut i = 0;
- while i < length {
- let r = data[i + 2];
- data[i + 2] = data[i + 0];
- data[i + 0] = r;
- i += 4;
- }
-}
-
-pub fn multiply_u8_pixel(a: u8, b: u8) -> u8 {
- return (a as u32 * b as u32 / 255) as u8;
-}
-
-pub fn byte_swap_and_premultiply(data: &mut [u8]) {
- let length = data.len();
-
- let mut i = 0;
- while i < length {
- let r = data[i + 2];
- let g = data[i + 1];
- let b = data[i + 0];
- let a = data[i + 3];
-
- data[i + 0] = multiply_u8_pixel(r, a);
- data[i + 1] = multiply_u8_pixel(g, a);
- data[i + 2] = multiply_u8_pixel(b, a);
-
- i += 4;
- }
-}