Medida
metered_interface.h
00001 //
00002 // Copyright (c) 2012 Daniel Lundin
00003 //
00004 
00005 #ifndef MEDIDA_METERED_INTERFACE_H_
00006 #define MEDIDA_METERED_INTERFACE_H_
00007 
00008 #include "medida/types.h"
00009 
00010 namespace medida {
00011 
00012 class MeteredInterface {
00013 public:
00014   virtual ~MeteredInterface() {};
00015   virtual std::chrono::nanoseconds rate_unit() const = 0;
00016   virtual std::string event_type() const = 0;
00017   virtual std::uint64_t count() const = 0;
00018   virtual double fifteen_minute_rate() = 0;
00019   virtual double five_minute_rate() = 0;
00020   virtual double one_minute_rate() = 0;
00021   virtual double mean_rate() = 0;
00022 };
00023 
00024 } // namespace medida
00025 
00026 #endif // MEDIDA_METERED_INTERFACE_H_
 All Classes