diff --git a/src/ChargeAudio.hpp b/src/ChargeAudio.hpp index fa54826..3eead2c 100644 --- a/src/ChargeAudio.hpp +++ b/src/ChargeAudio.hpp @@ -1,6 +1,7 @@ #ifndef CHARGE_AUDIO_BASE_H #define CHARGE_AUDIO_BASE_H #include +#include #include #include #include @@ -20,6 +21,14 @@ class Sound { public: enum class SoundState { Idle, Playing, Paused, Finished }; + // No copying + Sound(const Sound &) = delete; + Sound &operator=(const Sound &) = delete; + + // No moving + Sound(Sound &&) = delete; + Sound &operator=(Sound &&) = delete; + ~Sound(); void Play(); void Pause(); @@ -49,6 +58,10 @@ private: class Listener { public: + // No copying, can move + Listener(const Listener &) = delete; + Listener &operator=(const Listener &) = delete; + void SetEnabled(bool isEnabled); const bool GetEnabled(); void SetDirection(Magnum::Vector3 position); @@ -66,6 +79,15 @@ private: class Engine { public: Engine(); + + // No copying + Engine(const Engine &) = delete; + Engine &operator=(const Engine &) = delete; + + // No movement + Engine(Engine &&) = delete; + Engine &operator=(Engine &&) = delete; + ~Engine(); // Creating tools diff --git a/src/Engine.cpp b/src/Engine.cpp index 6bc9495..baaf4b2 100644 --- a/src/Engine.cpp +++ b/src/Engine.cpp @@ -1,6 +1,7 @@ #include "ChargeAudio.hpp" #include #include +#include #include #include