[][src]Struct pspsdk_sys::sdk::UsbDriver

#[repr(C)]pub struct UsbDriver {
    pub name: *const c_char,
    pub endpoints: c_int,
    pub endp: *mut UsbEndpoint,
    pub intp: *mut UsbInterface,
    pub devp_hi: *mut c_void,
    pub confp_hi: *mut c_void,
    pub devp: *mut c_void,
    pub confp: *mut c_void,
    pub str: *mut StringDescriptor,
    pub recvctl: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, req: *mut DeviceRequest) -> c_int>,
    pub func28: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, arg3: c_int) -> c_int>,
    pub attach: Option<unsafe extern "C" fn(speed: c_int, arg2: *mut c_void, arg3: *mut c_void) -> c_int>,
    pub detach: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, arg3: c_int) -> c_int>,
    pub unk34: c_int,
    pub start_func: Option<unsafe extern "C" fn(size: c_int, args: *mut c_void) -> c_int>,
    pub stop_func: Option<unsafe extern "C" fn(size: c_int, args: *mut c_void) -> c_int>,
    pub link: *mut UsbDriver,
}

USB driver structure used by ::sceUsbbdRegister and ::sceUsbbdUnregister

Fields

name: *const c_char

Name of the USB driver

endpoints: c_int

Number of endpoints in this driver (including default control)

endp: *mut UsbEndpoint

List of endpoint structures (used when calling other functions)

intp: *mut UsbInterface

Interface list

devp_hi: *mut c_void

Pointer to hi-speed device descriptor

confp_hi: *mut c_void

Pointer to hi-speed device configuration

devp: *mut c_void

Pointer to full-speed device descriptor

confp: *mut c_void

Pointer to full-speed device configuration

str: *mut StringDescriptor

Default String descriptor

recvctl: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, req: *mut DeviceRequest) -> c_int>

Received a control request arg0 is endpoint, arg1 is possibly data arg2 is data buffer

func28: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, arg3: c_int) -> c_int>

Unknown

attach: Option<unsafe extern "C" fn(speed: c_int, arg2: *mut c_void, arg3: *mut c_void) -> c_int>

Configuration set (attach) function

detach: Option<unsafe extern "C" fn(arg1: c_int, arg2: c_int, arg3: c_int) -> c_int>

Configuration unset (detach) function

unk34: c_int

Unknown set to 0

start_func: Option<unsafe extern "C" fn(size: c_int, args: *mut c_void) -> c_int>

Function called when the driver is started

stop_func: Option<unsafe extern "C" fn(size: c_int, args: *mut c_void) -> c_int>

Function called when the driver is stopped

link: *mut UsbDriver

Link to next USB driver in the chain, set to NULL

Trait Implementations

impl Clone for UsbDriver[src]

impl Copy for UsbDriver[src]

impl Debug for UsbDriver[src]

Auto Trait Implementations

impl !Send for UsbDriver

impl !Sync for UsbDriver

impl Unpin for UsbDriver

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.