Program Listing for File utilization_metrics.hpp

Return to documentation for file (cosm/arena/metrics/caches/utilization_metrics.hpp)

#pragma once

/*******************************************************************************
 * Includes
 ******************************************************************************/
#include "rcppsw/metrics/base_metrics.hpp"
#include "rcppsw/rcppsw.hpp"

/*******************************************************************************
 * Namespaces
 ******************************************************************************/
namespace cosm::arena::metrics::caches {

/*******************************************************************************
 * Class Definitions
 ******************************************************************************/
class utilization_metrics : virtual public rmetrics::base_metrics {
 public:
  utilization_metrics(void) = default;
  ~utilization_metrics(void) override = default;
  utilization_metrics(const utilization_metrics&) = default;
  utilization_metrics& operator=(const utilization_metrics&) = default;

  virtual size_t n_blocks(void) const = 0;

  virtual size_t total_block_pickups(void) const = 0;

  virtual size_t total_block_drops(void) const = 0;
};

} /* namespace cosm::arena::metrics::caches */