rusty_vision/io/reader.rs
1use std::fs::File;
2
3use crate::{
4 codec::{decoders::png::decode, Codex},
5 error::Error,
6 image::Image,
7};
8
9pub trait Reader {
10 fn read(path: &str, codex: Codex) -> Result<Image, Error>;
11}
12
13impl Reader for Image {
14 fn read(path: &str, codex: Codex) -> Result<Image, Error> {
15 let mut file = File::open(path)?;
16
17 match codex {
18 Codex::PNG => Ok(decode(&mut file)?),
19 Codex::JPG => todo!(),
20 }
21 }
22}