mu_lib 0.2.2

XCENA mu Library
Documentation
/* automatically generated by rust-bindgen 0.70.1 */

#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)]
pub mod root {
    #[allow(unused_imports)]
    use self::super::root;
    pub const _ELIX_LEVEL: u32 = 4;
    pub const _MB_LEN_MAX: u32 = 1;
    pub const _NEWLIB_VERSION: &[u8; 6] = b"4.1.0\0";
    pub const _PICOLIBC_MINOR__: u32 = 8;
    pub const _PICOLIBC_VERSION: &[u8; 6] = b"1.8.5\0";
    pub const _PICOLIBC__: u32 = 1;
    pub const __NEWLIB_MINOR__: u32 = 1;
    pub const __NEWLIB_PATCHLEVEL__: u32 = 0;
    pub const __NEWLIB__: u32 = 4;
    pub const __PICOLIBC_MINOR__: u32 = 8;
    pub const __PICOLIBC_PATCHLEVEL__: u32 = 5;
    pub const __PICOLIBC_VERSION__: &[u8; 6] = b"1.8.5\0";
    pub const __PICOLIBC__: u32 = 1;
    pub const _DEFAULT_SOURCE: u32 = 1;
    pub const _POSIX_SOURCE: u32 = 1;
    pub const _POSIX_C_SOURCE: u32 = 200809;
    pub const _ATFILE_SOURCE: u32 = 1;
    pub const __ATFILE_VISIBLE: u32 = 1;
    pub const __BSD_VISIBLE: u32 = 1;
    pub const __GNU_VISIBLE: u32 = 0;
    pub const __ZEPHYR_VISIBLE: u32 = 0;
    pub const __ISO_C_VISIBLE: u32 = 2011;
    pub const __LARGEFILE_VISIBLE: u32 = 0;
    pub const __MISC_VISIBLE: u32 = 1;
    pub const __POSIX_VISIBLE: u32 = 200809;
    pub const __SVID_VISIBLE: u32 = 1;
    pub const __XSI_VISIBLE: u32 = 0;
    pub const __SSP_FORTIFY_LEVEL: u32 = 0;
    pub const __have_longlong64: u32 = 1;
    pub const __have_long64: u32 = 1;
    pub const ___int8_t_defined: u32 = 1;
    pub const ___int16_t_defined: u32 = 1;
    pub const ___int32_t_defined: u32 = 1;
    pub const ___int64_t_defined: u32 = 1;
    pub const ___int_least8_t_defined: u32 = 1;
    pub const ___int_least16_t_defined: u32 = 1;
    pub const ___int_least32_t_defined: u32 = 1;
    pub const ___int_least64_t_defined: u32 = 1;
    pub const __int20: u32 = 2;
    pub const __int20__: u32 = 2;
    pub const __INT8: &[u8; 3] = b"hh\0";
    pub const __INT16: &[u8; 2] = b"h\0";
    pub const __INT64: &[u8; 2] = b"l\0";
    pub const __FAST8: &[u8; 3] = b"hh\0";
    pub const __FAST16: &[u8; 2] = b"h\0";
    pub const __FAST64: &[u8; 2] = b"l\0";
    pub const __LEAST8: &[u8; 3] = b"hh\0";
    pub const __LEAST16: &[u8; 2] = b"h\0";
    pub const __LEAST64: &[u8; 2] = b"l\0";
    pub const __int8_t_defined: u32 = 1;
    pub const __int16_t_defined: u32 = 1;
    pub const __int32_t_defined: u32 = 1;
    pub const __int64_t_defined: u32 = 1;
    pub const __int_least8_t_defined: u32 = 1;
    pub const __int_least16_t_defined: u32 = 1;
    pub const __int_least32_t_defined: u32 = 1;
    pub const __int_least64_t_defined: u32 = 1;
    pub const __int_fast8_t_defined: u32 = 1;
    pub const __int_fast16_t_defined: u32 = 1;
    pub const __int_fast32_t_defined: u32 = 1;
    pub const __int_fast64_t_defined: u32 = 1;
    pub const WINT_MIN: u32 = 0;
    pub type __int8_t = ::core::ffi::c_schar;
    pub type __uint8_t = ::core::ffi::c_uchar;
    pub type __int16_t = ::core::ffi::c_short;
    pub type __uint16_t = ::core::ffi::c_ushort;
    pub type __int32_t = ::core::ffi::c_int;
    pub type __uint32_t = ::core::ffi::c_uint;
    pub type __int64_t = ::core::ffi::c_long;
    pub type __uint64_t = ::core::ffi::c_ulong;
    pub type __int_least8_t = ::core::ffi::c_schar;
    pub type __uint_least8_t = ::core::ffi::c_uchar;
    pub type __int_least16_t = ::core::ffi::c_short;
    pub type __uint_least16_t = ::core::ffi::c_ushort;
    pub type __int_least32_t = ::core::ffi::c_int;
    pub type __uint_least32_t = ::core::ffi::c_uint;
    pub type __int_least64_t = ::core::ffi::c_long;
    pub type __uint_least64_t = ::core::ffi::c_ulong;
    pub type __intmax_t = ::core::ffi::c_long;
    pub type __uintmax_t = ::core::ffi::c_ulong;
    pub type __intptr_t = ::core::ffi::c_long;
    pub type __uintptr_t = ::core::ffi::c_ulong;
    pub type intmax_t = root::__intmax_t;
    pub type uintmax_t = root::__uintmax_t;
    pub type int_least8_t = root::__int_least8_t;
    pub type uint_least8_t = root::__uint_least8_t;
    pub type int_least16_t = root::__int_least16_t;
    pub type uint_least16_t = root::__uint_least16_t;
    pub type int_least32_t = root::__int_least32_t;
    pub type uint_least32_t = root::__uint_least32_t;
    pub type int_least64_t = root::__int_least64_t;
    pub type uint_least64_t = root::__uint_least64_t;
    pub type int_fast8_t = ::core::ffi::c_schar;
    pub type uint_fast8_t = ::core::ffi::c_uchar;
    pub type int_fast16_t = ::core::ffi::c_short;
    pub type uint_fast16_t = ::core::ffi::c_ushort;
    pub type int_fast32_t = ::core::ffi::c_int;
    pub type uint_fast32_t = ::core::ffi::c_uint;
    pub type int_fast64_t = ::core::ffi::c_long;
    pub type uint_fast64_t = ::core::ffi::c_ulong;
    pub mod mu {
        #[allow(unused_imports)]
        use self::super::super::root;
        pub const LogLevel_Trace: root::mu::LogLevel = 0;
        pub const LogLevel_Debug: root::mu::LogLevel = 1;
        pub const LogLevel_Info: root::mu::LogLevel = 2;
        pub const LogLevel_Warn: root::mu::LogLevel = 3;
        pub const LogLevel_Error: root::mu::LogLevel = 4;
        pub const LogLevel_Critical: root::mu::LogLevel = 5;
        pub const LogLevel_None: root::mu::LogLevel = 6;
        pub type LogLevel = ::core::ffi::c_int;
    }
    extern "C" {
        pub fn AssertRB(
            cond: bool,
            file: *const ::core::ffi::c_char,
            func: *const ::core::ffi::c_char,
            line: ::core::ffi::c_int,
        );
    }
    extern "C" {
        pub fn exitRB();
    }
    extern "C" {
        pub fn atomicAddRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicAddAsyncRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicAndRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicAndAsyncRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicOrRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicOrAsyncRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicXorRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicXorAsyncRB(address: *mut u32, val: u32) -> u32;
    }
    extern "C" {
        pub fn atomicIncRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicIncAsyncRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicDecRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicDecAsyncRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicMinRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicMaxRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicSwapRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicCASRB(address: *mut i32, val: i32, compare: i32) -> i32;
    }
    extern "C" {
        pub fn atomicSwap58RB(address: *mut i64, val: i64) -> i64;
    }
    extern "C" {
        pub fn atomicOr58RB(address: *mut u64, val: u64) -> u64;
    }
    extern "C" {
        pub fn atomicAnd58RB(address: *mut u64, val: u64) -> u64;
    }
    extern "C" {
        pub fn atomicXor58RB(address: *mut u64, val: u64) -> u64;
    }
    extern "C" {
        pub fn atomicLoadRB(address: *mut i32) -> i32;
    }
    extern "C" {
        pub fn atomicLoad58RB(address: *mut i64) -> i64;
    }
    extern "C" {
        pub fn atomicStoreAsyncRB(address: *mut i32, val: i32) -> i32;
    }
    extern "C" {
        pub fn atomicStore58AsyncRB(address: *mut i64, val: i64) -> i64;
    }
    extern "C" {
        pub fn getClockCycleRB() -> u32;
    }
    extern "C" {
        pub fn getIdRB() -> u64;
    }
    extern "C" {
        pub fn logPrintfSingleStringRB(format: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
    }
    extern "C" {
        pub fn logPrintfWithLevelSingleStringRB(
            level: root::mu::LogLevel,
            format: *const ::core::ffi::c_char,
        ) -> ::core::ffi::c_int;
    }
    extern "C" {
        pub fn asyncMessageRB(src: *mut ::core::ffi::c_void, size: u64);
    }
    extern "C" {
        pub fn syncMessageRB(src: *mut ::core::ffi::c_void, size: u64);
    }
    extern "C" {
        pub fn getTaskIdxRB() -> u32;
    }
    extern "C" {
        pub fn getTaskCountRB() -> u32;
    }
    extern "C" {
        pub fn uartPrintfSingleStringRB(format: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
    }
    extern "C" {
        pub fn hostPrintfSingleStringRB(format: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
    }
    extern "C" {
        pub fn printf_SingleStringRB(format: *const ::core::ffi::c_char) -> ::core::ffi::c_int;
    }
    extern "C" {
        pub fn sprintf_SingleStringRB(
            buffer: *mut ::core::ffi::c_char,
            format: *const ::core::ffi::c_char,
        ) -> ::core::ffi::c_int;
    }
}