#[repr(C)]
pub struct SDL_HapticPeriodic {
Show 14 fields pub type_: Uint16, pub direction: SDL_HapticDirection, pub length: Uint32, pub delay: Uint16, pub button: Uint16, pub interval: Uint16, pub period: Uint16, pub magnitude: Sint16, pub offset: Sint16, pub phase: 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 a Periodic effect.

The struct handles the following effects:

  • ::SDL_HAPTIC_SINE
  • ::SDL_HAPTIC_LEFTRIGHT
  • ::SDL_HAPTIC_TRIANGLE
  • ::SDL_HAPTIC_SAWTOOTHUP
  • ::SDL_HAPTIC_SAWTOOTHDOWN

A periodic effect consists in a wave-shaped effect that repeats itself over time. The type determines the shape of the wave and the parameters determine the dimensions of the wave.

Phase is given by hundredth of a degree meaning that giving the phase a value of 9000 will displace it 25% of its period. Here are sample values:

  • 0: No phase displacement.
  • 9000: Displaced 25% of its period.
  • 18000: Displaced 50% of its period.
  • 27000: Displaced 75% of its period.
  • 36000: Displaced 100% of its period, same as 0, but 0 is preferred.

Examples: \verbatim SDL_HAPTIC_SINE


/ \ / \ / \ / / _/ _/ __/

SDL_HAPTIC_SQUARE


| | | | | | | | | | | || || || || |

SDL_HAPTIC_TRIANGLE /\ /\ /\ /\ /
/ \ / \ / \ / \ / / / / / /

SDL_HAPTIC_SAWTOOTHUP /| /| /| /| /| /| /| / | / | / | / | / | / | / | / |/ |/ |/ |/ |/ |/ |

SDL_HAPTIC_SAWTOOTHDOWN \ |\ |\ |\ |\ |\ |\ | \ | \ | \ | \ | \ | \ | \ | | | | | | | | \endverbatim

\sa SDL_HAPTIC_SINE \sa SDL_HAPTIC_LEFTRIGHT \sa SDL_HAPTIC_TRIANGLE \sa SDL_HAPTIC_SAWTOOTHUP \sa SDL_HAPTIC_SAWTOOTHDOWN \sa SDL_HapticEffect

Fields

type_: Uint16

< ::SDL_HAPTIC_SINE, ::SDL_HAPTIC_LEFTRIGHT, ::SDL_HAPTIC_TRIANGLE, ::SDL_HAPTIC_SAWTOOTHUP or ::SDL_HAPTIC_SAWTOOTHDOWN

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.

period: Uint16

< Period of the wave.

magnitude: Sint16

< Peak value; if negative, equivalent to 180 degrees extra phase shift.

offset: Sint16

< Mean value of the wave.

phase: Uint16

< Positive phase shift given by hundredth of a degree.

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

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.