/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.25
 *
 * Do not make changes to this file unless you know what you are doing--modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */


using System;
using System.Runtime.InteropServices;

public class ogr {
  public static Geometry CreateGeometryFromWkb(int len, SWIGTYPE_p_OSRSpatialReferenceShadow reference) {
    IntPtr cPtr = ogrPINVOKE.CreateGeometryFromWkb(len, SWIGTYPE_p_OSRSpatialReferenceShadow.getCPtr(reference));
    Geometry ret = (cPtr == IntPtr.Zero) ? null : new Geometry(cPtr, true);
    return ret;
  }

  public static Geometry CreateGeometryFromWkt(SWIGTYPE_p_p_char val, SWIGTYPE_p_OSRSpatialReferenceShadow reference) {
    IntPtr cPtr = ogrPINVOKE.CreateGeometryFromWkt(SWIGTYPE_p_p_char.getCPtr(val), SWIGTYPE_p_OSRSpatialReferenceShadow.getCPtr(reference));
    Geometry ret = (cPtr == IntPtr.Zero) ? null : new Geometry(cPtr, true);
    return ret;
  }

  public static Geometry CreateGeometryFromGML(string input_string) {
    IntPtr cPtr = ogrPINVOKE.CreateGeometryFromGML(input_string);
    Geometry ret = (cPtr == IntPtr.Zero) ? null : new Geometry(cPtr, true);
    return ret;
  }

  public static int GetDriverCount() {
    int ret = ogrPINVOKE.GetDriverCount();
    return ret;
  }

  public static int GetOpenDSCount() {
    int ret = ogrPINVOKE.GetOpenDSCount();
    return ret;
  }

  public static int SetGenerate_DB2_V72_BYTE_ORDER(int bGenerate_DB2_V72_BYTE_ORDER) {
    int ret = ogrPINVOKE.SetGenerate_DB2_V72_BYTE_ORDER(bGenerate_DB2_V72_BYTE_ORDER);
    return ret;
  }

  public static void RegisterAll() {
    ogrPINVOKE.RegisterAll();
  }

  public static Driver OGR_GetDriverByName(string name) {
    IntPtr cPtr = ogrPINVOKE.OGR_GetDriverByName(name);
    Driver ret = (cPtr == IntPtr.Zero) ? null : new Driver(cPtr, false);
    return ret;
  }

  public static Driver OGR_GetDriver(int driver_number) {
    IntPtr cPtr = ogrPINVOKE.OGR_GetDriver(driver_number);
    Driver ret = (cPtr == IntPtr.Zero) ? null : new Driver(cPtr, false);
    return ret;
  }

