diff options
Diffstat (limited to 'lldb/tools/lldb-perf/lib/MemoryGauge.h')
-rw-r--r-- | lldb/tools/lldb-perf/lib/MemoryGauge.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/lldb/tools/lldb-perf/lib/MemoryGauge.h b/lldb/tools/lldb-perf/lib/MemoryGauge.h new file mode 100644 index 00000000000..272b9969b8c --- /dev/null +++ b/lldb/tools/lldb-perf/lib/MemoryGauge.h @@ -0,0 +1,53 @@ +// +// MemoryGauge.h +// PerfTestDriver +// +// Created by Enrico Granata on 3/6/13. +// Copyright (c) 2013 Apple Inc. All rights reserved. +// + +#ifndef __PerfTestDriver__MemoryGauge__ +#define __PerfTestDriver__MemoryGauge__ + +#include "Gauge.h" + +#include <mach/task_info.h> + +namespace lldb { namespace perf +{ +class MemoryGauge : public Gauge<mach_vm_size_t> +{ +private: + enum class State + { + eMSNeverUsed, + eMSCounting, + eMSStopped + }; + + SizeType + now (); + + SizeType m_start; + State m_state; + SizeType m_value; + +public: + MemoryGauge (); + + virtual + ~MemoryGauge () + {} + + void + start (); + + SizeType + stop (); + + SizeType + value (); +}; +} } + +#endif /* defined(__PerfTestDriver__MemoryGauge__) */ |