memory_advice::IMetricsProvider

This is an abstract class.

#include <metrics_provider.h>

Provides memory info from various metrics.

Summary

Inheritance

Direct Known Subclasses:memory_advice::DefaultMetricsProvider

Constructors and Destructors

~IMetricsProvider()

Public types

MetricsFunction)() typedef
Json::object(IMetricsProvider::*

Public attributes

metrics_categories_ = { {"meminfo", &IMetricsProvider::GetMeminfoValues}, {"status", &IMetricsProvider::GetStatusValues}, {"proc", &IMetricsProvider::GetProcValues}, {"debug", &IMetricsProvider::GetDebugValues}, {"MemoryInfo", &IMetricsProvider::GetActivityManagerMemoryInfo}, {"ActivityManager", &IMetricsProvider::GetActivityManagerValues}}
std::map< std::string, MetricsFunction >
A map matching metrics category names to their functions.

Public functions

GetActivityManagerMemoryInfo()=0
virtual Json::object
Get a list of memory metrics available from ActivityManager::getMemoryInfo().
GetActivityManagerValues()=0
virtual Json::object
Get a list of memory metrics available from ActivityManager.
GetDebugValues()=0
virtual Json::object
Get a list of memory metrics available from android.os.Debug.
GetMeminfoValues()=0
virtual Json::object
Get a list of memory metrics stored in /proc/meminfo.
GetProcValues()=0
virtual Json::object
Get a list of various memory metrics stored in /proc/{pid} folder.
GetStatusValues()=0
virtual Json::object
Get a list of memory metrics stored in /proc/{pid}/status.

Public types

MetricsFunction

Json::object(IMetricsProvider::* MetricsFunction)()

Public attributes

metrics_categories_

std::map< std::string, MetricsFunction > metrics_categories_ = {
        {"meminfo", &IMetricsProvider::GetMeminfoValues},
        {"status", &IMetricsProvider::GetStatusValues},
        {"proc", &IMetricsProvider::GetProcValues},
        {"debug", &IMetricsProvider::GetDebugValues},
        {"MemoryInfo", &IMetricsProvider::GetActivityManagerMemoryInfo},
        {"ActivityManager", &IMetricsProvider::GetActivityManagerValues}}

A map matching metrics category names to their functions.

Public functions

GetActivityManagerMemoryInfo

virtual Json::object GetActivityManagerMemoryInfo()=0

Get a list of memory metrics available from ActivityManager::getMemoryInfo().

GetActivityManagerValues

virtual Json::object GetActivityManagerValues()=0

Get a list of memory metrics available from ActivityManager.

GetDebugValues

virtual Json::object GetDebugValues()=0

Get a list of memory metrics available from android.os.Debug.

GetMeminfoValues

virtual Json::object GetMeminfoValues()=0

Get a list of memory metrics stored in /proc/meminfo.

GetProcValues

virtual Json::object GetProcValues()=0

Get a list of various memory metrics stored in /proc/{pid} folder.

GetStatusValues

virtual Json::object GetStatusValues()=0

Get a list of memory metrics stored in /proc/{pid}/status.

~IMetricsProvider

virtual  ~IMetricsProvider()