diff options
Diffstat (limited to 'src/doom/s_sound.h')
-rw-r--r-- | src/doom/s_sound.h | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/src/doom/s_sound.h b/src/doom/s_sound.h new file mode 100644 index 00000000..7bb0a605 --- /dev/null +++ b/src/doom/s_sound.h @@ -0,0 +1,97 @@ +// Emacs style mode select -*- C++ -*- +//----------------------------------------------------------------------------- +// +// Copyright(C) 1993-1996 Id Software, Inc. +// Copyright(C) 2005 Simon Howard +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +// 02111-1307, USA. +// +// DESCRIPTION: +// The not so system specific sound interface. +// +//----------------------------------------------------------------------------- + + +#ifndef __S_SOUND__ +#define __S_SOUND__ + +#include "p_mobj.h" +#include "sounds.h" + +// +// Initializes sound stuff, including volume +// Sets channels, SFX and music volume, +// allocates channel buffer, sets S_sfx lookup. +// + +void S_Init(int sfxVolume, int musicVolume); + + +// Shut down sound + +void S_Shutdown(void); + + + +// +// Per level startup code. +// Kills playing sounds at start of level, +// determines music if any, changes music. +// + +void S_Start(void); + +// +// Start sound for thing at <origin> +// using <sound_id> from sounds.h +// + +void S_StartSound(void *origin, int sound_id); + +// Stop sound for thing at <origin> +void S_StopSound(mobj_t *origin); + + +// Start music using <music_id> from sounds.h +void S_StartMusic(int music_id); + +// Start music using <music_id> from sounds.h, +// and set whether looping +void S_ChangeMusic(int music_id, int looping); + +// query if music is playing +boolean S_MusicPlaying(void); + +// Stops the music fer sure. +void S_StopMusic(void); + +// Stop and resume music, during game PAUSE. +void S_PauseSound(void); +void S_ResumeSound(void); + + +// +// Updates music & sounds +// +void S_UpdateSounds(mobj_t *listener); + +void S_SetMusicVolume(int volume); +void S_SetSfxVolume(int volume); + +extern int snd_channels; + +#endif + |