1998-04-07 00:00:00 +00:00
|
|
|
// Emacs style mode select -*- C++ -*-
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
//
|
|
|
|
// $Id: i_sound.h,v 1.1.1.1 1997/12/28 12:59:03 pekangas Exp $
|
|
|
|
//
|
|
|
|
// Copyright (C) 1993-1996 by id Software, Inc.
|
|
|
|
//
|
|
|
|
// This source is available for distribution and/or modification
|
|
|
|
// only under the terms of the DOOM Source Code License as
|
|
|
|
// published by id Software. All rights reserved.
|
|
|
|
//
|
|
|
|
// The source is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// FITNESS FOR A PARTICULAR PURPOSE. See the DOOM Source Code License
|
|
|
|
// for more details.
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// DESCRIPTION:
|
|
|
|
// System interface, sound.
|
|
|
|
//
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
#ifndef __I_SOUND__
|
|
|
|
#define __I_SOUND__
|
|
|
|
|
|
|
|
#include "doomdef.h"
|
|
|
|
|
|
|
|
#include "doomstat.h"
|
1998-12-22 00:00:00 +00:00
|
|
|
#include "s_sound.h"
|
1998-04-07 00:00:00 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Init at program start...
|
|
|
|
void I_InitSound();
|
|
|
|
|
|
|
|
// ... update sound buffer and audio device at runtime...
|
|
|
|
void I_UpdateSound(void);
|
|
|
|
|
|
|
|
// ... shut down and relase at program termination.
|
|
|
|
void I_ShutdownSound(void);
|
|
|
|
|
|
|
|
void I_SetSfxVolume(int volume);
|
|
|
|
|
|
|
|
//
|
|
|
|
// SFX I/O
|
|
|
|
//
|
|
|
|
|
|
|
|
// Initialize channels?
|
|
|
|
void I_SetChannels();
|
|
|
|
|
1998-12-22 00:00:00 +00:00
|
|
|
// load a sound from disk
|
|
|
|
void I_LoadSound (struct sfxinfo_struct *sfx);
|
1998-04-07 00:00:00 +00:00
|
|
|
|
|
|
|
// Starts a sound in a particular sound channel.
|
|
|
|
int
|
|
|
|
I_StartSound
|
1998-12-22 00:00:00 +00:00
|
|
|
( struct sfxinfo_struct *sfx,
|
1998-04-07 00:00:00 +00:00
|
|
|
int vol,
|
|
|
|
int sep,
|
|
|
|
int pitch,
|
|
|
|
int priority );
|
|
|
|
|
|
|
|
|
|
|
|
// Stops a sound channel.
|
|
|
|
void I_StopSound(int handle);
|
|
|
|
|
|
|
|
// Called by S_*() functions
|
|
|
|
// to see if a channel is still playing.
|
|
|
|
// Returns 0 if no longer playing, 1 if playing.
|
|
|
|
int I_SoundIsPlaying(int handle);
|
|
|
|
|
|
|
|
// Updates the volume, separation,
|
|
|
|
// and pitch of a sound channel.
|
|
|
|
void
|
|
|
|
I_UpdateSoundParams
|
|
|
|
( int handle,
|
|
|
|
int vol,
|
|
|
|
int sep,
|
|
|
|
int pitch );
|
|
|
|
|
|
|
|
#endif
|