Skybound.Gecko.GeckoWebBrowser.ByteArrayInputStream.ReadSegments C# (CSharp) Method

ReadSegments() public method

public ReadSegments ( IntPtr aWriter, IntPtr aClosure, uint aCount ) : int
aWriter System.IntPtr
aClosure System.IntPtr
aCount uint
return int
            public unsafe int ReadSegments(IntPtr aWriter, IntPtr aClosure, uint aCount)
            {
                int length = (int)Math.Min(aCount, Available());
                int writeCount = 0;

                if (length > 0)
                {
                      nsWriteSegmentFun fun = (nsWriteSegmentFun)Marshal.GetDelegateForFunctionPointer(aWriter, typeof(nsWriteSegmentFun));

                      fixed (byte * data = &Data[Position])
                      {
                        int result = fun(this, aClosure, (IntPtr)data, Position, length, out writeCount);
                      }

                      Position += writeCount;
                }

                return writeCount;
            }