# C1.Util.DX.DataPointer

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="C1_Util_DX_DataPointer" data-uid="C1.Util.DX.DataPointer" class="text-break">DataPointer Struct
</h1>
  <div class="markdown level0 summary"><p>Pointer to a native buffer with a specific size.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.iequatable-1">IEquatable</a>&lt;<a class="xref" href="C1.Util.DX.DataPointer.html">DataPointer</a>&gt;</div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="C1.Util.DX.html">C1.Util.DX</a></h6>
  <h6><strong>Assembly</strong>: C1.Win.DX.4.8.dll</h6>
  <h5 id="C1_Util_DX_DataPointer_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public struct DataPointer : IEquatable&lt;DataPointer&gt;</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Structure DataPointer
    Implements IEquatable(Of DataPointer)</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DataPointer__ctor_System_IntPtr_System_Int32_" data-uid="C1.Util.DX.DataPointer.#ctor(System.IntPtr,System.Int32)">
          <a class="xref" href="C1.Util.DX.DataPointer.-ctor.html#C1_Util_DX_DataPointer__ctor_System_IntPtr_System_Int32_">DataPointer(IntPtr, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.DataPointer.html">DataPointer</a> struct.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer__ctor_System_Void__System_Int32_" data-uid="C1.Util.DX.DataPointer.#ctor(System.Void*,System.Int32)">
          <a class="xref" href="C1.Util.DX.DataPointer.-ctor.html#C1_Util_DX_DataPointer__ctor_System_Void__System_Int32_">DataPointer(void*, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes a new instance of the <a class="xref" href="C1.Util.DX.DataPointer.html">DataPointer</a> struct.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DataPointer_Pointer" data-uid="C1.Util.DX.DataPointer.Pointer">
          <a class="xref" href="C1.Util.DX.DataPointer.Pointer.html">Pointer</a>
        </td>
        <td class="markdown level1 summary"><p>Pointer to the buffer.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_Size" data-uid="C1.Util.DX.DataPointer.Size">
          <a class="xref" href="C1.Util.DX.DataPointer.Size.html">Size</a>
        </td>
        <td class="markdown level1 summary"><p>Size in bytes of the buffer.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_Zero" data-uid="C1.Util.DX.DataPointer.Zero">
          <a class="xref" href="C1.Util.DX.DataPointer.Zero.html">Zero</a>
        </td>
        <td class="markdown level1 summary"><p>Gets an Empty Data Pointer.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DataPointer_IsEmpty" data-uid="C1.Util.DX.DataPointer.IsEmpty">
          <a class="xref" href="C1.Util.DX.DataPointer.IsEmpty.html#C1_Util_DX_DataPointer_IsEmpty">IsEmpty</a>
        </td>
        <td class="markdown level1 summary"><p>Gets a value indicating whether this instance is empty (zeroed).</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DataPointer_CopyFrom__1___0___" data-uid="C1.Util.DX.DataPointer.CopyFrom``1(``0[])">
          <a class="xref" href="C1.Util.DX.DataPointer.CopyFrom.html#C1_Util_DX_DataPointer_CopyFrom__1___0___">CopyFrom&lt;T&gt;(T[])</a>
        </td>
        <td class="markdown level1 summary"><p>Writes the content of the specified buffer to the unmanaged memory location of this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_CopyFrom__1___0___System_Int32_System_Int32_" data-uid="C1.Util.DX.DataPointer.CopyFrom``1(``0[],System.Int32,System.Int32)">
          <a class="xref" href="C1.Util.DX.DataPointer.CopyFrom.html#C1_Util_DX_DataPointer_CopyFrom__1___0___System_Int32_System_Int32_">CopyFrom&lt;T&gt;(T[], int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Writes the content of the specified buffer to the unmanaged memory location of this instance.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_CopyTo__1___0___System_Int32_System_Int32_" data-uid="C1.Util.DX.DataPointer.CopyTo``1(``0[],System.Int32,System.Int32)">
          <a class="xref" href="C1.Util.DX.DataPointer.CopyTo.html#C1_Util_DX_DataPointer_CopyTo__1___0___System_Int32_System_Int32_">CopyTo&lt;T&gt;(T[], int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Reads the content of the unmanaged memory location of this instance to the specified buffer.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_Equals_C1_Util_DX_DataPointer_" data-uid="C1.Util.DX.DataPointer.Equals(C1.Util.DX.DataPointer)">
          <a class="xref" href="C1.Util.DX.DataPointer.Equals.html#C1_Util_DX_DataPointer_Equals_C1_Util_DX_DataPointer_">Equals(DataPointer)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the specified DataPointer is equal to the current object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_Equals_System_Object_" data-uid="C1.Util.DX.DataPointer.Equals(System.Object)">
          <a class="xref" href="C1.Util.DX.DataPointer.Equals.html#C1_Util_DX_DataPointer_Equals_System_Object_">Equals(object)</a>
        </td>
        <td class="markdown level1 summary"><p>Determines whether the specified object is equal to the current object.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_GetHashCode" data-uid="C1.Util.DX.DataPointer.GetHashCode">
          <a class="xref" href="C1.Util.DX.DataPointer.GetHashCode.html#C1_Util_DX_DataPointer_GetHashCode">GetHashCode()</a>
        </td>
        <td class="markdown level1 summary"><p>Serves as the default hash function.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_ToArray" data-uid="C1.Util.DX.DataPointer.ToArray">
          <a class="xref" href="C1.Util.DX.DataPointer.ToArray.html#C1_Util_DX_DataPointer_ToArray">ToArray()</a>
        </td>
        <td class="markdown level1 summary"><p>Converts this instance to a read only byte buffer.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_ToArray__1" data-uid="C1.Util.DX.DataPointer.ToArray``1">
          <a class="xref" href="C1.Util.DX.DataPointer.ToArray.html#C1_Util_DX_DataPointer_ToArray__1">ToArray&lt;T&gt;()</a>
        </td>
        <td class="markdown level1 summary"><p>Converts this instance to a read only typed buffer.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_ToDataStream" data-uid="C1.Util.DX.DataPointer.ToDataStream">
          <a class="xref" href="C1.Util.DX.DataPointer.ToDataStream.html#C1_Util_DX_DataPointer_ToDataStream">ToDataStream()</a>
        </td>
        <td class="markdown level1 summary"><p>Converts this DataPointer to a <a class="xref" href="C1.Util.DX.DataStream.html">DataStream</a>.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="operators">Operators
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="C1_Util_DX_DataPointer_op_Equality_C1_Util_DX_DataPointer_C1_Util_DX_DataPointer_" data-uid="C1.Util.DX.DataPointer.op_Equality(C1.Util.DX.DataPointer,C1.Util.DX.DataPointer)">
          <a class="xref" href="C1.Util.DX.DataPointer.op_Equality.html#C1_Util_DX_DataPointer_op_Equality_C1_Util_DX_DataPointer_C1_Util_DX_DataPointer_">operator ==(DataPointer, DataPointer)</a>
        </td>
        <td class="markdown level1 summary"><p>Implements the ==.</p>
</td>
      </tr>
      <tr>
        <td id="C1_Util_DX_DataPointer_op_Inequality_C1_Util_DX_DataPointer_C1_Util_DX_DataPointer_" data-uid="C1.Util.DX.DataPointer.op_Inequality(C1.Util.DX.DataPointer,C1.Util.DX.DataPointer)">
          <a class="xref" href="C1.Util.DX.DataPointer.op_Inequality.html#C1_Util_DX_DataPointer_op_Inequality_C1_Util_DX_DataPointer_C1_Util_DX_DataPointer_">operator !=(DataPointer, DataPointer)</a>
        </td>
        <td class="markdown level1 summary"><p>Implements the !=.</p>
</td>
      </tr>
    </tbody>
  </table>

</div>
