File: channel.h

package info (click to toggle)
freespace2 24.2.0%2Brepack-1
  • links: PTS, VCS
  • area: non-free
  • in suites: forky, sid
  • size: 43,716 kB
  • sloc: cpp: 595,001; ansic: 21,741; python: 1,174; sh: 457; makefile: 248; xml: 181
file content (41 lines) | stat: -rw-r--r-- 1,110 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/*
 * Copyright (C) Volition, Inc. 1999.  All rights reserved.
 *
 * All source code herein is the property of Volition, Inc. You may not sell 
 * or otherwise commercially exploit the source or things you created based on the 
 * source.
 *
*/


#ifndef __CHANNEL_H__
#define __CHANNEL_H__

#include "sound/ds.h"
#include "sound/openal.h"

typedef struct channel
{
	ds_sound_handle sig;    // uniquely identifies the sound playing on the channel
	int			snd_id;		// identifies which kind of sound is playing
	ALuint		source_id;	// OpenAL source id
	int			sid;		// currently bound sound buffer index (-1 if none)
	int			looping;		// flag to indicate that the sound is looping
	float		vol;			// in linear scale
	int			priority;	// implementation dependant priority
	unsigned int		last_position;
	bool		is_voice_msg;
	bool		is_ambient;

	channel() :
		sig(-1), snd_id(-1), source_id(0), sid(-1), looping(0), vol(1.0f),
		priority(0), last_position(0), is_voice_msg(false), is_ambient(false)
	{
	}
} channel;


// #define	MAX_CHANNELS  16
extern	channel* Channels;    //[MAX_CHANNELS];

#endif /* __CHANNEL_H__ */