use crate::ffi::bindings::*;
use bitflags::bitflags;
#[cfg(feature = "serde")]
use serde_derive::{Deserialize, Serialize};
bitflags! {
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
#[derive(Debug, Copy, Clone, Eq, PartialEq, Hash)]
pub struct EventTypes: u64 {
const SINGLE_BIT_ECC_ERROR = nvmlEventTypeSingleBitEccError as u64;
const DOUBLE_BIT_ECC_ERROR = nvmlEventTypeDoubleBitEccError as u64;
const PSTATE_CHANGE = nvmlEventTypePState as u64;
const CRITICAL_XID_ERROR = nvmlEventTypeXidCriticalError as u64;
const CLOCK_CHANGE = nvmlEventTypeClock as u64;
const POWER_SOURCE_CHANGE = nvmlEventTypePowerSourceChange as u64;
const MIG_CONFIG_CHANGE = nvmlEventMigConfigChange as u64;
}
}