<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>SynchronizedDescriptiveStatistics (Apache Commons Math 3.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="SynchronizedDescriptiveStatistics (Apache Commons Math 3.3 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/SynchronizedDescriptiveStatistics.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" target="_top">Frames</a></li>
<li><a href="SynchronizedDescriptiveStatistics.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.math3.stat.descriptive.DescriptiveStatistics">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.math3.stat.descriptive</div>
<h2 title="Class SynchronizedDescriptiveStatistics" class="title">Class SynchronizedDescriptiveStatistics</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">org.apache.commons.math3.stat.descriptive.DescriptiveStatistics</a></li>
<li>
<ul class="inheritance">
<li>org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">SynchronizedDescriptiveStatistics</span>
extends <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></pre>
<div class="block">Implementation of
 <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><code>DescriptiveStatistics</code></a> that
 is safe to use in a multithreaded environment.  Multiple threads can safely
 operate on a single instance without causing runtime exceptions due to race
 conditions.  In effect, this implementation makes modification and access
 methods atomic operations for a single instance.  That is to say, as one
 thread is computing a statistic from the instance, no other thread can modify
 the instance nor compute another statistic.</div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>1.2</dd>
<dt><span class="strong">Version:</span></dt>
  <dd>$Id: SynchronizedDescriptiveStatistics.java 1416643 2012-12-03 19:37:14Z tn $</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../../serialized-form.html#org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.commons.math3.stat.descriptive.DescriptiveStatistics">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.commons.math3.stat.descriptive.<a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></h3>
<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#INFINITE_WINDOW">INFINITE_WINDOW</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#windowSize">windowSize</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics()">SynchronizedDescriptiveStatistics</a></strong>()</code>
<div class="block">Construct an instance with infinite window</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics(int)">SynchronizedDescriptiveStatistics</a></strong>(int&nbsp;window)</code>
<div class="block">Construct an instance with finite window</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#SynchronizedDescriptiveStatistics(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">SynchronizedDescriptiveStatistics</a></strong>(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;original)</code>
<div class="block">A copy constructor.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#addValue(double)">addValue</a></strong>(double&nbsp;v)</code>
<div class="block">Adds the value to the dataset.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#apply(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">apply</a></strong>(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">UnivariateStatistic</a>&nbsp;stat)</code>
<div class="block">Apply the given statistic to the data associated with this set of statistics.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#clear()">clear</a></strong>()</code>
<div class="block">Resets all statistics and storage</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#copy()">copy</a></strong>()</code>
<div class="block">Returns a copy of this SynchronizedDescriptiveStatistics instance with the
 same internal state.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#copy(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics, org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">copy</a></strong>(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;source,
    <a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;dest)</code>
<div class="block">Copies source to dest.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getElement(int)">getElement</a></strong>(int&nbsp;index)</code>
<div class="block">Returns the element at the specified index</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getN()">getN</a></strong>()</code>
<div class="block">Returns the number of available values</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getStandardDeviation()">getStandardDeviation</a></strong>()</code>
<div class="block">Returns the standard deviation of the available values.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double[]</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getValues()">getValues</a></strong>()</code>
<div class="block">Returns the current set of values in an array of double primitives.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#getWindowSize()">getWindowSize</a></strong>()</code>
<div class="block">Returns the maximum number of values that can be stored in the
 dataset, or INFINITE_WINDOW (-1) if there is no limit.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#setWindowSize(int)">setWindowSize</a></strong>(int&nbsp;windowSize)</code>
<div class="block">WindowSize controls the number of values that contribute to the
 reported statistics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html#toString()">toString</a></strong>()</code>
<div class="block">Generates a text report displaying univariate statistics from values
 that have been added.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.commons.math3.stat.descriptive.DescriptiveStatistics">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.commons.math3.stat.descriptive.<a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></h3>
