/* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). * Version 1.3.31 * * Do not make changes to this file unless you know what you are doing--modify * the SWIG interface file instead. * ----------------------------------------------------------------------------- */ namespace OSGeo.OGR { using System; using System.Runtime.InteropServices; public class Driver : IDisposable { private HandleRef swigCPtr; protected object swigCMemOwner; internal Driver(IntPtr cPtr, object cMemoryOwner) { swigCMemOwner = cMemoryOwner; swigCPtr = new HandleRef(this, cPtr); } internal static HandleRef getCPtr(Driver obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; } internal static HandleRef getCPtrAndDisown(Driver obj, object cMemoryOwner) { obj.swigCMemOwner = cMemoryOwner; return getCPtr(obj); } public virtual void Dispose() { lock(this) { if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwner == null) { swigCMemOwner = new object(); throw new MethodAccessException("C++ destructor does not have public access"); } swigCPtr = new HandleRef(null, IntPtr.Zero); GC.SuppressFinalize(this); } } public string name { get { string ret = ogrPINVOKE.Driver_name_get(swigCPtr); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } } public DataSource CreateDataSource(string name, string[] options) { IntPtr cPtr = ogrPINVOKE.Driver_CreateDataSource(swigCPtr, name, new ogrPINVOKE.StringListMarshal(options)._ar); DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true? null : this); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } public DataSource CopyDataSource(DataSource copy_ds, string name, string[] options) { IntPtr cPtr = ogrPINVOKE.Driver_CopyDataSource(swigCPtr, DataSource.getCPtr(copy_ds), name, new ogrPINVOKE.StringListMarshal(options)._ar); DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true? null : this); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } public DataSource Open(string name, int update) { IntPtr cPtr = ogrPINVOKE.Driver_Open(swigCPtr, name, update); DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true? null : this); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } public int DeleteDataSource(string name) { int ret = ogrPINVOKE.Driver_DeleteDataSource(swigCPtr, name); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } public bool TestCapability(string cap) { bool ret = ogrPINVOKE.Driver_TestCapability(swigCPtr, cap); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } public string GetName() { string ret = ogrPINVOKE.Driver_GetName(swigCPtr); if (ogrPINVOKE.SWIGPendingException.Pending) throw ogrPINVOKE.SWIGPendingException.Retrieve(); return ret; } } }