BlobSync.CommonOps.RollSignature C# (CSharp) Method

RollSignature() static private method

static private RollSignature ( int length, byte previousByte, byte nextByte, RollingSignature existingSignature ) : RollingSignature
length int
previousByte byte
nextByte byte
existingSignature BlobSync.Datatypes.RollingSignature
return BlobSync.Datatypes.RollingSignature
        internal static RollingSignature RollSignature(int length, byte previousByte, byte nextByte, RollingSignature existingSignature)
        {
            decimal s1 = 0;
            decimal s2 = 0;

            s1 = existingSignature.Sig1;
            s2 = existingSignature.Sig2;

            s1 = s1 - previousByte + nextByte;
            s2 = s2 - (previousByte * length) + s1;

            var res = new RollingSignature() { Sig1 = s1, Sig2 = s2 };
            return res;
        }