Esempio n. 1
0
        protected virtual unsafe void PerformManipulation <TOrigin>(TOrigin[] origin, TOrigin[] target, MaskableArrayManipulationOperation <TOrigin> operation)
            where TOrigin : unmanaged
        {
            var finalMask = ValueManipulation.Rescale <byte, TOrigin>(Mask);

            PerformManipulation(origin, target, Operation);

            bool Operation(TOrigin *origin, TOrigin *target, uint length) => operation(origin, target, finalMask, length);
        }
Esempio n. 2
0
        public void RescaleUInt32ToUInt16()
        {
            ushort rescaled = ValueManipulation.Rescale <uint, ushort>(value32);

            Assert.AreEqual(value16, rescaled);
        }
Esempio n. 3
0
        public void RescaleUInt16ToUInt64()
        {
            ulong rescaled = ValueManipulation.Rescale <ushort, ulong>(value16);

            Assert.AreEqual(value16, rescaled);
        }
Esempio n. 4
0
        public void RescaleUInt32ToByte()
        {
            byte rescaled = ValueManipulation.Rescale <uint, byte>(value32);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 5
0
        public void RescaleUInt16ToByte()
        {
            byte rescaled = ValueManipulation.Rescale <ushort, byte>(value16);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 6
0
        public void RescaleUInt16ToUInt32()
        {
            uint rescaled = ValueManipulation.Rescale <ushort, uint>(value16);

            Assert.AreEqual(value16, rescaled);
        }
Esempio n. 7
0
        public void RescaleByteToUInt32()
        {
            uint rescaled = ValueManipulation.Rescale <byte, uint>(value8);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 8
0
        public void RescaleUInt64ToByte()
        {
            byte rescaled = ValueManipulation.Rescale <ulong, byte>(value64);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 9
0
        public void RescaleUInt64ToUInt64()
        {
            ulong rescaled = ValueManipulation.Rescale <ulong, ulong>(value64);

            Assert.AreEqual(value64, rescaled);
        }
Esempio n. 10
0
        public void RescaleByteToUInt16()
        {
            ushort rescaled = ValueManipulation.Rescale <byte, ushort>(value8);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 11
0
        public void RescaleByteToByte()
        {
            byte rescaled = ValueManipulation.Rescale <byte, byte>(value8);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 12
0
        public void RescaleUInt64ToUInt32()
        {
            uint rescaled = ValueManipulation.Rescale <ulong, uint>(value64);

            Assert.AreEqual(value32, rescaled);
        }
Esempio n. 13
0
        public void RescaleUInt64ToUInt16()
        {
            ushort rescaled = ValueManipulation.Rescale <ulong, ushort>(value64);

            Assert.AreEqual(value16, rescaled);
        }
Esempio n. 14
0
 protected override unsafe object GetExpectedResult <TOrigin, TTarget>(TOrigin *origin, int index) => ValueManipulation.NOT((TTarget)base.GetExpectedResult <TOrigin, TTarget>(origin, index));
Esempio n. 15
0
        public void RescaleByteToUInt64()
        {
            ulong rescaled = ValueManipulation.Rescale <byte, ulong>(value8);

            Assert.AreEqual(value8, rescaled);
        }
Esempio n. 16
0
 protected override unsafe object GetExpectedResult <TOrigin, TTarget>(TOrigin *origin, int index) => ValueManipulation.XNORRescaleMask(*(TTarget *)(origin + index), Mask);
Esempio n. 17
0
        public void RescaleUInt32ToUInt64()
        {
            ulong rescaled = ValueManipulation.Rescale <uint, ulong>(value32);

            Assert.AreEqual(value32, rescaled);
        }