/// <summary>
/// Disposes object
/// </summary>
/// <param name="disposing">Flag indicating whether managed resources should be disposed</param>
protected virtual void Dispose(bool disposing)
{
if (!this._disposed)
{
if (disposing)
{
// Dispose managed objects
if (_returnedKeyMaterialLeftInstance == false)
{
if (_returnedKeyMaterial != null)
{
_returnedKeyMaterial.Dispose();
_returnedKeyMaterial = null;
}
}
}
// Dispose unmanaged objects
UnmanagedMemory.Free(ref _lowLevelStruct.ReturnedKeyMaterial);
_disposed = true;
}
}