fast image operations
Diffstat (limited to 'benches/affine_transformations.rs')
| -rw-r--r-- | benches/affine_transformations.rs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/benches/affine_transformations.rs b/benches/affine_transformations.rs new file mode 100644 index 0000000..b74d9ba --- /dev/null +++ b/benches/affine_transformations.rs @@ -0,0 +1,23 @@ +use fimg::*; + +macro_rules! bench { + (fn $name: ident() { run $fn: ident() }) => { + fn $name() { + let mut img: Image<_, 4> = + Image::build(160, 160).buf(include_bytes!("4_160x160.imgbuf").to_vec()); + for _ in 0..256 { + #[allow(unused_unsafe)] + unsafe { + img.$fn() + }; + } + } + }; +} + +bench!(fn flip_h() { run flip_h() }); +bench!(fn flip_v() { run flip_v() }); +bench!(fn rotate_90() { run rot_90() }); +bench!(fn rotate_180() { run rot_180() }); +bench!(fn rotate_270() { run rot_270() }); +iai::main!(flip_h, flip_v, rotate_90, rotate_180, rotate_270); |