/// <summary> /// 内存数据流转换 /// </summary> /// <param name="stream">内存数据流</param> protected internal UnmanagedStreamBasePlus(UnmanagedStreamBasePlus stream) { Data = stream.Data; DataLength = stream.DataLength; LengthBase = stream.LengthBase; IsUnmanaged = stream.IsUnmanaged; stream.IsUnmanaged = false; }
/// <summary> /// 内存数据流转换 /// </summary> /// <param name="stream">内存数据流</param> internal override void From(UnmanagedStreamBasePlus stream) { base.From(stream); Offset = 0; }
protected void WriteBase(UnmanagedStreamBasePlus stream) { if (stream != null) { PrepLengthBase(stream.LengthBase); MemoryUnsafe.Copy(stream.Data, Data + LengthBase, stream.LengthBase); LengthBase += stream.LengthBase; } }
/// <summary> /// 内存数据流转换 /// </summary> /// <param name="stream">内存数据流</param> internal UnmanagedStreamPlus(UnmanagedStreamBasePlus stream) : base(stream) { }
/// <summary> /// 内存数据流转换 /// </summary> /// <param name="stream">内存数据流</param> internal virtual void From(UnmanagedStreamBasePlus stream) { IsUnmanaged = stream.IsUnmanaged; Data = stream.Data; DataLength = stream.DataLength; LengthBase = stream.LengthBase; stream.IsUnmanaged = false; }