/*
* call-seq:
* load( filename ) -> sound
*
* Load the given audio file.
* Supported file formats are WAV, AIFF, RIFF, OGG (Ogg Vorbis), and
* VOC (SoundBlaster).
*
* filename:: Full or relative path to the file. (String, required)
*
* Returns:: The new Sound instance. (Sound)
* May raise:: SDLError, if the sound file could not be loaded.
*
*/
static VALUE rg_sound_load( VALUE klass, VALUE filename )
{
RG_Sound *sound;
VALUE s = rg_sound_alloc( cSound );
Data_Get_Struct( s, RG_Sound, sound );
char *file = StringValuePtr( filename );
int result = _rg_sound_load( sound, file );
if( result == -1 )
{
rb_raise(eSDLError, "Could not load Sound file '%s': %s",
file, Mix_GetError());
}
return s;
}