From 91753e0f4b2e512259c52e6258d250ef3332c053 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Wed, 24 Sep 2008 16:08:08 +0200 Subject: Ordne SystemBackends nach Priorit?ten --- src/Common/SystemBackend.cpp | 3 ++- src/Common/SystemBackend.h | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Common/SystemBackend.cpp b/src/Common/SystemBackend.cpp index 4bbc68a..0d4b2b7 100644 --- a/src/Common/SystemBackend.cpp +++ b/src/Common/SystemBackend.cpp @@ -22,7 +22,8 @@ namespace Mad { namespace Common { -std::set SystemBackend::backends; +std::set SystemBackend::backends; + SystemBackend::UptimeInfo SystemBackend::getUptimeInfo() { UptimeInfo ret = {0, 0}; diff --git a/src/Common/SystemBackend.h b/src/Common/SystemBackend.h index 960082e..c531224 100644 --- a/src/Common/SystemBackend.h +++ b/src/Common/SystemBackend.h @@ -48,7 +48,16 @@ class SystemBackend { }; private: - static std::set backends; + struct Compare { + bool operator() (const SystemBackend *b1, const SystemBackend *b2) { + if(b1->getPriority() == b2->getPriority()) + return (b1 > b2); + else + return (b1->getPriority() > b2->getPriority()); + } + }; + + static std::set backends; protected: SystemBackend() {} @@ -76,6 +85,10 @@ class SystemBackend { return ret; } + virtual int getPriority() const { + return 0; + } + public: virtual ~SystemBackend() {} -- cgit v1.2.3