From aa1e8a7a7236d49d91501eac2da81bdb96f0bba5 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 3 Dec 2012 16:52:15 +0300 Subject: Rename music.cpp/h to sdlmusic. --- src/CMakeLists.txt | 4 +- src/Makefile.am | 4 +- src/resources/music.cpp | 59 ---------------------------- src/resources/music.h | 81 --------------------------------------- src/resources/resourcemanager.cpp | 6 +-- src/resources/resourcemanager.h | 4 +- src/resources/sdlmusic.cpp | 59 ++++++++++++++++++++++++++++ src/resources/sdlmusic.h | 81 +++++++++++++++++++++++++++++++++++++++ src/sound.cpp | 4 +- src/sound.h | 4 +- 10 files changed, 153 insertions(+), 153 deletions(-) delete mode 100644 src/resources/music.cpp delete mode 100644 src/resources/music.h create mode 100644 src/resources/sdlmusic.cpp create mode 100644 src/resources/sdlmusic.h (limited to 'src') diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d312a9415..944423738 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -439,8 +439,6 @@ SET(SRCS resources/mapreader.h resources/monsterdb.cpp resources/monsterdb.h - resources/music.cpp - resources/music.h resources/npcdb.cpp resources/npcdb.h resources/openglimagehelper.cpp @@ -451,6 +449,8 @@ SET(SRCS resources/resourcemanager.h resources/sdlimagehelper.cpp resources/sdlimagehelper.h + resources/sdlmusic.cpp + resources/sdlmusic.h resources/soundeffect.h resources/soundeffect.cpp resources/spritedef.h diff --git a/src/Makefile.am b/src/Makefile.am index 5523c0159..1f1dd23a0 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -441,8 +441,6 @@ manaplus_SOURCES += gui/widgets/avatarlistbox.cpp \ resources/mapreader.h \ resources/monsterdb.cpp \ resources/monsterdb.h \ - resources/music.cpp \ - resources/music.h \ resources/npcdb.cpp \ resources/npcdb.h \ resources/openglimagehelper.cpp \ @@ -453,6 +451,8 @@ manaplus_SOURCES += gui/widgets/avatarlistbox.cpp \ resources/resourcemanager.h \ resources/sdlimagehelper.cpp \ resources/sdlimagehelper.h \ + resources/sdlmusic.cpp \ + resources/sdlmusic.h \ resources/soundeffect.cpp \ resources/soundeffect.h \ resources/spritedef.cpp \ diff --git a/src/resources/music.cpp b/src/resources/music.cpp deleted file mode 100644 index d88b3ccac..000000000 --- a/src/resources/music.cpp +++ /dev/null @@ -1,59 +0,0 @@ -/* - * The ManaPlus Client - * Copyright (C) 2004-2009 The Mana World Development Team - * Copyright (C) 2009-2010 The Mana Developers - * Copyright (C) 2011-2012 The ManaPlus Developers - * - * This file is part of The ManaPlus Client. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#include "resources/music.h" - -#include "logger.h" - -#include "debug.h" - -Music::Music(Mix_Music *const music) : - Resource(), - mMusic(music) -{ -} - -Music::~Music() -{ - Mix_FreeMusic(mMusic); -} - -Resource *Music::load(SDL_RWops *const rw) -{ - if (Mix_Music *const music = Mix_LoadMUS_RW(rw)) - { - return new Music(music); - } - else - { - logger->log("Error, failed to load music: %s", Mix_GetError()); - return nullptr; - } -} - -bool Music::play(const int loops, const int fadeIn) -{ - if (fadeIn > 0) - return Mix_FadeInMusic(mMusic, loops, fadeIn); - else - return Mix_PlayMusic(mMusic, loops); -} diff --git a/src/resources/music.h b/src/resources/music.h deleted file mode 100644 index bf0a572dc..000000000 --- a/src/resources/music.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - * The ManaPlus Client - * Copyright (C) 2004-2009 The Mana World Development Team - * Copyright (C) 2009-2010 The Mana Developers - * Copyright (C) 2011-2012 The ManaPlus Developers - * - * This file is part of The ManaPlus Client. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -#ifndef MUSIC_H -#define MUSIC_H - -#include "resources/resource.h" - -#include - -#include "localconsts.h" - -/** - * Defines a class for loading and storing music. - */ -class Music final : public Resource -{ - public: - Music() : - Resource(), - mMusic(nullptr) - { } - - A_DELETE_COPY(Music) - - /** - * Destructor. - */ - virtual ~Music(); - - /** - * Loads a music from a buffer in memory. - * - * @param rw The SDL_RWops to load the music data from. - * - * @return NULL if the an error occurred, a valid pointer - * otherwise. - */ - static Resource *load(SDL_RWops *const rw) A_WARN_UNUSED; - - /** - * Plays the music. - * - * @param loops Number of times to repeat the playback (-1 means - * forever). - * @param fadeIn Duration in milliseconds to fade in the music. - * - * @return true if the playback started properly - * false otherwise. - */ - bool play(const int loops = -1, const int fadeIn = 0); - - protected: - /** - * Constructor. - */ - Music(Mix_Music *const music); - - Mix_Music *mMusic; -}; - -#endif diff --git a/src/resources/resourcemanager.cpp b/src/resources/resourcemanager.cpp index 6779419f1..20cd37587 100644 --- a/src/resources/resourcemanager.cpp +++ b/src/resources/resourcemanager.cpp @@ -32,7 +32,7 @@ #include "resources/image.h" #include "resources/imagehelper.h" #include "resources/imageset.h" -#include "resources/music.h" +#include "resources/sdlmusic.h" #include "resources/openglimagehelper.h" #include "resources/soundeffect.h" #include "resources/spritedef.h" @@ -549,9 +549,9 @@ Resource *ResourceManager::load(const std::string &path, const loader fun) return get(path, ResourceLoader::load, &rl); } -Music *ResourceManager::getMusic(const std::string &idPath) +SDLMusic *ResourceManager::getMusic(const std::string &idPath) { - return static_cast(load(idPath, Music::load)); + return static_cast(load(idPath, SDLMusic::load)); } SoundEffect *ResourceManager::getSoundEffect(const std::string &idPath) diff --git a/src/resources/resourcemanager.h b/src/resources/resourcemanager.h index 220c5f3f3..d08f8043c 100644 --- a/src/resources/resourcemanager.h +++ b/src/resources/resourcemanager.h @@ -37,7 +37,7 @@ class AnimationDelayLoad; class Image; class ImageSet; -class Music; +class SDLMusic; class Resource; class SoundEffect; class SpriteDef; @@ -195,7 +195,7 @@ class ResourceManager final * Convenience wrapper around ResourceManager::get for loading * songs. */ - Music *getMusic(const std::string &idPath) A_WARN_UNUSED; + SDLMusic *getMusic(const std::string &idPath) A_WARN_UNUSED; /** * Convenience wrapper around ResourceManager::get for loading diff --git a/src/resources/sdlmusic.cpp b/src/resources/sdlmusic.cpp new file mode 100644 index 000000000..fe06b43f1 --- /dev/null +++ b/src/resources/sdlmusic.cpp @@ -0,0 +1,59 @@ +/* + * The ManaPlus Client + * Copyright (C) 2004-2009 The Mana World Development Team + * Copyright (C) 2009-2010 The Mana Developers + * Copyright (C) 2011-2012 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include "resources/sdlmusic.h" + +#include "logger.h" + +#include "debug.h" + +SDLMusic::SDLMusic(Mix_Music *const music) : + Resource(), + mMusic(music) +{ +} + +SDLMusic::~SDLMusic() +{ + Mix_FreeMusic(mMusic); +} + +Resource *SDLMusic::load(SDL_RWops *const rw) +{ + if (Mix_Music *const music = Mix_LoadMUS_RW(rw)) + { + return new SDLMusic(music); + } + else + { + logger->log("Error, failed to load music: %s", Mix_GetError()); + return nullptr; + } +} + +bool SDLMusic::play(const int loops, const int fadeIn) +{ + if (fadeIn > 0) + return Mix_FadeInMusic(mMusic, loops, fadeIn); + else + return Mix_PlayMusic(mMusic, loops); +} diff --git a/src/resources/sdlmusic.h b/src/resources/sdlmusic.h new file mode 100644 index 000000000..2d599cb4b --- /dev/null +++ b/src/resources/sdlmusic.h @@ -0,0 +1,81 @@ +/* + * The ManaPlus Client + * Copyright (C) 2004-2009 The Mana World Development Team + * Copyright (C) 2009-2010 The Mana Developers + * Copyright (C) 2011-2012 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef SDLMUSIC_H +#define SDLMUSIC_H + +#include "resources/resource.h" + +#include + +#include "localconsts.h" + +/** + * Defines a class for loading and storing music. + */ +class SDLMusic final : public Resource +{ + public: + SDLMusic() : + Resource(), + mMusic(nullptr) + { } + + A_DELETE_COPY(SDLMusic) + + /** + * Destructor. + */ + virtual ~SDLMusic(); + + /** + * Loads a music from a buffer in memory. + * + * @param rw The SDL_RWops to load the music data from. + * + * @return NULL if the an error occurred, a valid pointer + * otherwise. + */ + static Resource *load(SDL_RWops *const rw) A_WARN_UNUSED; + + /** + * Plays the music. + * + * @param loops Number of times to repeat the playback (-1 means + * forever). + * @param fadeIn Duration in milliseconds to fade in the music. + * + * @return true if the playback started properly + * false otherwise. + */ + bool play(const int loops = -1, const int fadeIn = 0); + + protected: + /** + * Constructor. + */ + SDLMusic(Mix_Music *const music); + + Mix_Music *mMusic; +}; + +#endif diff --git a/src/sound.cpp b/src/sound.cpp index 82e7b2f6d..a316abc9d 100644 --- a/src/sound.cpp +++ b/src/sound.cpp @@ -25,7 +25,7 @@ #include "configuration.h" #include "localplayer.h" -#include "resources/music.h" +#include "resources/sdlmusic.h" #include "resources/resourcemanager.h" #include "resources/soundeffect.h" @@ -211,7 +211,7 @@ void Sound::setSfxVolume(const int volume) Mix_Volume(-1, mSfxVolume); } -static Music *loadMusic(const std::string &fileName) +static SDLMusic *loadMusic(const std::string &fileName) { ResourceManager *const resman = ResourceManager::getInstance(); return resman->getMusic(paths.getStringValue("music") + fileName); diff --git a/src/sound.h b/src/sound.h index 7aba7e7be..12b75a86b 100644 --- a/src/sound.h +++ b/src/sound.h @@ -31,7 +31,7 @@ #include "localconsts.h" -class Music; +class SDLMusic; static const std::string SOUND_INFO = "soundinfo"; static const std::string SOUND_ERROR = "sounderror"; @@ -164,7 +164,7 @@ class Sound final : public ConfigListener int mMusicVolume; std::string mCurrentMusicFile; - Music *mMusic; + SDLMusic *mMusic; bool mPlayBattle; bool mPlayGui; bool mPlayMusic; -- cgit v1.2.3-60-g2f50