mixer.h
author bjarni
Fri, 24 Mar 2006 23:33:30 +0000
branch0.4
changeset 9963 2a389f0ebd7c
parent 9959 984493ab6fff
permissions -rw-r--r--
(svn r4097) -Backported 4084 properly (included the last line)
also added a header that is needed because we didn't backport the new feature, that includes the header in the trunk
9959
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     1
/* $Id$ */
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     2
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     3
#ifndef MIXER_H
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     4
#define MIXER_H
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     5
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     6
typedef struct Mixer Mixer;
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     7
typedef struct MixerChannel MixerChannel;
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     8
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
     9
enum {
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    10
	MX_AUTOFREE = 1,
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    11
//	MX_8BIT = 2,
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    12
//	MX_STEREO = 4,
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    13
//	MX_UNSIGNED = 8,
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    14
};
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    15
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    16
VARDEF Mixer *_mixer;
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    17
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    18
bool MxInitialize(uint rate);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    19
void MxMixSamples(Mixer *mx, void *buffer, uint samples);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    20
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    21
MixerChannel *MxAllocateChannel(Mixer *mx);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    22
void MxSetChannelRawSrc(MixerChannel *mc, int8 *mem, uint size, uint rate, uint flags);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    23
void MxSetChannelVolume(MixerChannel *mc, uint left, uint right);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    24
void MxActivateChannel(MixerChannel*);
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    25
984493ab6fff (svn r4044) Rename 0.4.5 branch to 0.4. Further minor releases will be in the 0.4 range, to prevent enormously long version numbers.
matthijs
parents: -1
diff changeset
    26
#endif /* MIXER_H */