use crate::error::NvmlError;
use crate::ffi::bindings::*;
#[cfg(feature = "serde")]
use serde_derive::{Deserialize, Serialize};
use wrapcenum_derive::EnumWrapper;
#[derive(EnumWrapper, Debug, Clone, Eq, PartialEq, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
#[wrap(c_enum = "nvmlFanState_enum")]
pub enum FanState {
#[wrap(c_variant = "NVML_FAN_NORMAL")]
Normal,
#[wrap(c_variant = "NVML_FAN_FAILED")]
Failed,
}
#[derive(EnumWrapper, Debug, Clone, Eq, PartialEq, Hash)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
#[wrap(c_enum = "nvmlLedColor_enum")]
pub enum LedColor {
#[wrap(c_variant = "NVML_LED_COLOR_GREEN")]
Green,
#[wrap(c_variant = "NVML_LED_COLOR_AMBER")]
Amber,
}