24 lines
486 B
C#
24 lines
486 B
C#
|
using System;
|
||
|
|
||
|
namespace PkmnLibSharp
|
||
|
{
|
||
|
public abstract class PointerWrapper : IDisposable
|
||
|
{
|
||
|
internal readonly IntPtr Ptr;
|
||
|
private bool _isDeleted = true;
|
||
|
|
||
|
protected PointerWrapper(IntPtr ptr)
|
||
|
{
|
||
|
Ptr = ptr;
|
||
|
}
|
||
|
|
||
|
internal abstract void DeletePtr();
|
||
|
public virtual void Dispose()
|
||
|
{
|
||
|
if (_isDeleted)
|
||
|
return;
|
||
|
DeletePtr();
|
||
|
_isDeleted = true;
|
||
|
}
|
||
|
}
|
||
|
}
|