| OLD | NEW | 
|   1 /* |   1 /* | 
|   2  *  Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |   2  *  Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 
|   3  * |   3  * | 
|   4  *  Use of this source code is governed by a BSD-style license |   4  *  Use of this source code is governed by a BSD-style license | 
|   5  *  that can be found in the LICENSE file in the root of the source |   5  *  that can be found in the LICENSE file in the root of the source | 
|   6  *  tree. An additional intellectual property rights grant can be found |   6  *  tree. An additional intellectual property rights grant can be found | 
|   7  *  in the file PATENTS.  All contributing project authors may |   7  *  in the file PATENTS.  All contributing project authors may | 
|   8  *  be found in the AUTHORS file in the root of the source tree. |   8  *  be found in the AUTHORS file in the root of the source tree. | 
|   9  */ |   9  */ | 
|  10  |  10  | 
|  11 #ifndef WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ |  11 #ifndef WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ | 
|  12 #define WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ |  12 #define WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ | 
|  13  |  13  | 
|  14 #include <vector> |  14 #include <vector> | 
|  15  |  15  | 
|  16 #include "webrtc/rtc_base/optional.h" |  16 #include "webrtc/api/optional.h" | 
|  17  |  17  | 
|  18 namespace webrtc { |  18 namespace webrtc { | 
|  19 class MovingAverage { |  19 class MovingAverage { | 
|  20  public: |  20  public: | 
|  21   explicit MovingAverage(size_t s); |  21   explicit MovingAverage(size_t s); | 
|  22   void AddSample(int sample); |  22   void AddSample(int sample); | 
|  23   rtc::Optional<int> GetAverage() const; |  23   rtc::Optional<int> GetAverage() const; | 
|  24   rtc::Optional<int> GetAverage(size_t num_samples) const; |  24   rtc::Optional<int> GetAverage(size_t num_samples) const; | 
|  25   void Reset(); |  25   void Reset(); | 
|  26   size_t size() const; |  26   size_t size() const; | 
|  27  |  27  | 
|  28  private: |  28  private: | 
|  29   size_t count_ = 0; |  29   size_t count_ = 0; | 
|  30   int sum_ = 0; |  30   int sum_ = 0; | 
|  31   std::vector<int> sum_history_; |  31   std::vector<int> sum_history_; | 
|  32 }; |  32 }; | 
|  33 }  // namespace webrtc |  33 }  // namespace webrtc | 
|  34  |  34  | 
|  35 #endif  // WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ |  35 #endif  // WEBRTC_MODULES_VIDEO_CODING_UTILITY_MOVING_AVERAGE_H_ | 
| OLD | NEW |