note description: "[ A GAME_HAPTIC_EFFECT that play on a periodic strength. A periodic effect consists of a wave-shaped effect that repeats itself over time. Example: button period press | | || __ __ __ __ __ _ || | | | | | | | | | | magnitude __ Offset \/ | |__| |__| |__| |__| | _ ----- | delay phase >> ------------------------------------- length =================================================== interval ]" author: "Louis Marchand" date: "Tue, 03 Mar 2015 14:16:22 +0000" revision: "2.0" class interface GAME_HAPTIC_PERIODIC_EFFECT create make_sine, make_square, make_triangle, make_sawtooth_up, make_sawtooth_down feature -- Access direction: GAME_HAPTIC_DIRECTION assign set_direction -- The orientation that the force of Current come from require exists: exists set_direction (a_direction: GAME_HAPTIC_DIRECTION) -- assign direction with the values of a_direction require exists: exists ensure is_assign: direction ~ a_direction length: NATURAL_32 assign set_length -- Duration of Current (in millisecond) set_length (a_length: NATURAL_32) -- Assign length with the value of a_length delay: NATURAL_16 assign set_delay -- delay before starting Current (in millisecond) set_delay (a_delay: NATURAL_16) -- Assign delay with the value of a_delay interval: NATURAL_16 assign set_interval -- how soon before effect can be triggered again (in millisecond) set_interval (a_interval: NATURAL_16) -- Assign interval with the value of a_interval period: NATURAL_16 assign set_period -- Time (in millisecond) between two wave. require exists: exists set_period (a_period: NATURAL_16) -- Assign period with the value of a_period require exists: exists period_valid: a_period <= 32767 ensure is_assign: period = a_period magnitude: INTEGER_16 assign set_magnitude -- peak value; if negative, equivalent to 180 degrees extra phase shift require exists: exists set_magnitude (a_magnitude: INTEGER_16) -- Assign magnitude with the value of a_magnitude require exists: exists magnitude_valid: a_magnitude <= 32767 ensure is_assign: magnitude = a_magnitude offset: INTEGER_16 assign set_offset -- Mean value of the wave require exists: exists set_offset (a_offset: INTEGER_16) -- Assign offset with the value of a_offset require exists: exists offset_valid: a_offset <= 32767 ensure is_assign: offset = a_offset phase: NATURAL_16 assign set_phase -- Time (in millisecond) between two wave. require exists: exists set_phase (a_phase: NATURAL_16) -- Assign phase with the value of a_phase require exists: exists phase_valid: a_phase <= 32767 ensure is_assign: phase = a_phase fade_in_level: NATURAL_16 assign set_fade_in_level -- level at the start of the fade in set_fade_in_level (a_fade_in_level: NATURAL_16) -- Assign fade_in_level with the value of a_fade_in_level fade_in_length: NATURAL_16 assign set_fade_in_length -- length of the fade in set_fade_in_length (a_fade_in_length: NATURAL_16) -- Assign fade_in_length with the value of a_fade_in_length fade_out_level: NATURAL_16 assign set_fade_out_level -- level at the start of the fade out set_fade_out_level (a_fade_out_level: NATURAL_16) -- Assign fade_out_level with the value of a_fade_out_level fade_out_length: NATURAL_16 assign set_fade_out_length -- length of the fade out set_fade_out_length (a_fade_out_length: NATURAL_16) -- Assign fade_out_length with the value of a_fade_out_length end -- class GAME_HAPTIC_PERIODIC_EFFECT
Generated by ISE EiffelStudio