示例#1
0
 /// <summary>
 ///     Creates and loads a NX file from a path.
 /// </summary>
 /// <param name="path"> The path where the NX file is located. </param>
 /// <param name="flag"> NX parsing flags. </param>
 public NXFile(string path, NXReadSelection flag = NXReadSelection.None)
 {
     FilePath = path;
     _flags   = flag;
     _start   = (_pointerWrapper = new MemoryMappedFile(path)).Pointer;
     Parse();
 }
示例#2
0
 /// <summary>
 ///     Creates and loads a NX file from a byte array.
 /// </summary>
 /// <param name="input"> The byte array containing the NX file. </param>
 /// <param name="flag"> NX parsing flags. </param>
 public NXFile(byte[] input, NXReadSelection flag = NXReadSelection.None)
 {
     FilePath = "-- from memory --";
     _flags   = flag;
     _start   = (_pointerWrapper = new ByteArrayPointer(input)).Pointer;
     Parse();
 }
示例#3
0
 /// <summary>
 ///     Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Dispose()
 {
     if (_pointerWrapper != null)
     {
         _pointerWrapper.Dispose();
     }
     _pointerWrapper = null;
     _nodes          = null;
     _strings        = null;
     GC.SuppressFinalize(this);
 }
示例#4
0
 /// <summary>
 ///   Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Dispose()
 {
     _disposed = true;
     if (_pointerWrapper != null)
     {
         _pointerWrapper.Dispose();
     }
     _pointerWrapper = null;
     _baseNode       = null;
     _strings        = null;
     GC.SuppressFinalize(this);
 }
示例#5
0
 /// <summary>
 ///     Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 /// </summary>
 public void Dispose()
 {
     if (_pointerWrapper != null)
     {
         _pointerWrapper.Dispose();
     }
     if (_nodes != null)
     {
         foreach (var node in _nodes)
         {
             node?.Unload(true);
         }
     }
     _pointerWrapper = null;
     _nodes          = null;
     _strings        = null;
     GC.SuppressFinalize(this);
 }