ReadByteArray() публичный Метод

public ReadByteArray ( int Length ) : Task
Length int
Результат Task
Пример #1
0
 public virtual async Task ReadPropertyValue(ByteArrayReader reader, int size, DomainHeader header) {
   DataReader = await reader.ReadByteArray(size);
 }
 public async Task ReadCompressedChunkBlockData(ByteArrayReader reader) {
   CompressedData = await reader.ReadByteArray(CompressedSize);
 }
    public async Task<int> BuildCompressedChunkHeader(ByteArrayReader reader, uint flags) {
      Signature = Signatures.Signature;
      BlockSize = 0x00020000;

      CompressedSize   = 0;
      UncompressedSize = reader.Remaining;

      int blockCount = (reader.Remaining + BlockSize - 1) / BlockSize;

      int builderSize = 0;

      Blocks.Clear();

      for(int i = 0; i < blockCount; ++i) {
        DomainCompressedChunkBlock block = new DomainCompressedChunkBlock();

        ByteArrayReader uncompressed = await reader.ReadByteArray(Math.Min(BlockSize, reader.Remaining));

        builderSize += await block.BuildCompressedChunkBlockData(uncompressed);

        CompressedSize += block.CompressedSize;

        Blocks.Add(block);
      }

      builderSize += sizeof(uint)
                  +  sizeof(int) * 3;

      return builderSize;
    }