1#[derive(Debug, thiserror::Error)]
2pub enum Error {
3 #[error("image error: {0}")]
4 ImageError(#[from] image::error::ImageError),
5 #[error("Detector error: {0}")]
6 DetectorError(#[from] speciesnet_detector::error::Error),
7 #[error("Classifier error: {0}")]
8 ClassifierError(#[from] speciesnet_classifier::error::Error),
9 #[error("Ensemble error: {0}")]
10 EnsembleError(#[from] speciesnet_ensemble::error::Error),
11 #[error("Speciesnet core error: {0}")]
12 CoreError(#[from] speciesnet_core::error::Error),
13 #[error("IO error: {0}")]
14 IoError(#[from] std::io::Error),
15 #[cfg(feature = "download-model")]
16 #[error("ureq error: {0}")]
17 UreqError(#[from] ureq::Error),
18 #[cfg(feature = "download-model")]
19 #[error("http error: response returned with status of {0}")]
20 RequestFailed(u16),
21 #[cfg(feature = "download-model")]
22 #[error("base directory initialization failed.")]
23 BaseDirInitFailed,
24 #[cfg(feature = "download-model")]
25 #[error("zip error: {0}")]
26 ZipError(#[from] zip::result::ZipError),
27 #[cfg(feature = "download-model")]
28 #[error("serde_json error: {0}")]
29 SerdeJsonError(#[from] serde_json::Error),
30}