Fix copyright lines
[folly.git] / folly / stats / MultiLevelTimeSeries-defs.h
index 763aaebe08a56099ecaf82c40c91413476113342..fb29de12a8b22cb3298d0cdd1f737b6869697c17 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2016 Facebook, Inc.
+ * Copyright 2013-present Facebook, Inc.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 namespace folly {
 
-template <typename VT, typename TT>
-MultiLevelTimeSeries<VT, TT>::MultiLevelTimeSeries(
-  size_t nBuckets,
-  size_t nLevels,
-  const TimeType levelDurations[])
-    : cachedTime_(0),
-      cachedSum_(0),
-      cachedCount_(0) {
-    CHECK_GT(nLevels, 0);
-    CHECK(levelDurations);
+template <typename VT, typename CT>
+MultiLevelTimeSeries<VT, CT>::MultiLevelTimeSeries(
+    size_t nBuckets,
+    size_t nLevels,
+    const Duration levelDurations[])
+    : cachedTime_(), cachedSum_(0), cachedCount_(0) {
+  CHECK_GT(nLevels, 0u);
+  CHECK(levelDurations);
 
-    levels_.reserve(nLevels);
-    for (size_t i = 0; i < nLevels; ++i) {
-      if (levelDurations[i] == TT(0)) {
-        CHECK_EQ(i, nLevels - 1);
-      } else if (i > 0) {
-        CHECK(levelDurations[i-1] < levelDurations[i]);
-      }
-      levels_.emplace_back(nBuckets, levelDurations[i]);
+  levels_.reserve(nLevels);
+  for (size_t i = 0; i < nLevels; ++i) {
+    if (levelDurations[i] == Duration(0)) {
+      CHECK_EQ(i, nLevels - 1);
+    } else if (i > 0) {
+      CHECK(levelDurations[i - 1] < levelDurations[i]);
     }
+    levels_.emplace_back(nBuckets, levelDurations[i]);
+  }
 }
 
-template <typename VT, typename TT>
-MultiLevelTimeSeries<VT, TT>::MultiLevelTimeSeries(
+template <typename VT, typename CT>
+MultiLevelTimeSeries<VT, CT>::MultiLevelTimeSeries(
     size_t nBuckets,
-    std::initializer_list<TimeType> durations)
-    : cachedTime_(0), cachedSum_(0), cachedCount_(0) {
-  CHECK_GT(durations.size(), 0);
+    std::initializer_list<Duration> durations)
+    : cachedTime_(), cachedSum_(0), cachedCount_(0) {
+  CHECK_GT(durations.size(), 0u);
 
   levels_.reserve(durations.size());
-  int i = 0;
-  TimeType prev;
+  size_t i = 0;
+  Duration prev{0};
   for (auto dur : durations) {
-    if (dur == TT(0)) {
+    if (dur == Duration(0)) {
       CHECK_EQ(i, durations.size() - 1);
     } else if (i > 0) {
       CHECK(prev < dur);
@@ -65,24 +63,26 @@ MultiLevelTimeSeries<VT, TT>::MultiLevelTimeSeries(
   }
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::addValue(
-    TimeType now,
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::addValue(
+    TimePoint now,
     const ValueType& val) {
   addValueAggregated(now, val, 1);
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::addValue(TimeType now,
-                                            const ValueType& val,
-                                            int64_t times) {
-  addValueAggregated(now, val * times, times);
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::addValue(
+    TimePoint now,
+    const ValueType& val,
+    uint64_t times) {
+  addValueAggregated(now, val * ValueType(times), times);
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::addValueAggregated(TimeType now,
-                                                      const ValueType& total,
-                                                      int64_t nsamples) {
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::addValueAggregated(
+    TimePoint now,
+    const ValueType& total,
+    uint64_t nsamples) {
   if (cachedTime_ != now) {
     flush();
     cachedTime_ = now;
@@ -91,16 +91,16 @@ void MultiLevelTimeSeries<VT, TT>::addValueAggregated(TimeType now,
   cachedCount_ += nsamples;
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::update(TimeType now) {
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::update(TimePoint now) {
   flush();
   for (size_t i = 0; i < levels_.size(); ++i) {
     levels_[i].update(now);
   }
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::flush() {
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::flush() {
   // update all the underlying levels
   if (cachedCount_ > 0) {
     for (size_t i = 0; i < levels_.size(); ++i) {
@@ -111,15 +111,15 @@ void MultiLevelTimeSeries<VT, TT>::flush() {
   }
 }
 
-template <typename VT, typename TT>
-void MultiLevelTimeSeries<VT, TT>::clear() {
-  for (auto & level : levels_) {
+template <typename VT, typename CT>
+void MultiLevelTimeSeries<VT, CT>::clear() {
+  for (auto& level : levels_) {
     level.clear();
   }
 
-  cachedTime_ = TimeType(0);
+  cachedTime_ = TimePoint();
   cachedSum_ = 0;
   cachedCount_ = 0;
 }
 
-}  // folly
+} // namespace folly