The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SDL2::HapticPeriodic - A structure containing a template for a Periodic effect

SYNOPSIS

    use SDL2 qw[:all];
    # TODO: I need to whip up a quick example

DESCRIPTION

A SDL2::HapticPeriodic contains 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:

    SDL_HAPTIC_SINE
      __      __      __      __
     /  \    /  \    /  \    /
    /    \__/    \__/    \__/

    SDL_HAPTIC_SQUARE
     __    __    __    __    __
    |  |  |  |  |  |  |  |  |  |
    |  |__|  |__|  |__|  |__|  |

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

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

    SDL_HAPTIC_SAWTOOTHDOWN
    \  |\  |\  |\  |\  |\  |\  |
     \ | \ | \ | \ | \ | \ | \ |
      \|  \|  \|  \|  \|  \|  \|

Fields

type - SDL_HAPTIC_SINE, SDL_HAPTIC_LEFTRIGHT, SDL_HAPTIC_TRIANGLE, SDL_HAPTIC_SAWTOOTHUP, or SDL_HAPTIC_SAWTOOTHDOWN
direction - Direction of the effect
length - Duration of the effect
delay - Delay before starting the effect
button - Button that triggers the effect
interval - How soon it can be triggered again after button
period - Period of the wave
magnitude - Peak value; if negative, equivalent to 180 degrees extra phase shift
offset - Mean value of the wave
phase - Positive phase shift given by hundredth of a degree
attack_length - Duration of the attack
attack_level - Level at the start of the attack
fade_length - Duration of the fade
fade_level - Level at the end of the fade

LICENSE

Copyright (C) Sanko Robinson.

This library is free software; you can redistribute it and/or modify it under the terms found in the Artistic License 2. Other copyrights, terms, and conditions may apply to data transmitted through this module.

AUTHOR

Sanko Robinson <sanko@cpan.org>