rnd-20030128-1-src
[rocksndiamonds.git] / src / libgame / sound.h
index d1826e1f02c94a17104d78fd9c5f6e638948debd..6bebb5dc936c32f6338d18b595b130dc5adc43b2 100644 (file)
@@ -1,7 +1,7 @@
 /***********************************************************
 * Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-* (c) 1994-2001 Artsoft Entertainment                      *
+* (c) 1994-2002 Artsoft Entertainment                      *
 *               Holger Schemel                             *
 *               Detmolder Strasse 189                      *
 *               33604 Bielefeld                            *
@@ -14,7 +14,7 @@
 #ifndef SOUND_H
 #define SOUND_H
 
-#include "platform.h"
+#include "system.h"
 
 
 #if defined(PLATFORM_UNIX) && !defined(TARGET_SDL)
@@ -37,6 +37,7 @@
 #define AUDIO_FRAGMENT_SIZE_1024       1024
 #define AUDIO_FRAGMENT_SIZE_2048       2048
 #define AUDIO_FRAGMENT_SIZE_4096       4096
+#define AUDIO_FRAGMENT_SIZE_32768      32768
 
 #define AUDIO_NUM_CHANNELS_MONO                1
 #define AUDIO_NUM_CHANNELS_STEREO      2
@@ -53,7 +54,9 @@
 #define DEFAULT_AUDIO_SAMPLE_RATE      AUDIO_SAMPLE_RATE_22050
 #endif
 
-#if defined(PLATFORM_WIN32)
+#if defined(PLATFORM_HPUX)
+#define DEFAULT_AUDIO_FRAGMENT_SIZE    AUDIO_FRAGMENT_SIZE_32768
+#elif defined(PLATFORM_WIN32)
 #define DEFAULT_AUDIO_FRAGMENT_SIZE    AUDIO_FRAGMENT_SIZE_2048
 #else
 #define DEFAULT_AUDIO_FRAGMENT_SIZE    AUDIO_FRAGMENT_SIZE_512
 #define SOUND_MIDDLE                   (SOUND_MAX_LEFT2RIGHT / 2)
 
 /* value for undefined sound effect filename */
-#define SND_FILE_UNDEFINED             "NONE"
-
-
-struct SoundEffectInfo
-{
-  char *text;
-  char *default_filename;
-
-  char *filename;
-};
+#define SND_FILE_UNDEFINED             UNDEFINED_FILENAME
 
 
 /* general sound functions */
@@ -148,9 +142,15 @@ void StopMusic(void);
 void StopSound(int);
 void StopSounds(void);
 void StopSoundExt(int, int);
-void InitSoundList(struct SoundEffectInfo *, int);
-void InitReloadSounds(char *);
-void InitReloadMusic(char *);
+
+int getSoundListSize();
+struct FileInfo *getSoundListEntry(int);
+int getSoundListPropertyMappingSize();
+struct PropertyMapping *getSoundListPropertyMapping();
+void InitSoundList(struct ConfigInfo *, int, struct ConfigInfo *,
+                  char **, char **, char **, char **);
+void InitReloadCustomSounds(char *);
+void InitReloadCustomMusic(char *);
 void FreeAllSounds(void);
 void FreeAllMusic(void);