From 761cfc331ada5e86054e3959cb5f1c9001b40b61 Mon Sep 17 00:00:00 2001 From: Christoph Ruegg Date: Sat, 21 Nov 2015 14:12:08 +0100 Subject: [PATCH] Statistics: RunningStatistics DataContract for ephemeral serialization #350 --- src/Numerics/Numerics-Net35.csproj | 1 + src/Numerics/Numerics.csproj | 1 + src/Numerics/Statistics/RunningStatistics.cs | 21 +++++++++++++++++--- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/Numerics/Numerics-Net35.csproj b/src/Numerics/Numerics-Net35.csproj index 9742a3a5..243118dc 100644 --- a/src/Numerics/Numerics-Net35.csproj +++ b/src/Numerics/Numerics-Net35.csproj @@ -80,6 +80,7 @@ + diff --git a/src/Numerics/Numerics.csproj b/src/Numerics/Numerics.csproj index 9bfd671b..550e7822 100644 --- a/src/Numerics/Numerics.csproj +++ b/src/Numerics/Numerics.csproj @@ -81,6 +81,7 @@ + diff --git a/src/Numerics/Statistics/RunningStatistics.cs b/src/Numerics/Statistics/RunningStatistics.cs index 297792ba..44387c8c 100644 --- a/src/Numerics/Statistics/RunningStatistics.cs +++ b/src/Numerics/Statistics/RunningStatistics.cs @@ -1,4 +1,4 @@ -// +// // Math.NET Numerics, part of the Math.NET Project // http://numerics.mathdotnet.com // http://github.com/mathnet/mathnet-numerics @@ -33,6 +33,7 @@ using System; using System.Collections.Generic; +using System.Runtime.Serialization; namespace MathNet.Numerics.Statistics { @@ -40,15 +41,29 @@ namespace MathNet.Numerics.Statistics /// Running statistics accumulator, allows updating by adding values /// or by combining two accumulators. /// + [DataContract(Namespace = "urn:MathNet/Numerics")] public class RunningStatistics { + [DataMember(Order = 1)] long _n; + + [DataMember(Order = 2)] + double _min = double.PositiveInfinity; + + [DataMember(Order = 3)] + double _max = double.NegativeInfinity; + + [DataMember(Order = 4)] double _m1; + + [DataMember(Order = 5)] double _m2; + + [DataMember(Order = 6)] double _m3; + + [DataMember(Order = 7)] double _m4; - double _min = double.PositiveInfinity; - double _max = double.NegativeInfinity; public RunningStatistics() {