コード例 #1
0
        internal static RecordHeader FromBytes(Int64 address, byte[] bytes)
        {
            var reader       = new BufferReader(bytes);
            var recordHeader = new RecordHeader();

            recordHeader.Address           = address;
            recordHeader.Type              = reader.ReadByte();
            recordHeader.DataSize          = reader.ReadInt32();
            recordHeader.AllocatedDataSize = reader.ReadInt32();
            return(recordHeader);
        }
コード例 #2
0
        internal static Record FromBytes(Int64 address, byte[] bytes)
        {
            var header = RecordHeader.FromBytes(address, bytes);
            var data   = new byte[header.DataSize];

            Array.Copy(bytes, RecordHeader.ByteSize, data, 0, header.DataSize);

            return(new Record()
            {
                Header = header,
                Data = data
            });
        }
コード例 #3
0
 RecordHeader ReadRecordHeader(Int64 address)
 {
     return(RecordHeader.FromBytes(address, StorageEngine.Read(address, RecordHeader.ByteSize)));
 }
コード例 #4
0
 public Record()
 {
     Header = RecordHeader.New();
 }