From b0ca04e1baf9a3405bfb50d7c3d95e8e425f4c3e Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Fri, 12 Sep 2008 00:40:06 +0200 Subject: Serverstatus zeigt die Speicherauslastung an --- src/Net/Packets/CoreStatusPacket.h | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) (limited to 'src/Net/Packets/CoreStatusPacket.h') diff --git a/src/Net/Packets/CoreStatusPacket.h b/src/Net/Packets/CoreStatusPacket.h index 14b022e..a19f8e7 100644 --- a/src/Net/Packets/CoreStatusPacket.h +++ b/src/Net/Packets/CoreStatusPacket.h @@ -27,33 +27,34 @@ namespace Net { namespace Packets { class CoreStatusPacket : public Packet { + private: + CoreStatusPacket& operator=(const CoreStatusPacket &p); + CoreStatusPacket(const CoreStatusPacket &p); + protected: struct CoreStatusData { uint32_t uptime; uint32_t idleTime; + + uint32_t totalMem; + uint32_t freeMem; + uint32_t totalSwap; + uint32_t freeSwap; }; CoreStatusData *coreStatusData; public: - CoreStatusPacket(Type type, uint16_t requestId, uint32_t uptime = 0, uint32_t idleTime = 0); + CoreStatusPacket(Type type, uint16_t requestId, uint32_t uptime = 0, uint32_t idleTime = 0, + uint32_t totalMem = 0, uint32_t freeMem = 0, uint32_t totalSwap = 0, uint32_t freeSwap = 0); CoreStatusPacket(const Packet &p) : Packet(p) { setLength(sizeof(CoreStatusData)); coreStatusData = (CoreStatusData*)&rawData->data; } - CoreStatusPacket(const CoreStatusPacket &p) : Packet(p) { - setLength(sizeof(CoreStatusData)); - coreStatusData = (CoreStatusData*)&rawData->data; - } - CoreStatusPacket& operator=(const Packet &p); - CoreStatusPacket& operator=(const CoreStatusPacket &p) { - return (*this = (Packet)p); - } - uint32_t getUptime() const { return ntohl(coreStatusData->uptime); } @@ -61,6 +62,22 @@ class CoreStatusPacket : public Packet { uint32_t getIdleTime() const { return ntohl(coreStatusData->idleTime); } + + uint32_t getTotalMem() const { + return ntohl(coreStatusData->totalMem); + } + + uint32_t getFreeMem() const { + return ntohl(coreStatusData->freeMem); + } + + uint32_t getTotalSwap() const { + return ntohl(coreStatusData->totalSwap); + } + + uint32_t getFreeSwap() const { + return ntohl(coreStatusData->freeSwap); + } }; } -- cgit v1.2.3