type Sample is private;
type A_Sample is access all Sample;
type A_Sample_Loader is access function( filename : C.Strings.chars_ptr ) return A_Sample;
type A_Sample_Saver is access function( filename : C.Strings.chars_ptr; spl : A_Sample ) return Integer;
type Volume_Type is range 0..255;
type Pan_Type is range 0..255;
procedure Adjust_Sample
( | spl | : not null A_Sample; |
vol | : Volume_Type; | |
pan | : Pan_Type; | |
freq | : Integer; | |
loopit | : Integer ); |
procedure Destroy_Sample
( | spl | : in out A_Sample ); |
procedure Lock_Sample
( | spl | : not null A_Sample ); |
function Play_Sample
( | spl | : not null A_Sample; |
vol | : Volume_Type; | |
pan | : Pan_Type; | |
freq | : Integer; | |
loopit | : Integer ) |
procedure Reallocate_Voice
( | voice | : Integer; |
spl | : not null A_Sample ); |
procedure Register_Sample_File_Type
( | ext | : String; |
load | : A_Sample_Loader; | |
save | : A_Sample_Saver ); |
procedure Stop_Sample
( | spl | : not null A_Sample ); |
procedure Voice_Ramp_Volume
( | voice, time | : Integer; |
endvol | : Volume_Type ); |
procedure Voice_Set_Volume
( | voice | : Integer; |
volume | : Volume_Type ); |
procedure Voice_Set_Pan
( | voice | : Integer; |
pan | : Pan_Type ); |
procedure Voice_Sweep_Pan
( | voice, time | : Integer; |
endpan | : Pan_Type ); |