  public static DataSource GetOpenDS(int ds_number) {
    IntPtr cPtr = ogrPINVOKE.GetOpenDS(ds_number);
    DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true);
    return ret;
  }

  public static DataSource Open(string filename, int update) {
    IntPtr cPtr = ogrPINVOKE.Open__SWIG_0(filename, update);
    DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true);
    return ret;
  }

  public static DataSource Open(string filename) {
    IntPtr cPtr = ogrPINVOKE.Open__SWIG_1(filename);
    DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true);
    return ret;
  }

  public static DataSource OpenShared(string filename, int update) {
    IntPtr cPtr = ogrPINVOKE.OpenShared__SWIG_0(filename, update);
    DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true);
    return ret;
  }

  public static DataSource OpenShared(string filename) {
    IntPtr cPtr = ogrPINVOKE.OpenShared__SWIG_1(filename);
    DataSource ret = (cPtr == IntPtr.Zero) ? null : new DataSource(cPtr, true);
    return ret;
  }

  public static readonly int wkb25Bit = ogrPINVOKE.get_wkb25Bit();
  public static readonly int wkbUnknown = ogrPINVOKE.get_wkbUnknown();
  public static readonly int wkbPoint = ogrPINVOKE.get_wkbPoint();
  public static readonly int wkbLineString = ogrPINVOKE.get_wkbLineString();
  public static readonly int wkbPolygon = ogrPINVOKE.get_wkbPolygon();
  public static readonly int wkbMultiPoint = ogrPINVOKE.get_wkbMultiPoint();
  public static readonly int wkbMultiLineString = ogrPINVOKE.get_wkbMultiLineString();
  public static readonly int wkbMultiPolygon = ogrPINVOKE.get_wkbMultiPolygon();
  public static readonly int wkbGeometryCollection = ogrPINVOKE.get_wkbGeometryCollection();
  public static readonly int wkbNone = ogrPINVOKE.get_wkbNone();
  public static readonly int wkbLinearRing = ogrPINVOKE.get_wkbLinearRing();
  public static readonly int wkbPoint25D = ogrPINVOKE.get_wkbPoint25D();
  public static readonly int wkbLineString25D = ogrPINVOKE.get_wkbLineString25D();
  public static readonly int wkbPolygon25D = ogrPINVOKE.get_wkbPolygon25D();
  public static readonly int wkbMultiPoint25D = ogrPINVOKE.get_wkbMultiPoint25D();
  public static readonly int wkbMultiLineString25D = ogrPINVOKE.get_wkbMultiLineString25D();
  public static readonly int wkbMultiPolygon25D = ogrPINVOKE.get_wkbMultiPolygon25D();
  public static readonly int wkbGeometryCollection25D = ogrPINVOKE.get_wkbGeometryCollection25D();
  public static readonly int OFTInteger = ogrPINVOKE.get_OFTInteger();
  public static readonly int OFTIntegerList = ogrPINVOKE.get_OFTIntegerList();
  public static readonly int OFTReal = ogrPINVOKE.get_OFTReal();
  public static readonly int OFTRealList = ogrPINVOKE.get_OFTRealList();
  public static readonly int OFTString = ogrPINVOKE.get_OFTString();
  public static readonly int OFTStringList = ogrPINVOKE.get_OFTStringList();
  public static readonly int OFTWideString = ogrPINVOKE.get_OFTWideString();
  public static readonly int OFTWideStringList = ogrPINVOKE.get_OFTWideStringList();
  public static readonly int OFTBinary = ogrPINVOKE.get_OFTBinary();
  public static readonly int OJUndefined = ogrPINVOKE.get_OJUndefined();
  public static readonly int OJLeft = ogrPINVOKE.get_OJLeft();
  public static readonly int OJRight = ogrPINVOKE.get_OJRight();
  public static readonly int wkbXDR = ogrPINVOKE.get_wkbXDR();
  public static readonly int wkbNDR = ogrPINVOKE.get_wkbNDR();
  public static readonly string OLCRandomRead = ogrPINVOKE.get_OLCRandomRead();
  public static readonly string OLCSequentialWrite = ogrPINVOKE.get_OLCSequentialWrite();
  public static readonly string OLCRandomWrite = ogrPINVOKE.get_OLCRandomWrite();
  public static readonly string OLCFastSpatialFilter = ogrPINVOKE.get_OLCFastSpatialFilter();
  public static readonly string OLCFastFeatureCount = ogrPINVOKE.get_OLCFastFeatureCount();
  public static readonly string OLCFastGetExtent = ogrPINVOKE.get_OLCFastGetExtent();
  public static readonly string OLCCreateField = ogrPINVOKE.get_OLCCreateField();
  public static readonly string OLCTransactions = ogrPINVOKE.get_OLCTransactions();
  public static readonly string OLCDeleteFeature = ogrPINVOKE.get_OLCDeleteFeature();
  public static readonly string OLCFastSetNextByIndex = ogrPINVOKE.get_OLCFastSetNextByIndex();
  public static readonly string ODsCCreateLayer = ogrPINVOKE.get_ODsCCreateLayer();
  public static readonly string ODsCDeleteLayer = ogrPINVOKE.get_ODsCDeleteLayer();
  public static readonly string ODrCCreateDataSource = ogrPINVOKE.get_ODrCCreateDataSource();
  public static readonly string ODrCDeleteDataSource = ogrPINVOKE.get_ODrCDeleteDataSource();
}
