Struct sdl2_sys::SDL_HapticCustom

source ·
#[repr(C)]
pub struct SDL_HapticCustom {
Show 14 fields pub type_: Uint16, pub direction: SDL_HapticDirection, pub length: Uint32, pub delay: Uint16, pub button: Uint16, pub interval: Uint16, pub channels: Uint8, pub period: Uint16, pub samples: Uint16, pub data: *mut Uint16, pub attack_length: Uint16, pub attack_level: Uint16, pub fade_length: Uint16, pub fade_level: Uint16,
}
Expand description

\brief A structure containing a template for the ::SDL_HAPTIC_CUSTOM effect.

This struct is exclusively for the ::SDL_HAPTIC_CUSTOM effect.

A custom force feedback effect is much like a periodic effect, where the application can define its exact shape. You will have to allocate the data yourself. Data should consist of channels * samples Uint16 samples.

If channels is one, the effect is rotated using the defined direction. Otherwise it uses the samples in data for the different axes.

\sa SDL_HAPTIC_CUSTOM \sa SDL_HapticEffect

Fields§

§type_: Uint16

< ::SDL_HAPTIC_CUSTOM

§direction: SDL_HapticDirection

< Direction of the effect.

§length: Uint32

< Duration of the effect.

§delay: Uint16

< Delay before starting the effect.

§button: Uint16

< Button that triggers the effect.

§interval: Uint16

< How soon it can be triggered again after button.

§channels: Uint8

< Axes to use, minimum of one.

§period: Uint16

< Sample periods.

§samples: Uint16

< Amount of samples.

§data: *mut Uint16

< Should contain channels*samples items.

§attack_length: Uint16

< Duration of the attack.

§attack_level: Uint16

< Level at the start of the attack.

§fade_length: Uint16

< Duration of the fade.

§fade_level: Uint16

< Level at the end of the fade.

Trait Implementations§

source§

impl Clone for SDL_HapticCustom

source§

fn clone(&self) -> SDL_HapticCustom

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Copy for SDL_HapticCustom

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.