View on GitHub

ClrBuffer Class

The ClrBuffer allocates the memory using the .NET VM.

Syntax

public class ClrBuffer : Buffer

Remarks

The byte array which is used by the clr buffer is pinned down, in order for the guarantee interop safety with the sundown library.

Growing the buffer is slower than compared to the NativeBuffer, but if no buffer growing is needed, the ClrBuffer will achieve superior performance.

Doesn't work without a modified sundown version.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

Members

See Also: Inherited members from Buffer.

Public Constructors

Documentation for this section has not yet been entered.
Documentation for this section has not yet been entered.
Documentation for this section has not yet been entered.
Documentation for this section has not yet been entered.
Documentation for this section has not yet been entered.

Public Properties

[read-only]
AllocatedSize IntPtr . The allocated size of the buffer. (Inherited from Buffer.)
[read-only]
Buffer byte[]. Documentation for this section has not yet been entered.
[read-only]
Data IntPtr . Buffer allocation pointer. (Inherited from Buffer.)
Encoding System.Text.Encoding . Default encoding to use for when serializing between strings and the buffer. (Inherited from Buffer.)
NativeHandle IntPtr . The native buffer handle which is used by the sundown library. (Inherited from Buffer.)
Size IntPtr . The currently used size of the buffer. (Inherited from Buffer.)
[read-only]
UnitSize IntPtr . The unit size of the particular buffer. (Inherited from Buffer.)

Public Methods

Dispose ()
Releases the allocated buffer. (Inherited from Buffer.)
Finalize ()
Documentation for this section has not yet been entered. (Inherited from Buffer.)
GetBufferStream () : BufferStream
Wraps the current Buffer in a BufferStream. (Inherited from Buffer.)
GetBytes () : byte[]
Copies the content of the buffer into a newly allocated clr array. (Inherited from Buffer.)
GetStream () : System.IO.Stream
Creates an UnmanagedStream. (Inherited from Buffer.)
Grow (int)
Grow the buffer size. (Inherited from Buffer.)
Grow (long)
Grow the buffer size. (Inherited from Buffer.)
Grow (IntPtr)
Grow the buffer size. (Inherited from Buffer.)
Put (Buffer)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[])
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (string)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], int)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], long)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], IntPtr)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (IntPtr, int)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (IntPtr, long)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (IntPtr, IntPtr)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (string, params object[])
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (System.Text.Encoding, string)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], int, int)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], long, long)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (byte[], IntPtr, IntPtr)
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Put (System.Text.Encoding, string, params object[])
Documentation for this section has not yet been entered. (Inherited from Buffer.)
Reset ()
Clears the buffer. (Inherited from Buffer.)
Slurp (int)
Removes a given number of bytes from the head of the buffer. (Inherited from Buffer.)
Slurp (long)
Removes a given number of bytes from the head of the buffer. (Inherited from Buffer.)
Slurp (IntPtr)
Removes a given number of bytes from the head of the buffer. (Inherited from Buffer.)
override
ToString () : string
Documentation for this section has not yet been entered.

Protected Methods

override
Alloc (IntPtr)
Creates a native clr byte array.
abstract
Alloc (IntPtr)
Allocates the NativeHandle. (Inherited from Buffer.)
Dispose (bool)
The Dispose(bool) pattern. (Inherited from Buffer.)

Member Details

ClrBuffer Constructor

Documentation for this section has not yet been entered.

Syntax

public ClrBuffer ()

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

ClrBuffer Constructor

Documentation for this section has not yet been entered.

Syntax

public ClrBuffer (int size)

Parameters

size
Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

ClrBuffer Constructor

Documentation for this section has not yet been entered.

Syntax

public ClrBuffer (long size)

Parameters

size
Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

ClrBuffer Constructor

Documentation for this section has not yet been entered.

Syntax

public ClrBuffer (IntPtr size)

Parameters

size
Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

ClrBuffer Constructor

Documentation for this section has not yet been entered.

Syntax

public ClrBuffer (IntPtr size, bool alloc)

Parameters

size
Documentation for this section has not yet been entered.
alloc
Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

Alloc Method

Creates a native clr byte array.

Syntax

protected override void Alloc (IntPtr size)

Parameters

size
Documentation for this section has not yet been entered.

Remarks

Doesn't work without a modified sundown version.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

Buffer Property

Documentation for this section has not yet been entered.

Syntax

public byte[] Buffer { get; }

Value

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0

ToString Method

Documentation for this section has not yet been entered.

Syntax

public override string ToString ()

Returns

Documentation for this section has not yet been entered.

Remarks

Documentation for this section has not yet been entered.

Requirements

Namespace: Sundown
Assembly: SundownNet (in SundownNet.dll)
Assembly Versions: 1.15.12.0