| 123456789101112131415161718192021222324252627282930 | 
							- #pragma once
 
- #include <atomic>
 
- #include "prometheus/client_metric.h"
 
- #include "prometheus/collectable.h"
 
- namespace prometheus {
 
- class Gauge {
 
-  public:
 
-   static const MetricType metric_type = MetricType::Gauge;
 
-   Gauge();
 
-   Gauge(double);
 
-   void Increment();
 
-   void Increment(double);
 
-   void Decrement();
 
-   void Decrement(double);
 
-   void Set(double);
 
-   void SetToCurrentTime();
 
-   double Value() const;
 
-   ClientMetric Collect();
 
-  private:
 
-   void Change(double);
 
-   std::atomic<double> value_;
 
- };
 
- }
 
 
  |