1use thiserror::Error;
2
3#[derive(Debug, Error)]
4pub enum Error {
5 #[error(transparent)]
6 Utf8(#[from] std::str::Utf8Error),
7 #[error(transparent)]
8 FromUtf8(#[from] std::string::FromUtf8Error),
9 #[error(transparent)]
10 FromBytesUntilNull(#[from] std::ffi::FromBytesUntilNulError),
11 #[error(transparent)]
12 Nul(#[from] std::ffi::NulError),
13
14 #[error("LibCZIAPI Ok")]
15 LibCziApiOK,
16 #[error("LibCZIAPI invalid argument")]
17 LibCziApiInvalidArgument,
18 #[error("LibCZIAPI invalid handle")]
19 LibCziApiInvalidHandle,
20 #[error("LibCZIAPI out of memory")]
21 LibCziApiOutOfMemory,
22 #[error("LibCZIAPI index out of range")]
23 LibCziApiIndexOutOfRange,
24 #[error("LibCZIAPI lock-unlock semantic violated")]
25 LibCziApiLockUnlockSemanticViolated,
26 #[error("LibCZIAPI unspecified error")]
27 LibCziApiUnspecifiedError,
28 #[error("LibCZIAPI unknown error code: {0}")]
29 LibCziApiUnknownError(usize),
30 #[error("Unknown dimension: {0}")]
31 UnknownDimension(String),
32 #[error("Unknown data type: {0}")]
33 UnknownDataType(i32),
34 #[error("Unknown pixel type: {0}")]
35 UnknownPixelType(i32),
36}