1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum Error {
5 #[error("target window not found")]
6 WindowNotFound,
7
8 #[error("target window closed")]
9 WindowClosed,
10
11 #[error("failed to create overlay window")]
12 WindowCreation(#[source] std::io::Error),
13
14 #[error("failed to create D3D11 device")]
15 DeviceCreation,
16
17 #[error("failed to create swap chain")]
18 SwapChainCreation,
19
20 #[error("failed to compile shader: {message}")]
21 ShaderCompilation { message: String },
22
23 #[error("failed to create render target")]
24 RenderTarget,
25
26 #[error("renderer error: {message}")]
27 Renderer { message: String },
28
29 #[error("frame not in progress")]
30 NoActiveFrame,
31}
32
33pub type Result<T> = std::result::Result<T, Error>;