| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #include "std.h"
- #include "gxmusic.h"
- gxMusic::gxMusic( gxAudio *a,FMUSIC_MODULE *m,FSOUND_STREAM *s ):
- audio(a),module(m),stream(s),stream_channel(-1){
- }
- gxMusic::~gxMusic(){
- if( module ) FMUSIC_FreeSong( module );
- else FSOUND_Stream_Close( stream );
- }
- void gxMusic::play(){
- if( module ){
- FMUSIC_PlaySong( module );
- }else{
- stream_channel=FSOUND_Stream_Play( FSOUND_FREE,stream );
- }
- }
- void gxMusic::stop(){
- if( module ){
- FMUSIC_StopSong( module );
- }else{
- FSOUND_Stream_Stop( stream );
- stream_channel=-1;
- }
- }
- void gxMusic::setVolume( float volume ){
- if( module ){
- FMUSIC_SetMasterVolume( module,volume*255.0f );
- }else{
- FSOUND_SetVolume( stream_channel,volume*255.0f );
- }
- }
- void gxMusic::setPaused( bool paused){
- if( module ){
- FMUSIC_SetPaused( module,paused );
- }else{
- FSOUND_SetPaused( stream_channel,paused );
- }
- }
- bool gxMusic::isPlaying()const{
- if( module ){
- return FMUSIC_IsPlaying( module ) ? true : false;
- }else{
- return FSOUND_IsPlaying( stream_channel ) ? true : false;
- }
- return false;
- }
|