public LSL_Float llListStatistics(int operation, LSL_List src)
{
m_host.AddScriptLPS(1);
switch (operation)
{
case ScriptBaseClass.LIST_STAT_RANGE:
return src.Range();
case ScriptBaseClass.LIST_STAT_MIN:
return src.Min();
case ScriptBaseClass.LIST_STAT_MAX:
return src.Max();
case ScriptBaseClass.LIST_STAT_MEAN:
return src.Mean();
case ScriptBaseClass.LIST_STAT_MEDIAN:
return LSL_List.ToDoubleList(src).Median();
case ScriptBaseClass.LIST_STAT_NUM_COUNT:
return src.NumericLength();
case ScriptBaseClass.LIST_STAT_STD_DEV:
return src.StdDev();
case ScriptBaseClass.LIST_STAT_SUM:
return src.Sum();
case ScriptBaseClass.LIST_STAT_SUM_SQUARES:
return src.SumSqrs();
case ScriptBaseClass.LIST_STAT_GEOMETRIC_MEAN:
return src.GeometricMean();
case ScriptBaseClass.LIST_STAT_HARMONIC_MEAN:
return src.HarmonicMean();
default:
return 0.0;
}
}