/* StatFns.java

	Purpose:
		
	Description:
		
	History:
		Oct 14, 2010 4:23:06 PM, Created by ashish

Copyright (C) 2010 Potix Corporation. All Rights Reserved.

*/
package org.zkoss.zssex.formula.fn;

import org.zkoss.poi.ss.formula.eval.ValueEval;
import org.zkoss.poi.ss.formula.functions.AggregateFunction;

/**
 * @author ashish
 *
 */
public class StatFns {

	public StatFns() {
		
	}
	
	public static final ValueEval averagea(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.AVERAGEA.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval binomdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.BINOMDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval chidist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.CHIDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval chiinv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.CHIINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval expondist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.EXPONDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval fdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.FDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval finv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.FINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval gammadist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.GAMMADIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval gammainv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.GAMMAINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval gammaln(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.GAMMALN.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval geomean(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.GEOMEAN.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval harmean(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.HARMEAN.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval hypgeomdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.HYPGEOMDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval intercept(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.INTERCEPT.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval kurt(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.KURT.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval normdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.NORMDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval poisson(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.POISSON.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval skew(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.SKEW.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval slope(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.SLOPE.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval stdev(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.STDEV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval tdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.TDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval tinv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.TINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval var(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.VAR.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	public static final ValueEval weibull(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.WEIBULL.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval normsdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.NORMSDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval lognormdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.LOGNORMDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval norminv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.NORMINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval normsinv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.NORMSINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval lognorminv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.LOGNORMINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval binominv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.BINOMINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval betadist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.BETADIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval beta$dist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.BETA$DIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval betainv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.BETAINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval chisqdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.CHISQDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval chisqinv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.CHISQINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval poissoninv(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.POISSONINV.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval correl(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.CORREL.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1210
	//@since 3.9.1
	public static final ValueEval negbinomdist(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.NEGBINOMDIST.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1235
	//@since 3.9.1
	public static final ValueEval modesngl(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.MODESNGL.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1235
	//@since 3.9.1
	public static final ValueEval rankeq(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.RANKEQ.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1235
	//@since 3.9.1
	public static final ValueEval varp(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		// call to poi
		return AggregateFunction.VARP.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1235
	//@since 3.9.1
	public static final ValueEval stdevp(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		// call to poi
		return AggregateFunction.STDEVP.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1236
	//@since 3.9.1
	public static final ValueEval tdist2t(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.TDIST2T.evaluate(args, srcRowIndex, srcColumnIndex);
	}
	//ZSS-1236
	//@since 3.9.1
	public static final ValueEval tdistrt(ValueEval[] args, int srcRowIndex, int srcColumnIndex) {
		return StatFunctionImpl.TDISTRT.evaluate(args, srcRowIndex, srcColumnIndex);
	}
}
