using System; using System.Runtime.InteropServices; using System.Threading; using System.Threading.Tasks; using Cpp2IlInjected; namespace System.IO { /// Provides access to unmanaged blocks of memory from managed code. // Token: 0x020002B0 RID: 688 [Token(Token = "0x20002B0")] public class UnmanagedMemoryStream : Stream { /// Initializes a new instance of the class. /// The user does not have the required permission. // Token: 0x06001940 RID: 6464 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001940")] [Address(RVA = "0xCD3E30", Offset = "0xCD2E30", VA = "0x180CD3E30")] protected UnmanagedMemoryStream() { } /// Initializes a new instance of the class using the specified location and memory length. /// A pointer to an unmanaged memory location. /// The length of the memory to use. /// The user does not have the required permission. /// The value is . /// The value is less than zero. /// -or- /// The is large enough to cause an overflow. // Token: 0x06001941 RID: 6465 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001941")] [Address(RVA = "0xCD3F30", Offset = "0xCD2F30", VA = "0x180CD3F30")] [CLSCompliant(false)] public unsafe UnmanagedMemoryStream(byte* pointer, long length) { } // Token: 0x06001942 RID: 6466 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001942")] [Address(RVA = "0xCD3E90", Offset = "0xCD2E90", VA = "0x180CD3E90")] internal unsafe UnmanagedMemoryStream(byte* pointer, long length, long capacity, FileAccess access, bool skipSecurityCheck) { } // Token: 0x06001943 RID: 6467 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001943")] [Address(RVA = "0xCD2780", Offset = "0xCD1780", VA = "0x180CD2780")] internal unsafe void Initialize(byte* pointer, long length, long capacity, FileAccess access, bool skipSecurityCheck) { } /// Gets a value indicating whether a stream supports reading. /// /// if the object was created by a constructor with an parameter that did not include reading the stream and if the stream is closed; otherwise, . // Token: 0x17000307 RID: 775 // (get) Token: 0x06001944 RID: 6468 RVA: 0x00010C08 File Offset: 0x0000EE08 [Token(Token = "0x17000307")] public override bool CanRead { [Token(Token = "0x6001944")] [Address(RVA = "0xCD3FD0", Offset = "0xCD2FD0", VA = "0x180CD3FD0", Slot = "7")] get { return default(bool); } } /// Gets a value indicating whether a stream supports seeking. /// /// if the stream is closed; otherwise, . // Token: 0x17000308 RID: 776 // (get) Token: 0x06001945 RID: 6469 RVA: 0x00010C20 File Offset: 0x0000EE20 [Token(Token = "0x17000308")] public override bool CanSeek { [Token(Token = "0x6001945")] [Address(RVA = "0x497580", Offset = "0x496580", VA = "0x180497580", Slot = "8")] get { return default(bool); } } /// Gets a value indicating whether a stream supports writing. /// /// if the object was created by a constructor with an parameter value that supports writing or was created by a constructor that had no parameters, or if the stream is closed; otherwise, . // Token: 0x17000309 RID: 777 // (get) Token: 0x06001946 RID: 6470 RVA: 0x00010C38 File Offset: 0x0000EE38 [Token(Token = "0x17000309")] public override bool CanWrite { [Token(Token = "0x6001946")] [Address(RVA = "0xCD3FE0", Offset = "0xCD2FE0", VA = "0x180CD3FE0", Slot = "9")] get { return default(bool); } } /// Releases the unmanaged resources used by the and optionally releases the managed resources. /// /// to release both managed and unmanaged resources; to release only unmanaged resources. // Token: 0x06001947 RID: 6471 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001947")] [Address(RVA = "0xCD2650", Offset = "0xCD1650", VA = "0x180CD2650", Slot = "16")] protected override void Dispose(bool disposing) { } /// Overrides the method so that no action is performed. /// The stream is closed. // Token: 0x06001948 RID: 6472 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001948")] [Address(RVA = "0xCD2760", Offset = "0xCD1760", VA = "0x180CD2760", Slot = "17")] public override void Flush() { } /// Overrides the method so that the operation is cancelled if specified, but no other action is performed. /// Available starting in .NET Framework 4.6 /// The token to monitor for cancellation requests. The default value is . /// A task that represents the asynchronous flush operation. // Token: 0x06001949 RID: 6473 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x6001949")] [Address(RVA = "0xCD2660", Offset = "0xCD1660", VA = "0x180CD2660", Slot = "18")] [ComVisible(false)] public override Task FlushAsync(CancellationToken cancellationToken) { return null; } /// Gets the length of the data in a stream. /// The length of the data in the stream. /// The stream is closed. // Token: 0x1700030A RID: 778 // (get) Token: 0x0600194A RID: 6474 RVA: 0x00010C50 File Offset: 0x0000EE50 [Token(Token = "0x1700030A")] public override long Length { [Token(Token = "0x600194A")] [Address(RVA = "0xCD4000", Offset = "0xCD3000", VA = "0x180CD4000", Slot = "10")] get { return 0L; } } /// Gets or sets the current position in a stream. /// The current position in the stream. /// The stream is closed. /// The position is set to a value that is less than zero, or the position is larger than or results in overflow when added to the current pointer. // Token: 0x1700030B RID: 779 // (get) Token: 0x0600194B RID: 6475 RVA: 0x00010C68 File Offset: 0x0000EE68 // (set) Token: 0x0600194C RID: 6476 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x1700030B")] public override long Position { [Token(Token = "0x600194B")] [Address(RVA = "0xCD4110", Offset = "0xCD3110", VA = "0x180CD4110", Slot = "11")] get { return 0L; } [Token(Token = "0x600194C")] [Address(RVA = "0xCD4150", Offset = "0xCD3150", VA = "0x180CD4150", Slot = "12")] set { } } /// Gets or sets a byte pointer to a stream based on the current position in the stream. /// A byte pointer. /// The current position is larger than the capacity of the stream. /// The position is being set is not a valid position in the current stream. /// The pointer is being set to a lower value than the starting position of the stream. /// The stream was initialized for use with a . The property is valid only for streams that are initialized with a pointer. // Token: 0x1700030C RID: 780 // (get) Token: 0x0600194D RID: 6477 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x1700030C")] [CLSCompliant(false)] public unsafe byte* PositionPointer { [Token(Token = "0x600194D")] [Address(RVA = "0xCD4030", Offset = "0xCD3030", VA = "0x180CD4030")] get { return null; } } /// Reads the specified number of bytes into the specified array. /// When this method returns, contains the specified byte array with the values between and ( + - 1) replaced by the bytes read from the current source. This parameter is passed uninitialized. /// The zero-based byte offset in at which to begin storing the data read from the current stream. /// The maximum number of bytes to read from the current stream. /// The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero (0) if the end of the stream has been reached. /// The stream is closed. /// The underlying memory does not support reading. /// -or- /// The property is set to . /// The parameter is set to . /// The parameter is less than zero. /// -or- /// The parameter is less than zero. /// The length of the buffer array minus the parameter is less than the parameter. // Token: 0x0600194E RID: 6478 RVA: 0x00010C80 File Offset: 0x0000EE80 [Token(Token = "0x600194E")] [Address(RVA = "0xCD2DF0", Offset = "0xCD1DF0", VA = "0x180CD2DF0", Slot = "27")] public override int Read([In] [Out] byte[] buffer, int offset, int count) { return 0; } /// Asynchronously reads the specified number of bytes into the specified array. /// Available starting in .NET Framework 4.6 /// The buffer to write the data into. /// The byte offset in at which to begin writing data from the stream. /// The maximum number of bytes to read. /// The token to monitor for cancellation requests. The default value is . /// A task that represents the asynchronous read operation. The value of the parameter contains the total number of bytes read into the buffer. The result value can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the stream has been reached. // Token: 0x0600194F RID: 6479 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600194F")] [Address(RVA = "0xCD29C0", Offset = "0xCD19C0", VA = "0x180CD29C0", Slot = "21")] [ComVisible(false)] public override Task ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) { return null; } /// Reads a byte from a stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream. /// The unsigned byte cast to an object, or -1 if at the end of the stream. /// The stream is closed. /// The underlying memory does not support reading. /// -or- /// The current position is at the end of the stream. // Token: 0x06001950 RID: 6480 RVA: 0x00010C98 File Offset: 0x0000EE98 [Token(Token = "0x6001950")] [Address(RVA = "0xCD2C50", Offset = "0xCD1C50", VA = "0x180CD2C50", Slot = "28")] public override int ReadByte() { return 0; } /// Sets the current position of the current stream to the given value. /// The point relative to origin to begin seeking from. /// Specifies the beginning, the end, or the current position as a reference point for origin, using a value of type . /// The new position in the stream. /// An attempt was made to seek before the beginning of the stream. /// The value is larger than the maximum size of the stream. /// /// is invalid. /// The stream is closed. // Token: 0x06001951 RID: 6481 RVA: 0x00010CB0 File Offset: 0x0000EEB0 [Token(Token = "0x6001951")] [Address(RVA = "0xCD3170", Offset = "0xCD2170", VA = "0x180CD3170", Slot = "25")] public override long Seek(long offset, SeekOrigin loc) { return 0L; } /// Sets the length of a stream to a specified value. /// The length of the stream. /// An I/O error has occurred. /// The stream is closed. /// The underlying memory does not support writing. /// -or- /// An attempt is made to write to the stream and the property is . /// The specified exceeds the capacity of the stream. /// -or- /// The specified is negative. // Token: 0x06001952 RID: 6482 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001952")] [Address(RVA = "0xCD3320", Offset = "0xCD2320", VA = "0x180CD3320", Slot = "26")] public override void SetLength(long value) { } /// Writes a block of bytes to the current stream using data from a buffer. /// The byte array from which to copy bytes to the current stream. /// The offset in the buffer at which to begin copying bytes to the current stream. /// The number of bytes to write to the current stream. /// The stream is closed. /// The underlying memory does not support writing. /// -or- /// An attempt is made to write to the stream and the property is . /// -or- /// The value is greater than the capacity of the stream. /// -or- /// The position is at the end of the stream capacity. /// An I/O error occurs. /// One of the specified parameters is less than zero. /// The parameter minus the length of the parameter is less than the parameter. /// The parameter is . // Token: 0x06001953 RID: 6483 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001953")] [Address(RVA = "0xCD39D0", Offset = "0xCD29D0", VA = "0x180CD39D0", Slot = "29")] public override void Write(byte[] buffer, int offset, int count) { } /// Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests. /// Available starting in .NET Framework 4.6 /// The buffer to write data from. /// The zero-based byte offset in from which to begin copying bytes to the stream. /// The maximum number of bytes to write. /// The token to monitor for cancellation requests. The default value is . /// A task that represents the asynchronous write operation. // Token: 0x06001954 RID: 6484 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x6001954")] [Address(RVA = "0xCD34E0", Offset = "0xCD24E0", VA = "0x180CD34E0", Slot = "24")] [ComVisible(false)] public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken) { return null; } /// Writes a byte to the current position in the file stream. /// A byte value written to the stream. /// The stream is closed. /// The underlying memory does not support writing. /// -or- /// An attempt is made to write to the stream and the property is . /// -or- /// The current position is at the end of the capacity of the stream. /// The supplied causes the stream exceed its maximum capacity. // Token: 0x06001955 RID: 6485 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x6001955")] [Address(RVA = "0xCD3740", Offset = "0xCD2740", VA = "0x180CD3740", Slot = "30")] public override void WriteByte(byte value) { } // Token: 0x04000D4D RID: 3405 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4000D4D")] private SafeBuffer _buffer; // Token: 0x04000D4E RID: 3406 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4000D4E")] private unsafe byte* _mem; // Token: 0x04000D4F RID: 3407 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x4000D4F")] private long _length; // Token: 0x04000D50 RID: 3408 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4000D50")] private long _capacity; // Token: 0x04000D51 RID: 3409 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4000D51")] private long _position; // Token: 0x04000D52 RID: 3410 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4000D52")] private long _offset; // Token: 0x04000D53 RID: 3411 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4000D53")] private FileAccess _access; // Token: 0x04000D54 RID: 3412 [global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")] [Token(Token = "0x4000D54")] internal bool _isOpen; // Token: 0x04000D55 RID: 3413 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4000D55")] [NonSerialized] private Task _lastReadTask; } }