<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#copy(org.apache.commons.math3.stat.descriptive.DescriptiveStatistics, org.apache.commons.math3.stat.descriptive.DescriptiveStatistics)">copy</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getGeometricMean()">getGeometricMean</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getGeometricMeanImpl()">getGeometricMeanImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getKurtosis()">getKurtosis</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getKurtosisImpl()">getKurtosisImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMax()">getMax</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMaxImpl()">getMaxImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMean()">getMean</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMeanImpl()">getMeanImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMin()">getMin</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getMinImpl()">getMinImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPercentile(double)">getPercentile</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPercentileImpl()">getPercentileImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getPopulationVariance()">getPopulationVariance</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSkewness()">getSkewness</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSkewnessImpl()">getSkewnessImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSortedValues()">getSortedValues</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSum()">getSum</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumImpl()">getSumImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumsq()">getSumsq</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getSumsqImpl()">getSumsqImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getVariance()">getVariance</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getVarianceImpl()">getVarianceImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#removeMostRecentValue()">removeMostRecentValue</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#replaceMostRecentValue(double)">replaceMostRecentValue</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setGeometricMeanImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setGeometricMeanImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setKurtosisImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setKurtosisImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMaxImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMaxImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMeanImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMeanImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setMinImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setMinImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setPercentileImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setPercentileImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSkewnessImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSkewnessImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSumImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSumImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setSumsqImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setSumsqImpl</a>, <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setVarianceImpl(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">setVarianceImpl</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="SynchronizedDescriptiveStatistics()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SynchronizedDescriptiveStatistics</h4>
<pre>public&nbsp;SynchronizedDescriptiveStatistics()</pre>
<div class="block">Construct an instance with infinite window</div>
</li>
</ul>
<a name="SynchronizedDescriptiveStatistics(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SynchronizedDescriptiveStatistics</h4>
<pre>public&nbsp;SynchronizedDescriptiveStatistics(int&nbsp;window)
                                  throws <a href="../../../../../../org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></pre>
<div class="block">Construct an instance with finite window</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>window</code> - the finite window size.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></code> - if window size is less than 1 but
 not equal to <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#INFINITE_WINDOW"><code>DescriptiveStatistics.INFINITE_WINDOW</code></a></dd></dl>
</li>
</ul>
<a name="SynchronizedDescriptiveStatistics(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SynchronizedDescriptiveStatistics</h4>
<pre>public&nbsp;SynchronizedDescriptiveStatistics(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;original)
                                  throws <a href="../../../../../../org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></pre>
<div class="block">A copy constructor. Creates a deep-copy of the <code>original</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>original</code> - the <code>SynchronizedDescriptiveStatistics</code> instance to copy</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></code> - if original is null</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="addValue(double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addValue</h4>
<pre>public&nbsp;void&nbsp;addValue(double&nbsp;v)</pre>
<div class="block">Adds the value to the dataset. If the dataset is at the maximum size
 (i.e., the number of stored elements equals the currently configured
 windowSize), the first (oldest) element in the dataset is discarded
 to make room for the new value.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#addValue(double)">addValue</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>v</code> - the value to be added</dd></dl>
</li>
</ul>
<a name="apply(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>apply</h4>
<pre>public&nbsp;double&nbsp;apply(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/UnivariateStatistic.html" title="interface in org.apache.commons.math3.stat.descriptive">UnivariateStatistic</a>&nbsp;stat)</pre>
<div class="block">Apply the given statistic to the data associated with this set of statistics.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#apply(org.apache.commons.math3.stat.descriptive.UnivariateStatistic)">apply</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>stat</code> - the statistic to apply</dd>
<dt><span class="strong">Returns:</span></dt><dd>the computed value of the statistic.</dd></dl>
</li>
</ul>
<a name="clear()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre>public&nbsp;void&nbsp;clear()</pre>
<div class="block">Resets all statistics and storage</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#clear()">clear</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
</dl>
</li>
</ul>
<a name="getElement(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getElement</h4>
<pre>public&nbsp;double&nbsp;getElement(int&nbsp;index)</pre>
<div class="block">Returns the element at the specified index</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getElement(int)">getElement</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>index</code> - The Index of the element</dd>
<dt><span class="strong">Returns:</span></dt><dd>return the element at the specified index</dd></dl>
</li>
</ul>
<a name="getN()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getN</h4>
<pre>public&nbsp;long&nbsp;getN()</pre>
<div class="block">Returns the number of available values</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getN()">getN</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getN()">getN</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>The number of available values</dd></dl>
</li>
</ul>
<a name="getStandardDeviation()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStandardDeviation</h4>
<pre>public&nbsp;double&nbsp;getStandardDeviation()</pre>
<div class="block">Returns the standard deviation of the available values.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/StatisticalSummary.html#getStandardDeviation()">getStandardDeviation</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/StatisticalSummary.html" title="interface in org.apache.commons.math3.stat.descriptive">StatisticalSummary</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getStandardDeviation()">getStandardDeviation</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>The standard deviation, Double.NaN if no values have been added
 or 0.0 for a single value set.</dd></dl>
</li>
</ul>
<a name="getValues()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getValues</h4>
<pre>public&nbsp;double[]&nbsp;getValues()</pre>
<div class="block">Returns the current set of values in an array of double primitives.
 The order of addition is preserved.  The returned array is a fresh
 copy of the underlying data -- i.e., it is not a reference to the
 stored data.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getValues()">getValues</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>returns the current set of numbers in the order in which they
         were added to this set</dd></dl>
</li>
</ul>
<a name="getWindowSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWindowSize</h4>
<pre>public&nbsp;int&nbsp;getWindowSize()</pre>
<div class="block">Returns the maximum number of values that can be stored in the
 dataset, or INFINITE_WINDOW (-1) if there is no limit.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#getWindowSize()">getWindowSize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>The current window size or -1 if its Infinite.</dd></dl>
</li>
</ul>
<a name="setWindowSize(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWindowSize</h4>
<pre>public&nbsp;void&nbsp;setWindowSize(int&nbsp;windowSize)
                   throws <a href="../../../../../../org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></pre>
<div class="block">WindowSize controls the number of values that contribute to the
 reported statistics.  For example, if windowSize is set to 3 and the
 values {1,2,3,4,5} have been added <strong> in that order</strong> then
 the <i>available values</i> are {3,4,5} and all reported statistics will
 be based on these values. If <code>windowSize</code> is decreased as a result
 of this call and there are more than the new value of elements in the
 current dataset, values from the front of the array are discarded to
 reduce the dataset to <code>windowSize</code> elements.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#setWindowSize(int)">setWindowSize</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>windowSize</code> - sets the size of the window.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/MathIllegalArgumentException.html" title="class in org.apache.commons.math3.exception">MathIllegalArgumentException</a></code> - if window size is less than 1 but
 not equal to <a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#INFINITE_WINDOW"><code>DescriptiveStatistics.INFINITE_WINDOW</code></a></dd></dl>
</li>
</ul>
<a name="toString()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<div class="block">Generates a text report displaying univariate statistics from values
 that have been added.  Each statistic is displayed on a separate
 line.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>String with line feeds displaying statistics</dd></dl>
</li>
</ul>
<a name="copy()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copy</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;copy()</pre>
<div class="block">Returns a copy of this SynchronizedDescriptiveStatistics instance with the
 same internal state.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html#copy()">copy</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/commons/math3/stat/descriptive/DescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">DescriptiveStatistics</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>a copy of this</dd></dl>
</li>
</ul>
<a name="copy(org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics, org.apache.commons.math3.stat.descriptive.SynchronizedDescriptiveStatistics)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>copy</h4>
<pre>public static&nbsp;void&nbsp;copy(<a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;source,
        <a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" title="class in org.apache.commons.math3.stat.descriptive">SynchronizedDescriptiveStatistics</a>&nbsp;dest)
                 throws <a href="../../../../../../org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></pre>
<div class="block">Copies source to dest.
 <p>Neither source nor dest can be null.</p>
 <p>Acquires synchronization lock on source, then dest before copying.</p></div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>source</code> - SynchronizedDescriptiveStatistics to copy</dd><dd><code>dest</code> - SynchronizedDescriptiveStatistics to copy to</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/commons/math3/exception/NullArgumentException.html" title="class in org.apache.commons.math3.exception">NullArgumentException</a></code> - if either source or dest is null</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/SynchronizedDescriptiveStatistics.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../../org/apache/commons/math3/stat/descriptive/SynchronizedMultivariateSummaryStatistics.html" title="class in org.apache.commons.math3.stat.descriptive"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/commons/math3/stat/descriptive/SynchronizedDescriptiveStatistics.html" target="_top">Frames</a></li>
<li><a href="SynchronizedDescriptiveStatistics.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.math3.stat.descriptive.DescriptiveStatistics">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2003&#x2013;2014 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
