From fd673a415fe5fce87a3559f03e67b68e54c94748 Mon Sep 17 00:00:00 2001 From: Kayne Ruse Date: Mon, 21 Apr 2014 01:01:00 +1000 Subject: [PATCH] Removed singleton pattern --- client/client_application.cpp | 16 +--------------- client/client_application.hpp | 11 +++-------- client/main.cpp | 9 +++++---- editor/editor_application.cpp | 16 +--------------- editor/editor_application.hpp | 11 +++-------- editor/main.cpp | 9 +++++---- server/main.cpp | 2 +- server/server_application.cpp | 2 +- server/server_application.hpp | 2 +- 9 files changed, 21 insertions(+), 57 deletions(-) diff --git a/client/client_application.cpp b/client/client_application.cpp index c407ba3..ecddb97 100644 --- a/client/client_application.cpp +++ b/client/client_application.cpp @@ -26,12 +26,6 @@ #include #include -//------------------------- -//Static declarations -//------------------------- - -ClientApplication ClientApplication::instance; - //------------------------- //Scene headers //------------------------- @@ -48,15 +42,7 @@ ClientApplication ClientApplication::instance; //Public access members //------------------------- -ClientApplication::ClientApplication() { - // -} - -ClientApplication::~ClientApplication() { - // -} - -void ClientApplication::Init() { +void ClientApplication::Init(int argc, char** argv) { //load the prerequisites config.Load("rsc\\config.cfg"); diff --git a/client/client_application.hpp b/client/client_application.hpp index 3c2b151..d4b22f5 100644 --- a/client/client_application.hpp +++ b/client/client_application.hpp @@ -29,16 +29,11 @@ #include "udp_network_utility.hpp" class ClientApplication { -private: - //TODO: I don't want singletons - ClientApplication(); - ~ClientApplication(); - static ClientApplication instance; - public: - static ClientApplication* GetInstance() { return &instance; } + ClientApplication() = default; + ~ClientApplication() = default; - void Init(); + void Init(int argc, char** argv); void Proc(); void Quit(); diff --git a/client/main.cpp b/client/main.cpp index d31c0a3..18adf3f 100644 --- a/client/main.cpp +++ b/client/main.cpp @@ -26,12 +26,13 @@ using namespace std; -int main(int, char**) { +int main(int argc, char** argv) { cout << "Beginning client" << endl; try { - ClientApplication::GetInstance()->Init(); - ClientApplication::GetInstance()->Proc(); - ClientApplication::GetInstance()->Quit(); + ClientApplication app; + app.Init(argc, argv); + app.Proc(); + app.Quit(); } catch(exception& e) { cerr << "Fatal exception thrown: " << e.what() << endl; diff --git a/editor/editor_application.cpp b/editor/editor_application.cpp index 7f3f30c..12aa335 100644 --- a/editor/editor_application.cpp +++ b/editor/editor_application.cpp @@ -24,12 +24,6 @@ #include #include -//------------------------- -//Static declarations -//------------------------- - -EditorApplication EditorApplication::instance; - //------------------------- //Scene headers //------------------------- @@ -42,15 +36,7 @@ EditorApplication EditorApplication::instance; //Public access members //------------------------- -EditorApplication::EditorApplication() { - // -} - -EditorApplication::~EditorApplication() { - // -} - -void EditorApplication::Init() { +void EditorApplication::Init(int argc, char** argv) { config.Load("rsc\\config.cfg"); if (SDL_Init(SDL_INIT_VIDEO)) throw(std::runtime_error("Failed to initialize SDL")); diff --git a/editor/editor_application.hpp b/editor/editor_application.hpp index 66db8be..89aac86 100644 --- a/editor/editor_application.hpp +++ b/editor/editor_application.hpp @@ -27,16 +27,11 @@ #include "config_utility.hpp" class EditorApplication { -private: - //TODO: I don't want singletons - EditorApplication(); - ~EditorApplication(); - static EditorApplication instance; - public: - static EditorApplication* GetInstance() { return &instance; } + EditorApplication() = default; + ~EditorApplication() = default; - void Init(); + void Init(int argc, char** argv); void Proc(); void Quit(); diff --git a/editor/main.cpp b/editor/main.cpp index 3348ec0..3b09845 100644 --- a/editor/main.cpp +++ b/editor/main.cpp @@ -26,12 +26,13 @@ using namespace std; -int main(int, char**) { +int main(int argc, char** argv) { cout << "Beginning editor" << endl; try { - EditorApplication::GetInstance()->Init(); - EditorApplication::GetInstance()->Proc(); - EditorApplication::GetInstance()->Quit(); + EditorApplication app; + app.Init(argc, argv); + app.Proc(); + app.Quit(); } catch(exception& e) { cerr << "Fatal exception thrown: " << e.what() << endl; diff --git a/server/main.cpp b/server/main.cpp index 560bb95..4da6edf 100644 --- a/server/main.cpp +++ b/server/main.cpp @@ -33,7 +33,7 @@ int main(int argc, char** argv) { try { ServerApplication app; app.Init(argc, argv); - app.Loop(); + app.Proc(); app.Quit(); } catch(exception& e) { diff --git a/server/server_application.cpp b/server/server_application.cpp index 81009f4..390a347 100644 --- a/server/server_application.cpp +++ b/server/server_application.cpp @@ -97,7 +97,7 @@ void ServerApplication::Init(int argc, char** argv) { // } -void ServerApplication::Loop() { +void ServerApplication::Proc() { SerialPacket packet; while(running) { //suck in the waiting packets & process them diff --git a/server/server_application.hpp b/server/server_application.hpp index 4538bdc..b0b3fe6 100644 --- a/server/server_application.hpp +++ b/server/server_application.hpp @@ -57,7 +57,7 @@ public: ~ServerApplication() = default; void Init(int argc, char** argv); - void Loop(); + void Proc(); void Quit(); private: