diff options
Diffstat (limited to 'lldb/tools/lldb-perf/lib/MemoryGauge.h')
| -rw-r--r-- | lldb/tools/lldb-perf/lib/MemoryGauge.h | 63 |
1 files changed, 62 insertions, 1 deletions
diff --git a/lldb/tools/lldb-perf/lib/MemoryGauge.h b/lldb/tools/lldb-perf/lib/MemoryGauge.h index eefd274b9c4..821245557ed 100644 --- a/lldb/tools/lldb-perf/lib/MemoryGauge.h +++ b/lldb/tools/lldb-perf/lib/MemoryGauge.h @@ -15,7 +15,68 @@ namespace lldb_perf { -class MemoryGauge : public Gauge<mach_vm_size_t> +class MemoryStats +{ +public: + MemoryStats (); + MemoryStats (mach_vm_size_t,mach_vm_size_t = 0, mach_vm_size_t = 0); + MemoryStats (const MemoryStats& rhs); + + MemoryStats& + operator = (const MemoryStats& rhs); + + MemoryStats& + operator += (const MemoryStats& rhs); + + MemoryStats + operator - (const MemoryStats& rhs); + + MemoryStats& + operator / (size_t rhs); + + mach_vm_size_t + GetVirtualSize () + { + return m_virtual_size; + } + + mach_vm_size_t + GetResidentSize () + { + return m_resident_size; + } + + mach_vm_size_t + GetMaxResidentSize () + { + return m_max_resident_size; + } + + void + SetVirtualSize (mach_vm_size_t vs) + { + m_virtual_size = vs; + } + + void + SetResidentSize (mach_vm_size_t rs) + { + m_resident_size = rs; + } + + void + SetMaxResidentSize (mach_vm_size_t mrs) + { + m_max_resident_size = mrs; + } + +private: + mach_vm_size_t m_virtual_size; + mach_vm_size_t m_resident_size; + mach_vm_size_t m_max_resident_size; +}; + +class MemoryGauge : public Gauge<MemoryStats> { private: enum class State |

