use super::{bool_t, ER, ER_BOOL, INTNO, PRI};
pub type ISR = Option<unsafe extern "C" fn(super::EXINF)>;
pub const TIPM_ENAALL: PRI = 0;
#[cfg(any(
all(feature = "asp3", feature = "dcre"),
all(feature = "solid_asp3", feature = "dcre"),
all(feature = "solid_fmp3", feature = "dcre")
))]
#[derive(Clone, Copy)]
#[repr(C)]
pub struct T_CISR {
pub isratr: super::ATR,
pub exinf: super::EXINF,
pub intno: INTNO,
pub isr: ISR,
pub isrpri: PRI,
}
#[cfg(any(
feature = "asp3",
feature = "fmp3",
feature = "solid_asp3",
feature = "solid_fmp3"
))]
extern "C" {
pub fn dis_int(intno: INTNO) -> ER;
pub fn ena_int(intno: INTNO) -> ER;
pub fn clr_int(intno: INTNO) -> ER;
pub fn ras_int(intno: INTNO) -> ER;
pub fn prb_int(intno: INTNO) -> ER_BOOL;
pub fn chg_ipm(intpri: PRI) -> ER;
pub fn get_ipm(p_intpri: *mut PRI) -> ER;
}
#[cfg(any(
all(feature = "asp3", feature = "dcre"),
all(feature = "solid_asp3", feature = "dcre"),
all(feature = "solid_fmp3", feature = "dcre")
))]
extern "C" {
pub fn acre_isr(pk_cisr: *const T_CISR) -> super::ER_ID;
pub fn del_isr(isrid: super::ID) -> ER;
}
#[cfg(any(
feature = "asp3",
feature = "fmp3",
feature = "solid_asp3",
feature = "solid_fmp3"
))]
extern "C" {
pub fn xsns_dpn(p_excinf: *mut u8) -> bool_t;
}