コード例 #1
0
        private static IEnumerable <byte[]> SimulateSendingOfDummyImage12Bpp(CameraStreamConfiguration cameraConfiguration)
        {
            for (var x = 0; x < cameraConfiguration.PacketAmount; x++)
            {
                var packet = new List <byte> {
                    (byte)(x / 100), (byte)(x % 100)
                };

                packet.AddRange(Enumerable.Range(0, cameraConfiguration.SizeOfPixelsInPacket).Select(i =>
                {
                    switch (i % 3)
                    {
                    case 0:
                        return((byte)0);

                    case 1:
                        return((byte)240);

                    case 2:
                        return((byte)15);

                    default:
                        throw new InvalidOperationException();
                    }
                }));

                yield return(packet.ToArray());
            }
        }
コード例 #2
0
        private static IEnumerable <byte[]> SimulateSendingOfDummyImage8Bpp(CameraStreamConfiguration cameraConfiguration)
        {
            for (var x = 0; x < cameraConfiguration.PacketAmount; x++)
            {
                var packet = new List <byte> {
                    (byte)(x / 100), (byte)(x % 100)
                };

                packet.AddRange(Enumerable.Range(0, cameraConfiguration.SizeOfPixelsInPacket).Select(i => (byte)PixelValue));

                yield return(packet.ToArray());
            }
        }
コード例 #3
0
        public static IEnumerable <byte[]> SimulateSendingOfDummyImage(ImageModel imageModel)
        {
            var cameraConfiguration = new CameraStreamConfiguration(imageModel);

            yield return(Encoding.ASCII.GetBytes("START"));

            foreach (var bytes in SimulateSendingOfPackages(imageModel, cameraConfiguration))
            {
                yield return(bytes);
            }


            yield return(Encoding.ASCII.GetBytes("START"));
        }
コード例 #4
0
        private static IEnumerable <byte[]> SimulateSendingOfPackages(ImageModel imageModel, CameraStreamConfiguration cameraConfiguration)
        {
            switch (imageModel.ImageBitDepth)
            {
            case ImageBitDepth.Bpp8:
                foreach (var packet in SimulateSendingOfDummyImage8Bpp(cameraConfiguration))
                {
                    yield return(packet);
                }

                break;

            case ImageBitDepth.Bpp12:
                foreach (var packet in SimulateSendingOfDummyImage12Bpp(cameraConfiguration))
                {
                    yield return(packet);
                }

                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }