Skip to main content

ad_core/
codec.rs

1/// Codec names for compressed NDArray data.
2#[derive(Debug, Clone, Copy, PartialEq, Eq)]
3pub enum CodecName {
4    None,
5    JPEG,
6    LZ4,
7    Blosc,
8}
9
10/// Codec information attached to an NDArray.
11#[derive(Debug, Clone)]
12pub struct Codec {
13    pub name: CodecName,
14    pub compressed_size: usize,
15}
16
17#[cfg(test)]
18mod tests {
19    use super::*;
20
21    #[test]
22    fn test_codec_clone() {
23        let c = Codec { name: CodecName::LZ4, compressed_size: 1024 };
24        let c2 = c.clone();
25        assert_eq!(c2.name, CodecName::LZ4);
26        assert_eq!(c2.compressed_size, 1024);
27    }
28
29    #[test]
30    fn test_codec_name_none() {
31        assert_eq!(CodecName::None, CodecName::None);
32        assert_ne!(CodecName::None, CodecName::JPEG);
33    }
34}