summaryrefslogtreecommitdiff
path: root/indra/llcommon/llsys.h
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2011-07-15 13:20:49 -0400
committerOz Linden <oz@lindenlab.com>2011-07-15 13:20:49 -0400
commitfc5aaf5df8d3b064c05539c7b6911a4c3f4dc1c7 (patch)
tree8cf986ce2aa3f072bd332c098599afa3e195e7e3 /indra/llcommon/llsys.h
parent4d432251e44b4e6377d0edb45a83404e848155a3 (diff)
parented648b1f08a191250c5c37f831280c31950b502a (diff)
merge changes for storm-1509
Diffstat (limited to 'indra/llcommon/llsys.h')
-rw-r--r--indra/llcommon/llsys.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/indra/llcommon/llsys.h b/indra/llcommon/llsys.h
index 41a4f25000..739e795d3a 100644
--- a/indra/llcommon/llsys.h
+++ b/indra/llcommon/llsys.h
@@ -36,6 +36,7 @@
// llinfos << info << llendl;
//
+#include "llsd.h"
#include <iosfwd>
#include <string>
@@ -117,6 +118,27 @@ public:
//get the available memory infomation in KiloBytes.
static void getAvailableMemoryKB(U32& avail_physical_mem_kb, U32& avail_virtual_mem_kb);
+
+ // Retrieve a map of memory statistics. The keys of the map are platform-
+ // dependent. The values are in kilobytes to try to avoid integer overflow.
+ LLSD getStatsMap() const;
+
+ // Re-fetch memory data (as reported by stream() and getStatsMap()) from the
+ // system. Normally this is fetched at construction time. Return (*this)
+ // to permit usage of the form:
+ // @code
+ // LLMemoryInfo info;
+ // ...
+ // info.refresh().getStatsMap();
+ // @endcode
+ LLMemoryInfo& refresh();
+
+private:
+ // set mStatsMap
+ static LLSD loadStatsMap();
+
+ // Memory stats for getStatsMap().
+ LLSD mStatsMap;
};