Struct gilrs::ff::EffectBuilder

source ·
pub struct EffectBuilder {
    base_effects: Vec<BaseEffect>,
    devices: VecMap<()>,
    repeat: Repeat,
    dist_model: DistanceModel,
    position: [f32; 3],
    gain: f32,
}
Expand description

Creates new Effect.

Fields§

§base_effects: Vec<BaseEffect>§devices: VecMap<()>§repeat: Repeat§dist_model: DistanceModel§position: [f32; 3]§gain: f32

Implementations§

source§

impl EffectBuilder

source

pub fn new() -> Self

Creates new builder with following defaults: no gamepads, no base effects, repeat set to infinitely, no distance model, position in (0.0, 0.0, 0.0) and gain 1.0. Use finish() to create new effect.

source

pub fn add_effect(&mut self, effect: BaseEffect) -> &mut Self

Adds new BaseEffect.

source

pub fn gamepads(&mut self, ids: &[GamepadId]) -> &mut Self

Changes gamepads that are associated with effect. Effect will be only played on gamepads from last call to this function.

source

pub fn add_gamepad(&mut self, gamepad: &Gamepad<'_>) -> &mut Self

Adds gamepad to the list of gamepads associated with effect.

source

pub fn repeat(&mut self, repeat: Repeat) -> &mut Self

Changes what should happen to effect when it ends.

source

pub fn distance_model(&mut self, model: DistanceModel) -> &mut Self

Changes distance model associated with effect.

source

pub fn position<Vec3f: Into<[f32; 3]>>(&mut self, position: Vec3f) -> &mut Self

Changes position of the source of effect.

source

pub fn gain(&mut self, gain: f32) -> &mut Self

Changes gain of the effect. gain will be clamped to [0.0, f32::MAX].

source

pub fn finish(&mut self, gilrs: &mut Gilrs) -> Result<Effect, Error>

Validates all parameters and creates new effect.

§Errors

Returns Error::Disconnected(id) or Error::FfNotSupported(id) on first gamepad in ids that is disconnected or doesn’t support force feedback.

Returns Error::InvalidDistanceModel if model is not valid. See DistanceModel for details.

Trait Implementations§

source§

impl Clone for EffectBuilder

source§

fn clone(&self) -> EffectBuilder

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 Debug for EffectBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for EffectBuilder

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl PartialEq for EffectBuilder

source§

fn eq(&self, other: &EffectBuilder) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for EffectBuilder

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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.