Page Speed Optimization Libraries  1.2.24.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Member Functions
net_instaweb::SplitHistogram Class Reference

#include "split_statistics.h"

Inheritance diagram for net_instaweb::SplitHistogram:
net_instaweb::Histogram

List of all members.

Public Member Functions

 SplitHistogram (ThreadSystem *thread_system, Histogram *rw, Histogram *w)
virtual void Add (double value)
virtual void Clear ()
 Throw away all data.
virtual void Render (int index, Writer *writer, MessageHandler *handler)
virtual int NumBuckets ()
 Returns number of buckets the histogram actually has.
virtual void EnableNegativeBuckets ()
 Allow histogram have negative values.
virtual void SetMinValue (double value)
 Set the minimum value allowed in histogram.
virtual void SetMaxValue (double value)
virtual void SetSuggestedNumBuckets (int i)
virtual double BucketStart (int index)
virtual double BucketLimit (int index)
 Upper bound of a bucket.
virtual double BucketCount (int index)
 Value of a bucket.

Protected Member Functions

virtual double AverageInternal ()
 Note that these *Internal interfaces require the mutex to be held.
virtual double PercentileInternal (const double perc)
virtual double StandardDeviationInternal ()
virtual double CountInternal ()
virtual double MaximumInternal ()
virtual double MinimumInternal ()
virtual AbstractMutexlock ()

Detailed Description

A histogram that forwards writes to two other Histogram objects, but reads only from one.


Constructor & Destructor Documentation

Histogram 'rw' will be used to read and write, histogram 'w' will be used for writes only. Does not take ownership of either 'rw' or 'w'. 'rw' and 'w' must be non-NULL.


Member Function Documentation

virtual void net_instaweb::SplitHistogram::Add ( double  value) [virtual]

Reimplementation of the histogram API. See the base class for method descriptions.

Implements net_instaweb::Histogram.

virtual double net_instaweb::SplitHistogram::BucketStart ( int  index) [virtual]

Lower bound of a bucket. If index == NumBuckets() + 1, returns the upper bound of the histogram. DCHECK if index is in the range of [0, NumBuckets()+1].

Implements net_instaweb::Histogram.

virtual void net_instaweb::SplitHistogram::Render ( int  index,
Writer writer,
MessageHandler handler 
) [virtual]

Write Histogram Data to the writer. Default implementation does not include histogram graph, but only raw histogram data table. It looks like: ________________________________________ | TITLE String | | Avg: StdDev: Median: 90%: 95%: 99% | | Raw Histogram Data: | | [0,1] 1 25% 25% ||||| | | [2,3] 1 25% 50% ||||| | | [4,5] 2 50% 100% |||||||||| | |_______________________________________|

Reimplemented from net_instaweb::Histogram.

virtual void net_instaweb::SplitHistogram::SetMaxValue ( double  value) [virtual]

Set the value upper-bound of a histogram, the value range in histogram is [MinValue, MaxValue) or [-MaxValue, MaxValue) if enabled negative buckets.

Implements net_instaweb::Histogram.

virtual void net_instaweb::SplitHistogram::SetSuggestedNumBuckets ( int  i) [virtual]

Set the suggested number of buckets for the histogram. The implementation may chose to use a somewhat different number.

Implements net_instaweb::Histogram.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines