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>