From c13933a7921806c388765bc6585cad6b9cbdcfae Mon Sep 17 00:00:00 2001 From: hikerstk Date: Wed, 8 Sep 2010 11:39:19 +0000 Subject: [PATCH] Added more NoCopy. git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@5922 178a84e3-b1eb-0310-8ba1-8eac791a3b58 --- src/audio/music.hpp | 3 ++- src/audio/music_information.hpp | 4 +++- src/audio/music_manager.hpp | 3 ++- src/audio/sfx_base.hpp | 3 ++- src/audio/sfx_manager.hpp | 3 ++- src/challenges/challenge.hpp | 5 +++-- src/challenges/unlock_manager.hpp | 4 +++- src/config/device_config.hpp | 10 ++++++---- src/config/player.hpp | 3 ++- src/config/stk_config.hpp | 4 ++-- src/config/user_config.hpp | 5 +++-- 11 files changed, 30 insertions(+), 17 deletions(-) diff --git a/src/audio/music.hpp b/src/audio/music.hpp index d547d1dc2..be0ac9695 100644 --- a/src/audio/music.hpp +++ b/src/audio/music.hpp @@ -22,11 +22,12 @@ #include +#include "utils/no_copy.hpp" /** * \brief Abstract interface for classes that can handle music playback * \ingroup audio */ -class Music +class Music : public NoCopy { public: virtual bool load (const std::string& filename) = 0; diff --git a/src/audio/music_information.hpp b/src/audio/music_information.hpp index b39044f45..927f4ca46 100644 --- a/src/audio/music_information.hpp +++ b/src/audio/music_information.hpp @@ -24,6 +24,8 @@ #include #include +#include "utils/no_copy.hpp" + class Music; /** @@ -32,7 +34,7 @@ class Music; * Delegates many calls to the underlying Music instance. * \ingroup audio */ -class MusicInformation +class MusicInformation : public NoCopy { private: std::string m_composer; diff --git a/src/audio/music_manager.hpp b/src/audio/music_manager.hpp index 11da6dbdc..1d2d7ea65 100644 --- a/src/audio/music_manager.hpp +++ b/src/audio/music_manager.hpp @@ -27,6 +27,7 @@ #include "audio/music.hpp" #include "audio/music_information.hpp" +#include "utils/no_copy.hpp" class Vec3; @@ -34,7 +35,7 @@ class Vec3; * \brief Central place to request for musics to be loaded, played, stopped, etc... * \ingroup audio */ -class MusicManager +class MusicManager : public NoCopy { private: MusicInformation *m_current_music; diff --git a/src/audio/sfx_base.hpp b/src/audio/sfx_base.hpp index 971e262d0..c2eed36dd 100644 --- a/src/audio/sfx_base.hpp +++ b/src/audio/sfx_base.hpp @@ -22,6 +22,7 @@ #define HEADER_SFX_HPP #include "audio/sfx_manager.hpp" +#include "utils/no_copy.hpp" /** * \defgroup audio @@ -38,7 +39,7 @@ class Vec3; * looping sfx like engine sounds) when necessary. * \ingroup audio */ -class SFXBase +class SFXBase : public NoCopy { public: virtual ~SFXBase() {} diff --git a/src/audio/sfx_manager.hpp b/src/audio/sfx_manager.hpp index 239600316..d08f96861 100644 --- a/src/audio/sfx_manager.hpp +++ b/src/audio/sfx_manager.hpp @@ -29,6 +29,7 @@ # include #endif +#include "utils/no_copy.hpp" #include "utils/vec3.hpp" class SFXBase; @@ -41,7 +42,7 @@ class XMLNode; * on of the (shared) buffers from the sound manager. * \ingroup audio */ -class SFXManager +class SFXManager : public NoCopy { public: diff --git a/src/challenges/challenge.hpp b/src/challenges/challenge.hpp index e832141ff..dbe32ae77 100644 --- a/src/challenges/challenge.hpp +++ b/src/challenges/challenge.hpp @@ -24,12 +24,13 @@ * \defgroup challenges */ - #include #include #include #include +#include "utils/no_copy.hpp" + class XMLNode; enum REWARD_TYPE @@ -52,7 +53,7 @@ struct UnlockableFeature * \brief A class for all challenges * \ingroup challenges */ -class Challenge +class Challenge : public NoCopy { private: enum {CH_INACTIVE, // challenge not yet possible diff --git a/src/challenges/unlock_manager.hpp b/src/challenges/unlock_manager.hpp index 95a241bad..9d27029d5 100644 --- a/src/challenges/unlock_manager.hpp +++ b/src/challenges/unlock_manager.hpp @@ -23,6 +23,8 @@ #include #include "challenges/challenge.hpp" +#include "utils/no_copy.hpp" + #include class XMLNode; @@ -32,7 +34,7 @@ class SFXBase; * \brief main class to handle locking/challenges * \ingroup challenges */ -class UnlockManager +class UnlockManager : public NoCopy { private: SFXBase *m_locked_sound; diff --git a/src/config/device_config.hpp b/src/config/device_config.hpp index 2f5dd91a8..4a6d87a34 100644 --- a/src/config/device_config.hpp +++ b/src/config/device_config.hpp @@ -1,12 +1,14 @@ #ifndef DEVICE_CONFIG_HPP #define DEVICE_CONFIG_HPP -#include #include "input/input.hpp" -#include -#include #include "io/xml_node.hpp" +#include "utils/no_copy.hpp" + +#include +#include #include +#include /** * \ingroup config @@ -33,7 +35,7 @@ enum DeviceConfigType * \brief contains the key bindings information related to one input device * \ingroup config */ -class DeviceConfig +class DeviceConfig : public NoCopy { private: diff --git a/src/config/player.hpp b/src/config/player.hpp index 2e4011ba4..d7a236d78 100644 --- a/src/config/player.hpp +++ b/src/config/player.hpp @@ -22,6 +22,7 @@ #include #include "config/user_config.hpp" +#include "utils/no_copy.hpp" /** * \brief Class for managing player profiles (name, control configuration, etc.) @@ -29,7 +30,7 @@ * A list of currently playing players will be stored somewhere else (FIXME : complete comment) * \ingroup config */ -class PlayerProfile +class PlayerProfile : public NoCopy { protected: diff --git a/src/config/stk_config.hpp b/src/config/stk_config.hpp index 682d10c9f..3f19a3212 100644 --- a/src/config/stk_config.hpp +++ b/src/config/stk_config.hpp @@ -25,8 +25,8 @@ */ #include "karts/kart_properties.hpp" +#include "utils/no_copy.hpp" -//class Lisp; class XMLNode; class MusicInformation; @@ -37,7 +37,7 @@ class MusicInformation; * each kart (but which can be overwritten for each kart, too). * \ingroup config */ -class STKConfig +class STKConfig : public NoCopy { protected: KartProperties m_kart_properties; /**< Default kart properties. */ diff --git a/src/config/user_config.hpp b/src/config/user_config.hpp index e4f362342..bb7bfa487 100644 --- a/src/config/user_config.hpp +++ b/src/config/user_config.hpp @@ -47,6 +47,7 @@ const int CURRENT_CONFIG_VERSION = 8; #include "input/input.hpp" #include "utils/constants.hpp" +#include "utils/no_copy.hpp" #include "utils/ptr_vector.hpp" class XMLNode; @@ -55,7 +56,7 @@ class PlayerProfile; /** * The base of a set of small utilities to enable quickly adding/removing stuff to/from config painlessly. */ -class UserConfigParam +class UserConfigParam : public NoCopy { friend class GroupUserConfigParam; protected: @@ -335,7 +336,7 @@ namespace UserConfigParams * \brief Class for managing general STK user configuration data. * \ingroup config */ -class UserConfig +class UserConfig : public NoCopy { private: