/* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). * Version 2.0.12 * * Do not make changes to this file unless you know what you are doing--modify * the SWIG interface file instead. * ----------------------------------------------------------------------------- */ namespace SLNet { using System; using System.Runtime.InteropServices; public class SimpleMutex : IDisposable { private HandleRef swigCPtr; protected bool swigCMemOwn; internal SimpleMutex(IntPtr cPtr, bool cMemoryOwn) { swigCMemOwn = cMemoryOwn; swigCPtr = new HandleRef(this, cPtr); } internal static HandleRef getCPtr(SimpleMutex obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; } ~SimpleMutex() { Dispose(); } public virtual void Dispose() { lock(this) { if (swigCPtr.Handle != IntPtr.Zero) { if (swigCMemOwn) { swigCMemOwn = false; SLikeNetPINVOKE.delete_SimpleMutex(swigCPtr); } swigCPtr = new HandleRef(null, IntPtr.Zero); } GC.SuppressFinalize(this); } } public SimpleMutex() : this(SLikeNetPINVOKE.new_SimpleMutex(), true) { } public void Lock() { SLikeNetPINVOKE.SimpleMutex_Lock(swigCPtr); } public void Unlock() { SLikeNetPINVOKE.SimpleMutex_Unlock(swigCPtr); } } }