mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-12-22 17:49:43 +01:00
Consolidate SoundSystem into Music.
It's just some small wrappers, and SoundSystem can be inlined trivially.
This commit is contained in:
parent
f723e03871
commit
c87f0e1a0c
6 changed files with 80 additions and 85 deletions
|
@ -99,7 +99,6 @@ set(VVV_SRC
|
|||
src/Screen.cpp
|
||||
src/Script.cpp
|
||||
src/Scripts.cpp
|
||||
src/SoundSystem.cpp
|
||||
src/Spacestation2.cpp
|
||||
src/TerminalScripts.cpp
|
||||
src/Textbox.cpp
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#include <physfsrwops.h>
|
||||
|
||||
#include "BinaryBlob.h"
|
||||
#include "FileSystemUtils.h"
|
||||
#include "Game.h"
|
||||
#include "Graphics.h"
|
||||
#include "Map.h"
|
||||
|
@ -12,6 +13,59 @@
|
|||
#include "UtilityClass.h"
|
||||
#include "Vlogging.h"
|
||||
|
||||
/* Begin SDL_mixer wrapper */
|
||||
|
||||
MusicTrack::MusicTrack(SDL_RWops *rw)
|
||||
{
|
||||
m_music = Mix_LoadMUS_RW(rw, 1);
|
||||
m_isValid = true;
|
||||
if(m_music == NULL)
|
||||
{
|
||||
vlog_error("Unable to load Magic Binary Music file: %s", Mix_GetError());
|
||||
m_isValid = false;
|
||||
}
|
||||
}
|
||||
|
||||
SoundTrack::SoundTrack(const char* fileName)
|
||||
{
|
||||
unsigned char *mem;
|
||||
size_t length;
|
||||
|
||||
sound = NULL;
|
||||
|
||||
FILESYSTEM_loadAssetToMemory(fileName, &mem, &length, false);
|
||||
if (mem == NULL)
|
||||
{
|
||||
vlog_error("Unable to load WAV file %s", fileName);
|
||||
SDL_assert(0 && "WAV file missing!");
|
||||
return;
|
||||
}
|
||||
SDL_RWops *fileIn = SDL_RWFromConstMem(mem, length);
|
||||
sound = Mix_LoadWAV_RW(fileIn, 1);
|
||||
FILESYSTEM_freeMemory(&mem);
|
||||
|
||||
if (sound == NULL)
|
||||
{
|
||||
vlog_error("Unable to load WAV file: %s", Mix_GetError());
|
||||
}
|
||||
}
|
||||
|
||||
SoundSystem::SoundSystem(void)
|
||||
{
|
||||
int audio_rate = 44100;
|
||||
Uint16 audio_format = AUDIO_S16SYS;
|
||||
int audio_channels = 2;
|
||||
int audio_buffers = 1024;
|
||||
|
||||
if (Mix_OpenAudio(audio_rate, audio_format, audio_channels, audio_buffers) != 0)
|
||||
{
|
||||
vlog_error("Unable to initialize audio: %s", Mix_GetError());
|
||||
SDL_assert(0 && "Unable to initialize audio!");
|
||||
}
|
||||
}
|
||||
|
||||
/* End SDL_mixer wrapper */
|
||||
|
||||
musicclass::musicclass(void)
|
||||
{
|
||||
safeToProcessMusic= false;
|
||||
|
|
|
@ -4,7 +4,32 @@
|
|||
#include <vector>
|
||||
|
||||
#include "BinaryBlob.h"
|
||||
#include "SoundSystem.h"
|
||||
#include <SDL_mixer.h>
|
||||
|
||||
/* SDL_mixer object wrappers */
|
||||
|
||||
class MusicTrack
|
||||
{
|
||||
public:
|
||||
MusicTrack(SDL_RWops *rw);
|
||||
Mix_Music *m_music;
|
||||
bool m_isValid;
|
||||
};
|
||||
|
||||
class SoundTrack
|
||||
{
|
||||
public:
|
||||
SoundTrack(const char* fileName);
|
||||
Mix_Chunk *sound;
|
||||
};
|
||||
|
||||
/* SDL_mixer init wrapper */
|
||||
|
||||
class SoundSystem
|
||||
{
|
||||
public:
|
||||
SoundSystem(void);
|
||||
};
|
||||
|
||||
#define musicroom(rx, ry) ((rx) + ((ry) * 20))
|
||||
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
#include "SoundSystem.h"
|
||||
|
||||
#include <SDL.h>
|
||||
|
||||
#include "FileSystemUtils.h"
|
||||
#include "Vlogging.h"
|
||||
|
||||
MusicTrack::MusicTrack(SDL_RWops *rw)
|
||||
{
|
||||
m_music = Mix_LoadMUS_RW(rw, 1);
|
||||
m_isValid = true;
|
||||
if(m_music == NULL)
|
||||
{
|
||||
vlog_error("Unable to load Magic Binary Music file: %s", Mix_GetError());
|
||||
m_isValid = false;
|
||||
}
|
||||
}
|
||||
|
||||
SoundTrack::SoundTrack(const char* fileName)
|
||||
{
|
||||
unsigned char *mem;
|
||||
size_t length;
|
||||
|
||||
sound = NULL;
|
||||
|
||||
FILESYSTEM_loadAssetToMemory(fileName, &mem, &length, false);
|
||||
if (mem == NULL)
|
||||
{
|
||||
vlog_error("Unable to load WAV file %s", fileName);
|
||||
SDL_assert(0 && "WAV file missing!");
|
||||
return;
|
||||
}
|
||||
SDL_RWops *fileIn = SDL_RWFromConstMem(mem, length);
|
||||
sound = Mix_LoadWAV_RW(fileIn, 1);
|
||||
FILESYSTEM_freeMemory(&mem);
|
||||
|
||||
if (sound == NULL)
|
||||
{
|
||||
vlog_error("Unable to load WAV file: %s", Mix_GetError());
|
||||
}
|
||||
}
|
||||
|
||||
SoundSystem::SoundSystem(void)
|
||||
{
|
||||
int audio_rate = 44100;
|
||||
Uint16 audio_format = AUDIO_S16SYS;
|
||||
int audio_channels = 2;
|
||||
int audio_buffers = 1024;
|
||||
|
||||
if (Mix_OpenAudio(audio_rate, audio_format, audio_channels, audio_buffers) != 0)
|
||||
{
|
||||
vlog_error("Unable to initialize audio: %s", Mix_GetError());
|
||||
SDL_assert(0 && "Unable to initialize audio!");
|
||||
}
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
#ifndef SOUNDSYSTEM_H
|
||||
#define SOUNDSYSTEM_H
|
||||
|
||||
#include <SDL_mixer.h>
|
||||
|
||||
class MusicTrack
|
||||
{
|
||||
public:
|
||||
MusicTrack(SDL_RWops *rw);
|
||||
Mix_Music *m_music;
|
||||
bool m_isValid;
|
||||
};
|
||||
|
||||
class SoundTrack
|
||||
{
|
||||
public:
|
||||
SoundTrack(const char* fileName);
|
||||
Mix_Chunk *sound;
|
||||
};
|
||||
|
||||
class SoundSystem
|
||||
{
|
||||
public:
|
||||
SoundSystem(void);
|
||||
};
|
||||
|
||||
#endif /* SOUNDSYSTEM_H */
|
|
@ -24,7 +24,6 @@
|
|||
#include "RenderFixed.h"
|
||||
#include "Screen.h"
|
||||
#include "Script.h"
|
||||
#include "SoundSystem.h"
|
||||
#include "UtilityClass.h"
|
||||
#include "Vlogging.h"
|
||||
|
||||
|
|
Loading…
Reference in a new issue