OEMCrypto Profiler

This CL is a merge from the widevine repo of:
http://go/wvgerrit/16491 Circular Buffer
http://go/wvgerrit/16512 Circular Buffer Tests
http://go/wvgerrit/16493 Entry Writer
http://go/wvgerrit/16495 Profiled Scope
http://go/wvgerrit/16500 Stats Collection
http://go/wvgerrit/16543 Disallow Stats Copy or Assign
http://go/wvgerrit/16514 Moving OEM Function Enum
http://go/wvgerrit/16501 Defining Session Interface
http://go/wvgerrit/16502 Session Definitions
http://go/wvgerrit/16573 Remove code to num bytes table
http://go/wvgerrit/16556 Connecting Profiler to Profiled Scope
http://go/wvgerrit/16557 Android Reading Profiler History
http://go/wvgerrit/16574 Adding Get Stats Method
http://go/wvgerrit/16606 Seperating Session Parsing
http://go/wvgerrit/16607 Adding get stats method to DRMPlugin
http://go/wvgerrit/16608 Fixing Linux Build Failure
http://go/wvgerrit/16612 Stop Clearing History
http://go/wvgerrit/16613 Accessing profiler information using session id
http://go/wvgerrit/16614 Making All Session Subsets of Global Session

BUG: 25123303
BUG: 26027857
Change-Id: Ie2422e644aa631871852ea0e461695aeb7060f88
This commit is contained in:
Aaron Vaage
2016-01-27 10:14:46 -08:00
parent 1d805385ce
commit a249c67504
23 changed files with 1608 additions and 2 deletions

View File

@@ -0,0 +1,40 @@
// Copyright 2016 Google Inc. All Rights Reserved.
#ifndef WVCDM_PROFILER_STATS_H_
#define WVCDM_PROFILER_STATS_H_
#include <stdint.h>
namespace wvcdm {
namespace oemprofiler {
class Stat {
public:
Stat();
void Update(uint64_t sample);
void Reset();
uint64_t GetMin() const;
uint64_t GetMax() const;
uint64_t GetSampleSize() const;
double GetMean() const;
double GetVariance() const;
private:
uint64_t min_;
uint64_t max_;
double mean_;
uint64_t count_;
double sdev_m_;
double sdev_s_;
Stat(const Stat&);
void operator=(const Stat&);
};
} // namespace oemprofiler
} // namespace wvcdm
#endif