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

namespace  Nlc {

class NanolibPINVOKE {

  protected class SWIGExceptionHelper {

    public delegate void ExceptionDelegate(string message);
    public delegate void ExceptionArgumentDelegate(string message, string paramName);

    static ExceptionDelegate applicationDelegate = new ExceptionDelegate(SetPendingApplicationException);
    static ExceptionDelegate arithmeticDelegate = new ExceptionDelegate(SetPendingArithmeticException);
    static ExceptionDelegate divideByZeroDelegate = new ExceptionDelegate(SetPendingDivideByZeroException);
    static ExceptionDelegate indexOutOfRangeDelegate = new ExceptionDelegate(SetPendingIndexOutOfRangeException);
    static ExceptionDelegate invalidCastDelegate = new ExceptionDelegate(SetPendingInvalidCastException);
    static ExceptionDelegate invalidOperationDelegate = new ExceptionDelegate(SetPendingInvalidOperationException);
    static ExceptionDelegate ioDelegate = new ExceptionDelegate(SetPendingIOException);
    static ExceptionDelegate nullReferenceDelegate = new ExceptionDelegate(SetPendingNullReferenceException);
    static ExceptionDelegate outOfMemoryDelegate = new ExceptionDelegate(SetPendingOutOfMemoryException);
    static ExceptionDelegate overflowDelegate = new ExceptionDelegate(SetPendingOverflowException);
    static ExceptionDelegate systemDelegate = new ExceptionDelegate(SetPendingSystemException);

    static ExceptionArgumentDelegate argumentDelegate = new ExceptionArgumentDelegate(SetPendingArgumentException);
    static ExceptionArgumentDelegate argumentNullDelegate = new ExceptionArgumentDelegate(SetPendingArgumentNullException);
    static ExceptionArgumentDelegate argumentOutOfRangeDelegate = new ExceptionArgumentDelegate(SetPendingArgumentOutOfRangeException);

    [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="SWIGRegisterExceptionCallbacks_Nanolib")]
    public static extern void SWIGRegisterExceptionCallbacks_Nanolib(
                                ExceptionDelegate applicationDelegate,
                                ExceptionDelegate arithmeticDelegate,
                                ExceptionDelegate divideByZeroDelegate, 
                                ExceptionDelegate indexOutOfRangeDelegate, 
                                ExceptionDelegate invalidCastDelegate,
                                ExceptionDelegate invalidOperationDelegate,
                                ExceptionDelegate ioDelegate,
                                ExceptionDelegate nullReferenceDelegate,
                                ExceptionDelegate outOfMemoryDelegate, 
                                ExceptionDelegate overflowDelegate, 
                                ExceptionDelegate systemExceptionDelegate);

    [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="SWIGRegisterExceptionArgumentCallbacks_Nanolib")]
    public static extern void SWIGRegisterExceptionCallbacksArgument_Nanolib(
                                ExceptionArgumentDelegate argumentDelegate,
                                ExceptionArgumentDelegate argumentNullDelegate,
                                ExceptionArgumentDelegate argumentOutOfRangeDelegate);

    static void SetPendingApplicationException(string message) {
      SWIGPendingException.Set(new global::System.ApplicationException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingArithmeticException(string message) {
      SWIGPendingException.Set(new global::System.ArithmeticException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingDivideByZeroException(string message) {
      SWIGPendingException.Set(new global::System.DivideByZeroException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingIndexOutOfRangeException(string message) {
      SWIGPendingException.Set(new global::System.IndexOutOfRangeException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingInvalidCastException(string message) {
      SWIGPendingException.Set(new global::System.InvalidCastException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingInvalidOperationException(string message) {
      SWIGPendingException.Set(new global::System.InvalidOperationException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingIOException(string message) {
      SWIGPendingException.Set(new global::System.IO.IOException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingNullReferenceException(string message) {
      SWIGPendingException.Set(new global::System.NullReferenceException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingOutOfMemoryException(string message) {
      SWIGPendingException.Set(new global::System.OutOfMemoryException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingOverflowException(string message) {
      SWIGPendingException.Set(new global::System.OverflowException(message, SWIGPendingException.Retrieve()));
    }
    static void SetPendingSystemException(string message) {
      SWIGPendingException.Set(new global::System.SystemException(message, SWIGPendingException.Retrieve()));
    }

    static void SetPendingArgumentException(string message, string paramName) {
      SWIGPendingException.Set(new global::System.ArgumentException(message, paramName, SWIGPendingException.Retrieve()));
    }
    static void SetPendingArgumentNullException(string message, string paramName) {
      global::System.Exception e = SWIGPendingException.Retrieve();
      if (e != null) message = message + " Inner Exception: " + e.Message;
      SWIGPendingException.Set(new global::System.ArgumentNullException(paramName, message));
    }
    static void SetPendingArgumentOutOfRangeException(string message, string paramName) {
      global::System.Exception e = SWIGPendingException.Retrieve();
      if (e != null) message = message + " Inner Exception: " + e.Message;
      SWIGPendingException.Set(new global::System.ArgumentOutOfRangeException(paramName, message));
    }

    static SWIGExceptionHelper() {
      SWIGRegisterExceptionCallbacks_Nanolib(
                                applicationDelegate,
                                arithmeticDelegate,
                                divideByZeroDelegate,
                                indexOutOfRangeDelegate,
                                invalidCastDelegate,
                                invalidOperationDelegate,
                                ioDelegate,
                                nullReferenceDelegate,
                                outOfMemoryDelegate,
                                overflowDelegate,
                                systemDelegate);

      SWIGRegisterExceptionCallbacksArgument_Nanolib(
                                argumentDelegate,
                                argumentNullDelegate,
                                argumentOutOfRangeDelegate);
    }
  }

  protected static SWIGExceptionHelper swigExceptionHelper = new SWIGExceptionHelper();

  public class SWIGPendingException {
    [global::System.ThreadStatic]
    private static global::System.Exception pendingException = null;
    private static int numExceptionsPending = 0;
    private static global::System.Object exceptionsLock = null;

    public static bool Pending {
      get {
        bool pending = false;
        if (numExceptionsPending > 0)
          if (pendingException != null)
            pending = true;
        return pending;
      } 
    }

    public static void Set(global::System.Exception e) {
      if (pendingException != null)
        throw new global::System.ApplicationException("FATAL: An earlier pending exception from unmanaged code was missed and thus not thrown (" + pendingException.ToString() + ")", e);
      pendingException = e;
      lock(exceptionsLock) {
        numExceptionsPending++;
      }
    }

    public static global::System.Exception Retrieve() {
      global::System.Exception e = null;
      if (numExceptionsPending > 0) {
        if (pendingException != null) {
          e = pendingException;
          pendingException = null;
          lock(exceptionsLock) {
            numExceptionsPending--;
          }
        }
      }
      return e;
    }

    static SWIGPendingException() {
      exceptionsLock = new global::System.Object();
    }
  }


  protected class SWIGStringHelper {

    public delegate string SWIGStringDelegate(string message);
    static SWIGStringDelegate stringDelegate = new SWIGStringDelegate(CreateString);

    [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="SWIGRegisterStringCallback_Nanolib")]
    public static extern void SWIGRegisterStringCallback_Nanolib(SWIGStringDelegate stringDelegate);

    static string CreateString(string cString) {
      return cString;
    }

    static SWIGStringHelper() {
      SWIGRegisterStringCallback_Nanolib(stringDelegate);
    }
  }

  static protected SWIGStringHelper swigStringHelper = new SWIGStringHelper();


  public class SWIGStringWithLengthHelper {

    [global::System.Runtime.InteropServices.DllImport("Nanolib", EntryPoint="SWIG_csharp_string_to_c")]
    private static extern global::System.IntPtr SWIG_csharp_string_to_c0(int size, int len, [global::System.Runtime.InteropServices.In,global::System.Runtime.InteropServices.MarshalAs(global::System.Runtime.InteropServices.UnmanagedType.LPStr, SizeParamIndex=0)] string str);

    [global::System.Runtime.InteropServices.DllImport("Nanolib", EntryPoint="SWIG_csharp_string_size")]
    private static extern int SWIG_csharp_string_size(global::System.IntPtr str);

    [global::System.Runtime.InteropServices.DllImport("Nanolib", EntryPoint="SWIG_csharp_string_str")]
    private static extern global::System.IntPtr SWIG_csharp_string_str(global::System.IntPtr str);

    public static global::System.IntPtr SWIG_csharp_string_to_c(string str) {
      if (str == null)
        return global::System.IntPtr.Zero;
      global::System.Text.Encoding utf8 = global::System.Text.Encoding.UTF8;
      return SWIG_csharp_string_to_c0(utf8.GetByteCount(str), str.Length, str);
    }

    public static string SWIG_c_to_csharp_string(global::System.IntPtr str) {
      int size = SWIG_csharp_string_size(str);
      if (size > 0) {
        global::System.IntPtr s = SWIG_csharp_string_str(str);
        byte[] b = new byte[size];
        global::System.Runtime.InteropServices.Marshal.Copy(s, b, 0, size);
        global::System.Text.Encoding utf8 = global::System.Text.Encoding.UTF8;
        return utf8.GetString(b);
      }
      return null;
    }
  }


  static NanolibPINVOKE() {
  }


  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareId__SWIG_0___")]
  public static extern global::System.IntPtr new_BusHardwareId__SWIG_0(string jarg1, string jarg2, string jarg3, string jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareId__SWIG_1___")]
  public static extern global::System.IntPtr new_BusHardwareId__SWIG_1(string jarg1, string jarg2, string jarg3, string jarg4, string jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_BusHardwareId___")]
  public static extern void delete_BusHardwareId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareId__SWIG_2___")]
  public static extern global::System.IntPtr new_BusHardwareId__SWIG_2(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareId__SWIG_3___")]
  public static extern global::System.IntPtr new_BusHardwareId__SWIG_3();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_getBusHardware___")]
  public static extern string BusHardwareId_getBusHardware(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_getProtocol___")]
  public static extern string BusHardwareId_getProtocol(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_getHardwareSpecifier___")]
  public static extern string BusHardwareId_getHardwareSpecifier(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_getExtraHardwareSpecifier___")]
  public static extern string BusHardwareId_getExtraHardwareSpecifier(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_getName___")]
  public static extern string BusHardwareId_getName(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_equals___")]
  public static extern bool BusHardwareId_equals(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareId_toString___")]
  public static extern string BusHardwareId_toString(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareOptions__SWIG_0___")]
  public static extern global::System.IntPtr new_BusHardwareOptions__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHardwareOptions__SWIG_1___")]
  public static extern global::System.IntPtr new_BusHardwareOptions__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareOptions_addOption___")]
  public static extern void BusHardwareOptions_addOption(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareOptions_getOptions___")]
  public static extern global::System.IntPtr BusHardwareOptions_getOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareOptions_equals___")]
  public static extern bool BusHardwareOptions_equals(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHardwareOptions_toString___")]
  public static extern string BusHardwareOptions_toString(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_BusHardwareOptions___")]
  public static extern void delete_BusHardwareOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceId__SWIG_0___")]
  public static extern global::System.IntPtr new_DeviceId__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceId__SWIG_1___")]
  public static extern global::System.IntPtr new_DeviceId__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2, string jarg3, global::System.Runtime.InteropServices.HandleRef jarg4, string jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceId__SWIG_2___")]
  public static extern global::System.IntPtr new_DeviceId__SWIG_2(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceId__SWIG_3___")]
  public static extern global::System.IntPtr new_DeviceId__SWIG_3();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_getBusHardwareId___")]
  public static extern global::System.IntPtr DeviceId_getBusHardwareId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_getDeviceId___")]
  public static extern uint DeviceId_getDeviceId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_getDescription___")]
  public static extern string DeviceId_getDescription(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_getExtraId___")]
  public static extern global::System.IntPtr DeviceId_getExtraId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_getExtraStringId___")]
  public static extern string DeviceId_getExtraStringId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_toString___")]
  public static extern string DeviceId_toString(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceId_equals___")]
  public static extern bool DeviceId_equals(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_DeviceId___")]
  public static extern void delete_DeviceId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_uintToObjectCode___")]
  public static extern int OdTypesHelper_uintToObjectCode(uint jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_isNumericDataType___")]
  public static extern bool OdTypesHelper_isNumericDataType(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_isDefstructIndex___")]
  public static extern bool OdTypesHelper_isDefstructIndex(ushort jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_isDeftypeIndex___")]
  public static extern bool OdTypesHelper_isDeftypeIndex(ushort jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_isComplexDataType___")]
  public static extern bool OdTypesHelper_isComplexDataType(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_uintToObjectEntryDataType___")]
  public static extern int OdTypesHelper_uintToObjectEntryDataType(ushort jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_objectEntryDataTypeToString___")]
  public static extern string OdTypesHelper_objectEntryDataTypeToString(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_stringToObjectEntryDatatype___")]
  public static extern int OdTypesHelper_stringToObjectEntryDatatype(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdTypesHelper_objectEntryDataTypeBitLength___")]
  public static extern uint OdTypesHelper_objectEntryDataTypeBitLength(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NANOTEC_VENDOR_ID_get___")]
  public static extern int NANOTEC_VENDOR_ID_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtState_STOPPED_get___")]
  public static extern string CanOpenNmtState_STOPPED_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtState_PRE_OPERATIONAL_get___")]
  public static extern string CanOpenNmtState_PRE_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtState_OPERATIONAL_get___")]
  public static extern string CanOpenNmtState_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtState_INITIALIZATION_get___")]
  public static extern string CanOpenNmtState_INITIALIZATION_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtState_UNKNOWN_get___")]
  public static extern string CanOpenNmtState_UNKNOWN_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanOpenNmtState___")]
  public static extern global::System.IntPtr new_CanOpenNmtState();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanOpenNmtState___")]
  public static extern void delete_CanOpenNmtState(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtService_START_get___")]
  public static extern string CanOpenNmtService_START_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtService_STOP_get___")]
  public static extern string CanOpenNmtService_STOP_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtService_PRE_OPERATIONAL_get___")]
  public static extern string CanOpenNmtService_PRE_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtService_RESET_get___")]
  public static extern string CanOpenNmtService_RESET_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanOpenNmtService_RESET_COMMUNICATION_get___")]
  public static extern string CanOpenNmtService_RESET_COMMUNICATION_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanOpenNmtService___")]
  public static extern global::System.IntPtr new_CanOpenNmtService();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanOpenNmtService___")]
  public static extern void delete_CanOpenNmtService(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_NONE_get___")]
  public static extern string EtherCATState_NONE_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_INIT_get___")]
  public static extern string EtherCATState_INIT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_PRE_OPERATIONAL_get___")]
  public static extern string EtherCATState_PRE_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_BOOT_get___")]
  public static extern string EtherCATState_BOOT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_SAFE_OPERATIONAL_get___")]
  public static extern string EtherCATState_SAFE_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATState_OPERATIONAL_get___")]
  public static extern string EtherCATState_OPERATIONAL_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_EtherCATState___")]
  public static extern global::System.IntPtr new_EtherCATState();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_EtherCATState___")]
  public static extern void delete_EtherCATState(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_canOpenNmtState_get___")]
  public static extern global::System.IntPtr canOpenNmtState_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_canOpenNmtService_get___")]
  public static extern global::System.IntPtr canOpenNmtService_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATStates_get___")]
  public static extern global::System.IntPtr EtherCATStates_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_TRACE_get___")]
  public static extern int LOG_LEVEL_TRACE_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_DEBUG_get___")]
  public static extern int LOG_LEVEL_DEBUG_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_INFO_get___")]
  public static extern int LOG_LEVEL_INFO_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_WARN_get___")]
  public static extern int LOG_LEVEL_WARN_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_ERROR_get___")]
  public static extern int LOG_LEVEL_ERROR_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_CRITICAL_get___")]
  public static extern int LOG_LEVEL_CRITICAL_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LOG_LEVEL_OFF_get___")]
  public static extern int LOG_LEVEL_OFF_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LogLevelConverter_toString___")]
  public static extern string LogLevelConverter_toString(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_LogLevelConverter___")]
  public static extern global::System.IntPtr new_LogLevelConverter();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_LogLevelConverter___")]
  public static extern void delete_LogLevelConverter(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_LogModuleConverter_toString___")]
  public static extern string LogModuleConverter_toString(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_LogModuleConverter___")]
  public static extern global::System.IntPtr new_LogModuleConverter();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_LogModuleConverter___")]
  public static extern void delete_LogModuleConverter(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_Result___")]
  public static extern void delete_Result(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Result_hasError___")]
  public static extern bool Result_hasError(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Result_getError___")]
  public static extern string Result_getError(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Result_getErrorCode___")]
  public static extern int Result_getErrorCode(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Result_getExErrorCode___")]
  public static extern uint Result_getExErrorCode(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultVoid__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultVoid__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultVoid__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultVoid__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultVoid__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultVoid__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultVoid__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultVoid__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultVoid__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultVoid__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultVoid___")]
  public static extern void delete_ResultVoid(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultInt__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultInt__SWIG_0(long jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultInt__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultInt__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultInt__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultInt__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultInt__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultInt__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultInt__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultInt__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultInt___")]
  public static extern void delete_ResultInt(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultInt_getResult___")]
  public static extern long ResultInt_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultString__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultString__SWIG_0(string jarg1, bool jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultString__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultString__SWIG_1(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultString__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultString__SWIG_2(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultString__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultString__SWIG_3(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultString___")]
  public static extern void delete_ResultString(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultString_getResult___")]
  public static extern string ResultString_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayInt__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultArrayInt__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayInt__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultArrayInt__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayInt__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultArrayInt__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayInt__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultArrayInt__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayInt__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultArrayInt__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultArrayInt___")]
  public static extern void delete_ResultArrayInt(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultArrayInt_getResult___")]
  public static extern global::System.IntPtr ResultArrayInt_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayByte__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultArrayByte__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayByte__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultArrayByte__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayByte__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultArrayByte__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayByte__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultArrayByte__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultArrayByte__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultArrayByte__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultArrayByte___")]
  public static extern void delete_ResultArrayByte(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultArrayByte_getResult___")]
  public static extern global::System.IntPtr ResultArrayByte_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultBusHwIds__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultBusHwIds__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultBusHwIds__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultBusHwIds__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultBusHwIds__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultBusHwIds__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultBusHwIds__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultBusHwIds__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultBusHwIds__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultBusHwIds__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultBusHwIds___")]
  public static extern void delete_ResultBusHwIds(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultBusHwIds_getResult___")]
  public static extern global::System.IntPtr ResultBusHwIds_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceId__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultDeviceId__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceId__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultDeviceId__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceId__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultDeviceId__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceId__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultDeviceId__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceId__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultDeviceId__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultDeviceId___")]
  public static extern void delete_ResultDeviceId(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceId_getResult___")]
  public static extern global::System.IntPtr ResultDeviceId_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceIds__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultDeviceIds__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceIds__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultDeviceIds__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceIds__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultDeviceIds__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceIds__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultDeviceIds__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceIds__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultDeviceIds__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultDeviceIds___")]
  public static extern void delete_ResultDeviceIds(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceIds_getResult___")]
  public static extern global::System.IntPtr ResultDeviceIds_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceHandle__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultDeviceHandle__SWIG_0( ref Nlc.DeviceHandle  jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceHandle__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultDeviceHandle__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceHandle__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultDeviceHandle__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceHandle__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultDeviceHandle__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultDeviceHandle__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultDeviceHandle__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultDeviceHandle___")]
  public static extern void delete_ResultDeviceHandle(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceHandle_getResult___")]
  public static extern  Nlc.DeviceHandle  ResultDeviceHandle_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultConnectionState__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultConnectionState__SWIG_0(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultConnectionState__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultConnectionState__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultConnectionState__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultConnectionState__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultConnectionState__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultConnectionState__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultConnectionState__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultConnectionState__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultConnectionState___")]
  public static extern void delete_ResultConnectionState(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultConnectionState_getResult___")]
  public static extern int ResultConnectionState_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectEntry__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultObjectEntry__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectEntry__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultObjectEntry__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectEntry__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultObjectEntry__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectEntry__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultObjectEntry__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectEntry__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultObjectEntry__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultObjectEntry___")]
  public static extern void delete_ResultObjectEntry(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectEntry_getResult___")]
  public static extern global::System.IntPtr ResultObjectEntry_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectSubEntry__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultObjectSubEntry__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectSubEntry__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultObjectSubEntry__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectSubEntry__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultObjectSubEntry__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectSubEntry__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultObjectSubEntry__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectSubEntry__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultObjectSubEntry__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultObjectSubEntry___")]
  public static extern void delete_ResultObjectSubEntry(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectSubEntry_getResult___")]
  public static extern global::System.IntPtr ResultObjectSubEntry_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectDictionary__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultObjectDictionary__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectDictionary__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultObjectDictionary__SWIG_1(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectDictionary__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultObjectDictionary__SWIG_2(int jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectDictionary__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultObjectDictionary__SWIG_3(int jarg1, uint jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultObjectDictionary__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultObjectDictionary__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultObjectDictionary___")]
  public static extern void delete_ResultObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectDictionary_getResult___")]
  public static extern global::System.IntPtr ResultObjectDictionary_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NlcCallback___")]
  public static extern void delete_NlcCallback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcCallback_callback___")]
  public static extern global::System.IntPtr NlcCallback_callback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_NlcCallback___")]
  public static extern global::System.IntPtr new_NlcCallback();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcCallback_director_connect___")]
  public static extern void NlcCallback_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, NlcCallback.SwigDelegateNlcCallback_0 delegate0);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NlcDataTransferCallback___")]
  public static extern void delete_NlcDataTransferCallback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcDataTransferCallback_callback___")]
  public static extern global::System.IntPtr NlcDataTransferCallback_callback(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_NlcDataTransferCallback___")]
  public static extern global::System.IntPtr new_NlcDataTransferCallback();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcDataTransferCallback_director_connect___")]
  public static extern void NlcDataTransferCallback_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, NlcDataTransferCallback.SwigDelegateNlcDataTransferCallback_0 delegate0);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NlcScanBusCallback___")]
  public static extern void delete_NlcScanBusCallback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcScanBusCallback_callback___")]
  public static extern global::System.IntPtr NlcScanBusCallback_callback(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, int jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_NlcScanBusCallback___")]
  public static extern global::System.IntPtr new_NlcScanBusCallback();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcScanBusCallback_director_connect___")]
  public static extern void NlcScanBusCallback_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, NlcScanBusCallback.SwigDelegateNlcScanBusCallback_0 delegate0);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NlcLoggingCallback___")]
  public static extern void delete_NlcLoggingCallback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcLoggingCallback_callback___")]
  public static extern void NlcLoggingCallback_callback(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, string jarg3, string jarg4, uint jarg5, ulong jarg6, uint jarg7);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_NlcLoggingCallback___")]
  public static extern global::System.IntPtr new_NlcLoggingCallback();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NlcLoggingCallback_director_connect___")]
  public static extern void NlcLoggingCallback_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, NlcLoggingCallback.SwigDelegateNlcLoggingCallback_0 delegate0);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_OdLibrary___")]
  public static extern void delete_OdLibrary(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdLibrary_getObjectDictionaryCount___")]
  public static extern uint OdLibrary_getObjectDictionaryCount(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdLibrary_getObjectDictionary___")]
  public static extern global::System.IntPtr OdLibrary_getObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdLibrary_addObjectDictionaryFromFile___")]
  public static extern global::System.IntPtr OdLibrary_addObjectDictionaryFromFile(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdLibrary_addObjectDictionary__SWIG_0___")]
  public static extern global::System.IntPtr OdLibrary_addObjectDictionary__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdLibrary_addObjectDictionary__SWIG_1___")]
  public static extern global::System.IntPtr OdLibrary_addObjectDictionary__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_deviceName_set___")]
  public static extern void ProfinetDevice_deviceName_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_deviceName_get___")]
  public static extern string ProfinetDevice_deviceName_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_deviceVendor_set___")]
  public static extern void ProfinetDevice_deviceVendor_set(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_deviceVendor_get___")]
  public static extern string ProfinetDevice_deviceVendor_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_macAddress_set___")]
  public static extern void ProfinetDevice_macAddress_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_macAddress_get___")]
  public static extern global::System.IntPtr ProfinetDevice_macAddress_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_ipAddress_set___")]
  public static extern void ProfinetDevice_ipAddress_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_ipAddress_get___")]
  public static extern uint ProfinetDevice_ipAddress_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_netMask_set___")]
  public static extern void ProfinetDevice_netMask_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_netMask_get___")]
  public static extern uint ProfinetDevice_netMask_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_defaultGateway_set___")]
  public static extern void ProfinetDevice_defaultGateway_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDevice_defaultGateway_get___")]
  public static extern uint ProfinetDevice_defaultGateway_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDevice___")]
  public static extern global::System.IntPtr new_ProfinetDevice();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDevice___")]
  public static extern void delete_ProfinetDevice(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultProfinetDevices__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultProfinetDevices__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultProfinetDevices__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultProfinetDevices__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultProfinetDevices__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultProfinetDevices__SWIG_2(string jarg1, int jarg2, uint jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultProfinetDevices__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultProfinetDevices__SWIG_3(string jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultProfinetDevices__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultProfinetDevices__SWIG_4(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultProfinetDevices_getResult___")]
  public static extern global::System.IntPtr ResultProfinetDevices_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultProfinetDevices___")]
  public static extern void delete_ResultProfinetDevices(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDCP___")]
  public static extern void delete_ProfinetDCP(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_getScanTimeout___")]
  public static extern uint ProfinetDCP_getScanTimeout(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_setScanTimeout___")]
  public static extern void ProfinetDCP_setScanTimeout(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_getResponseTimeout___")]
  public static extern uint ProfinetDCP_getResponseTimeout(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_setResponseTimeout___")]
  public static extern void ProfinetDCP_setResponseTimeout(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_isServiceAvailable___")]
  public static extern global::System.IntPtr ProfinetDCP_isServiceAvailable(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_scanProfinetDevices__SWIG_0___")]
  public static extern global::System.IntPtr ProfinetDCP_scanProfinetDevices__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_scanProfinetDevices__SWIG_1___")]
  public static extern global::System.IntPtr ProfinetDCP_scanProfinetDevices__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_setupProfinetDevice___")]
  public static extern global::System.IntPtr ProfinetDCP_setupProfinetDevice(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, bool jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_resetProfinetDevice___")]
  public static extern global::System.IntPtr ProfinetDCP_resetProfinetDevice(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_blinkProfinetDevice___")]
  public static extern global::System.IntPtr ProfinetDCP_blinkProfinetDevice(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDCP_validateProfinetDeviceIp___")]
  public static extern global::System.IntPtr ProfinetDCP_validateProfinetDeviceIp(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_0(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_1(string jarg1, int jarg2, uint jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_2(string jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_3(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_4(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSamplerState__SWIG_5___")]
  public static extern global::System.IntPtr new_ResultSamplerState__SWIG_5(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultSamplerState___")]
  public static extern void delete_ResultSamplerState(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultSamplerState_getResult___")]
  public static extern int ResultSamplerState_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_condition_set___")]
  public static extern void SamplerTrigger_condition_set(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_condition_get___")]
  public static extern int SamplerTrigger_condition_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_address_set___")]
  public static extern void SamplerTrigger_address_set(global::System.Runtime.InteropServices.HandleRef jarg1,  ref Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_address_get___")]
  public static extern global::System.IntPtr SamplerTrigger_address_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_value_set___")]
  public static extern void SamplerTrigger_value_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerTrigger_value_get___")]
  public static extern uint SamplerTrigger_value_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SamplerTrigger___")]
  public static extern global::System.IntPtr new_SamplerTrigger();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SamplerTrigger___")]
  public static extern void delete_SamplerTrigger(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_version_set___")]
  public static extern void SamplerConfiguration_version_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_version_get___")]
  public static extern uint SamplerConfiguration_version_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_SAMPLER_CONFIGURATION_VERSION_get___")]
  public static extern uint SamplerConfiguration_SAMPLER_CONFIGURATION_VERSION_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_mode_set___")]
  public static extern void SamplerConfiguration_mode_set(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_mode_get___")]
  public static extern int SamplerConfiguration_mode_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_usingSoftwareImplementation_set___")]
  public static extern void SamplerConfiguration_usingSoftwareImplementation_set(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_usingSoftwareImplementation_get___")]
  public static extern bool SamplerConfiguration_usingSoftwareImplementation_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_usingNewFWSamplerImplementation_set___")]
  public static extern void SamplerConfiguration_usingNewFWSamplerImplementation_set(global::System.Runtime.InteropServices.HandleRef jarg1, bool jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_usingNewFWSamplerImplementation_get___")]
  public static extern bool SamplerConfiguration_usingNewFWSamplerImplementation_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_periodMilliseconds_set___")]
  public static extern void SamplerConfiguration_periodMilliseconds_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_periodMilliseconds_get___")]
  public static extern ushort SamplerConfiguration_periodMilliseconds_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_durationMilliseconds_set___")]
  public static extern void SamplerConfiguration_durationMilliseconds_set(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_durationMilliseconds_get___")]
  public static extern uint SamplerConfiguration_durationMilliseconds_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_preTriggerNumberOfSamples_set___")]
  public static extern void SamplerConfiguration_preTriggerNumberOfSamples_set(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_preTriggerNumberOfSamples_get___")]
  public static extern ushort SamplerConfiguration_preTriggerNumberOfSamples_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_startTrigger_set___")]
  public static extern void SamplerConfiguration_startTrigger_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_startTrigger_get___")]
  public static extern global::System.IntPtr SamplerConfiguration_startTrigger_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_stopTrigger_set___")]
  public static extern void SamplerConfiguration_stopTrigger_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_stopTrigger_get___")]
  public static extern global::System.IntPtr SamplerConfiguration_stopTrigger_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_trackedAddresses_set___")]
  public static extern void SamplerConfiguration_trackedAddresses_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_trackedAddresses_get___")]
  public static extern global::System.IntPtr SamplerConfiguration_trackedAddresses_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerConfiguration_MAX_TRACKED_ADDRESSES_get___")]
  public static extern uint SamplerConfiguration_MAX_TRACKED_ADDRESSES_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SamplerConfiguration___")]
  public static extern global::System.IntPtr new_SamplerConfiguration();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SamplerConfiguration___")]
  public static extern void delete_SamplerConfiguration(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValue_value_set___")]
  public static extern void SampledValue_value_set(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValue_value_get___")]
  public static extern long SampledValue_value_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValue_collectTimeMsec_set___")]
  public static extern void SampledValue_collectTimeMsec_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValue_collectTimeMsec_get___")]
  public static extern ulong SampledValue_collectTimeMsec_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampledValue___")]
  public static extern global::System.IntPtr new_SampledValue();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SampledValue___")]
  public static extern void delete_SampledValue(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleData_iterationNumber_set___")]
  public static extern void SampleData_iterationNumber_set(global::System.Runtime.InteropServices.HandleRef jarg1, ulong jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleData_iterationNumber_get___")]
  public static extern ulong SampleData_iterationNumber_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleData_sampledValues_set___")]
  public static extern void SampleData_sampledValues_set(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleData_sampledValues_get___")]
  public static extern global::System.IntPtr SampleData_sampledValues_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampleData___")]
  public static extern global::System.IntPtr new_SampleData();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SampleData___")]
  public static extern void delete_SampleData(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_0___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_1___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_2___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_2(string jarg1, int jarg2, uint jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_3___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_3(string jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_4___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_4(string jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_5___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_5(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ResultSampleDataArray__SWIG_6___")]
  public static extern global::System.IntPtr new_ResultSampleDataArray__SWIG_6(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ResultSampleDataArray___")]
  public static extern void delete_ResultSampleDataArray(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultSampleDataArray_getResult___")]
  public static extern global::System.IntPtr ResultSampleDataArray_getResult(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SamplerNotify___")]
  public static extern void delete_SamplerNotify(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerNotify_notify___")]
  public static extern void SamplerNotify_notify(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int jarg3, global::System.Runtime.InteropServices.HandleRef jarg4, long jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SamplerNotify___")]
  public static extern global::System.IntPtr new_SamplerNotify();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerNotify_director_connect___")]
  public static extern void SamplerNotify_director_connect(global::System.Runtime.InteropServices.HandleRef jarg1, SamplerNotify.SwigDelegateSamplerNotify_0 delegate0);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SamplerInterface___")]
  public static extern void delete_SamplerInterface(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_configure___")]
  public static extern global::System.IntPtr SamplerInterface_configure(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_start___")]
  public static extern global::System.IntPtr SamplerInterface_start(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, long jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_getData___")]
  public static extern global::System.IntPtr SamplerInterface_getData(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_stop___")]
  public static extern global::System.IntPtr SamplerInterface_stop(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_getState___")]
  public static extern global::System.IntPtr SamplerInterface_getState(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SamplerInterface_getLastError___")]
  public static extern global::System.IntPtr SamplerInterface_getLastError(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ObjectDictionary___")]
  public static extern global::System.IntPtr new_ObjectDictionary();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ObjectDictionary___")]
  public static extern void delete_ObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_getXmlFileName___")]
  public static extern global::System.IntPtr ObjectDictionary_getXmlFileName(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_getDeviceHandle___")]
  public static extern global::System.IntPtr ObjectDictionary_getDeviceHandle(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_getObject___")]
  public static extern global::System.IntPtr ObjectDictionary_getObject(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_getObjectEntry___")]
  public static extern global::System.IntPtr ObjectDictionary_getObjectEntry(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_readNumber___")]
  public static extern global::System.IntPtr ObjectDictionary_readNumber(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_readString___")]
  public static extern global::System.IntPtr ObjectDictionary_readString(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_readBytes___")]
  public static extern global::System.IntPtr ObjectDictionary_readBytes(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_writeNumber___")]
  public static extern global::System.IntPtr ObjectDictionary_writeNumber(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2, long jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_writeBytes___")]
  public static extern global::System.IntPtr ObjectDictionary_writeBytes(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.OdIndex  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectDictionary_readNumberArray___")]
  public static extern global::System.IntPtr ObjectDictionary_readNumberArray(global::System.Runtime.InteropServices.HandleRef jarg1, ushort jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ObjectEntry___")]
  public static extern global::System.IntPtr new_ObjectEntry();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ObjectEntry___")]
  public static extern void delete_ObjectEntry(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getName___")]
  public static extern string ObjectEntry_getName(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getPrivate___")]
  public static extern bool ObjectEntry_getPrivate(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getIndex___")]
  public static extern ushort ObjectEntry_getIndex(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getDataType___")]
  public static extern int ObjectEntry_getDataType(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getObjectCode___")]
  public static extern int ObjectEntry_getObjectCode(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getObjectSaveable___")]
  public static extern int ObjectEntry_getObjectSaveable(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getMaxSubIndex___")]
  public static extern byte ObjectEntry_getMaxSubIndex(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectEntry_getSubEntry___")]
  public static extern global::System.IntPtr ObjectEntry_getSubEntry(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ObjectSubEntry___")]
  public static extern global::System.IntPtr new_ObjectSubEntry();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ObjectSubEntry___")]
  public static extern void delete_ObjectSubEntry(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getName___")]
  public static extern string ObjectSubEntry_getName(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getSubIndex___")]
  public static extern byte ObjectSubEntry_getSubIndex(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getDataType___")]
  public static extern int ObjectSubEntry_getDataType(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getSdoAccess___")]
  public static extern int ObjectSubEntry_getSdoAccess(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getPdoAccess___")]
  public static extern int ObjectSubEntry_getPdoAccess(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getBitLength___")]
  public static extern uint ObjectSubEntry_getBitLength(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getDefaultValueAsNumeric___")]
  public static extern global::System.IntPtr ObjectSubEntry_getDefaultValueAsNumeric(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getDefaultValueAsString___")]
  public static extern global::System.IntPtr ObjectSubEntry_getDefaultValueAsString(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_getDefaultValues___")]
  public static extern global::System.IntPtr ObjectSubEntry_getDefaultValues(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_readNumber___")]
  public static extern global::System.IntPtr ObjectSubEntry_readNumber(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_readString___")]
  public static extern global::System.IntPtr ObjectSubEntry_readString(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_readBytes___")]
  public static extern global::System.IntPtr ObjectSubEntry_readBytes(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_writeNumber___")]
  public static extern global::System.IntPtr ObjectSubEntry_writeNumber(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ObjectSubEntry_writeBytes___")]
  public static extern global::System.IntPtr ObjectSubEntry_writeBytes(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_CANOPEN_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_CANOPEN_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_IXXAT_get___")]
  public static extern string BUS_HARDWARE_ID_IXXAT_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_ZK_USB_CAN_get___")]
  public static extern string BUS_HARDWARE_ID_ZK_USB_CAN_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PEAK_get___")]
  public static extern string BUS_HARDWARE_ID_PEAK_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_MODBUS_RTU_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_MODBUS_RTU_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_SERIAL_PORT_get___")]
  public static extern string BUS_HARDWARE_ID_SERIAL_PORT_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_MODBUS_VCP_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_MODBUS_VCP_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_MSC_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_MSC_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_NANOTEC_VCP_get___")]
  public static extern string BUS_HARDWARE_ID_NANOTEC_VCP_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_USB_BUS_get___")]
  public static extern string BUS_HARDWARE_ID_USB_BUS_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_MODBUS_TCP_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_MODBUS_TCP_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_NETWORK_get___")]
  public static extern string BUS_HARDWARE_ID_NETWORK_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_RESTFULL_API_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_RESTFULL_API_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BUS_HARDWARE_ID_PROTOCOL_ETHERCAT_get___")]
  public static extern string BUS_HARDWARE_ID_PROTOCOL_ETHERCAT_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_MacAddress__SWIG_0___")]
  public static extern global::System.IntPtr new_MacAddress__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_MacAddress__SWIG_1___")]
  public static extern global::System.IntPtr new_MacAddress__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_size___")]
  public static extern uint MacAddress_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_empty___")]
  public static extern bool MacAddress_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_Fill___")]
  public static extern void MacAddress_Fill(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_Swap___")]
  public static extern void MacAddress_Swap(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_getitemcopy___")]
  public static extern byte MacAddress_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_getitem___")]
  public static extern byte MacAddress_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_setitem___")]
  public static extern void MacAddress_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, byte jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_Reverse__SWIG_0___")]
  public static extern void MacAddress_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_MacAddress_Reverse__SWIG_1___")]
  public static extern void MacAddress_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_MacAddress___")]
  public static extern void delete_MacAddress(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_IntVector__SWIG_0___")]
  public static extern global::System.IntPtr new_IntVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_IntVector__SWIG_1___")]
  public static extern global::System.IntPtr new_IntVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Clear___")]
  public static extern void IntVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Add___")]
  public static extern void IntVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_size___")]
  public static extern uint IntVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_empty___")]
  public static extern bool IntVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_capacity___")]
  public static extern uint IntVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_reserve___")]
  public static extern void IntVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_IntVector__SWIG_2___")]
  public static extern global::System.IntPtr new_IntVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_getitemcopy___")]
  public static extern long IntVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_getitem___")]
  public static extern long IntVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_setitem___")]
  public static extern void IntVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, long jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_AddRange___")]
  public static extern void IntVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_GetRange___")]
  public static extern global::System.IntPtr IntVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Insert___")]
  public static extern void IntVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, long jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_InsertRange___")]
  public static extern void IntVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_RemoveAt___")]
  public static extern void IntVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_RemoveRange___")]
  public static extern void IntVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Repeat___")]
  public static extern global::System.IntPtr IntVector_Repeat(long jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Reverse__SWIG_0___")]
  public static extern void IntVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Reverse__SWIG_1___")]
  public static extern void IntVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_SetRange___")]
  public static extern void IntVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Contains___")]
  public static extern bool IntVector_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_IndexOf___")]
  public static extern int IntVector_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_LastIndexOf___")]
  public static extern int IntVector_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IntVector_Remove___")]
  public static extern bool IntVector_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, long jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_IntVector___")]
  public static extern void delete_IntVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ByteVector__SWIG_0___")]
  public static extern global::System.IntPtr new_ByteVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ByteVector__SWIG_1___")]
  public static extern global::System.IntPtr new_ByteVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Clear___")]
  public static extern void ByteVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Add___")]
  public static extern void ByteVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_size___")]
  public static extern uint ByteVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_empty___")]
  public static extern bool ByteVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_capacity___")]
  public static extern uint ByteVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_reserve___")]
  public static extern void ByteVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ByteVector__SWIG_2___")]
  public static extern global::System.IntPtr new_ByteVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_getitemcopy___")]
  public static extern byte ByteVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_getitem___")]
  public static extern byte ByteVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_setitem___")]
  public static extern void ByteVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, byte jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_AddRange___")]
  public static extern void ByteVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_GetRange___")]
  public static extern global::System.IntPtr ByteVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Insert___")]
  public static extern void ByteVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, byte jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_InsertRange___")]
  public static extern void ByteVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_RemoveAt___")]
  public static extern void ByteVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_RemoveRange___")]
  public static extern void ByteVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Repeat___")]
  public static extern global::System.IntPtr ByteVector_Repeat(byte jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Reverse__SWIG_0___")]
  public static extern void ByteVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Reverse__SWIG_1___")]
  public static extern void ByteVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_SetRange___")]
  public static extern void ByteVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Contains___")]
  public static extern bool ByteVector_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_IndexOf___")]
  public static extern int ByteVector_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_LastIndexOf___")]
  public static extern int ByteVector_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ByteVector_Remove___")]
  public static extern bool ByteVector_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, byte jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ByteVector___")]
  public static extern void delete_ByteVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHWIdVector__SWIG_0___")]
  public static extern global::System.IntPtr new_BusHWIdVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHWIdVector__SWIG_1___")]
  public static extern global::System.IntPtr new_BusHWIdVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Clear___")]
  public static extern void BusHWIdVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Add___")]
  public static extern void BusHWIdVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_size___")]
  public static extern uint BusHWIdVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_empty___")]
  public static extern bool BusHWIdVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_capacity___")]
  public static extern uint BusHWIdVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_reserve___")]
  public static extern void BusHWIdVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHWIdVector__SWIG_2___")]
  public static extern global::System.IntPtr new_BusHWIdVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_getitemcopy___")]
  public static extern global::System.IntPtr BusHWIdVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_getitem___")]
  public static extern global::System.IntPtr BusHWIdVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_setitem___")]
  public static extern void BusHWIdVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_AddRange___")]
  public static extern void BusHWIdVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_GetRange___")]
  public static extern global::System.IntPtr BusHWIdVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Insert___")]
  public static extern void BusHWIdVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_InsertRange___")]
  public static extern void BusHWIdVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_RemoveAt___")]
  public static extern void BusHWIdVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_RemoveRange___")]
  public static extern void BusHWIdVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Repeat___")]
  public static extern global::System.IntPtr BusHWIdVector_Repeat(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Reverse__SWIG_0___")]
  public static extern void BusHWIdVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_Reverse__SWIG_1___")]
  public static extern void BusHWIdVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHWIdVector_SetRange___")]
  public static extern void BusHWIdVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_BusHWIdVector___")]
  public static extern void delete_BusHWIdVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceIdVector__SWIG_0___")]
  public static extern global::System.IntPtr new_DeviceIdVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceIdVector__SWIG_1___")]
  public static extern global::System.IntPtr new_DeviceIdVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Clear___")]
  public static extern void DeviceIdVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Add___")]
  public static extern void DeviceIdVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_size___")]
  public static extern uint DeviceIdVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_empty___")]
  public static extern bool DeviceIdVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_capacity___")]
  public static extern uint DeviceIdVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_reserve___")]
  public static extern void DeviceIdVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_DeviceIdVector__SWIG_2___")]
  public static extern global::System.IntPtr new_DeviceIdVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_getitemcopy___")]
  public static extern global::System.IntPtr DeviceIdVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_getitem___")]
  public static extern global::System.IntPtr DeviceIdVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_setitem___")]
  public static extern void DeviceIdVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_AddRange___")]
  public static extern void DeviceIdVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_GetRange___")]
  public static extern global::System.IntPtr DeviceIdVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Insert___")]
  public static extern void DeviceIdVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_InsertRange___")]
  public static extern void DeviceIdVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_RemoveAt___")]
  public static extern void DeviceIdVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_RemoveRange___")]
  public static extern void DeviceIdVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Repeat___")]
  public static extern global::System.IntPtr DeviceIdVector_Repeat(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Reverse__SWIG_0___")]
  public static extern void DeviceIdVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_Reverse__SWIG_1___")]
  public static extern void DeviceIdVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_DeviceIdVector_SetRange___")]
  public static extern void DeviceIdVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_DeviceIdVector___")]
  public static extern void delete_DeviceIdVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDeviceVector__SWIG_0___")]
  public static extern global::System.IntPtr new_ProfinetDeviceVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDeviceVector__SWIG_1___")]
  public static extern global::System.IntPtr new_ProfinetDeviceVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Clear___")]
  public static extern void ProfinetDeviceVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Add___")]
  public static extern void ProfinetDeviceVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_size___")]
  public static extern uint ProfinetDeviceVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_empty___")]
  public static extern bool ProfinetDeviceVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_capacity___")]
  public static extern uint ProfinetDeviceVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_reserve___")]
  public static extern void ProfinetDeviceVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDeviceVector__SWIG_2___")]
  public static extern global::System.IntPtr new_ProfinetDeviceVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_getitemcopy___")]
  public static extern global::System.IntPtr ProfinetDeviceVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_getitem___")]
  public static extern global::System.IntPtr ProfinetDeviceVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_setitem___")]
  public static extern void ProfinetDeviceVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_AddRange___")]
  public static extern void ProfinetDeviceVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_GetRange___")]
  public static extern global::System.IntPtr ProfinetDeviceVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Insert___")]
  public static extern void ProfinetDeviceVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_InsertRange___")]
  public static extern void ProfinetDeviceVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_RemoveAt___")]
  public static extern void ProfinetDeviceVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_RemoveRange___")]
  public static extern void ProfinetDeviceVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Repeat___")]
  public static extern global::System.IntPtr ProfinetDeviceVector_Repeat(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Reverse__SWIG_0___")]
  public static extern void ProfinetDeviceVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_Reverse__SWIG_1___")]
  public static extern void ProfinetDeviceVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDeviceVector_SetRange___")]
  public static extern void ProfinetDeviceVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDeviceVector___")]
  public static extern void delete_ProfinetDeviceVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_OdIndexVector__SWIG_0___")]
  public static extern global::System.IntPtr new_OdIndexVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_OdIndexVector__SWIG_1___")]
  public static extern global::System.IntPtr new_OdIndexVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Clear___")]
  public static extern void OdIndexVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Add___")]
  public static extern void OdIndexVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1,  ref Nlc.OdIndex  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_size___")]
  public static extern uint OdIndexVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_empty___")]
  public static extern bool OdIndexVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_capacity___")]
  public static extern uint OdIndexVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_reserve___")]
  public static extern void OdIndexVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_OdIndexVector__SWIG_2___")]
  public static extern global::System.IntPtr new_OdIndexVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_getitemcopy___")]
  public static extern  Nlc.OdIndex  OdIndexVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_getitem___")]
  public static extern global::System.IntPtr OdIndexVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_setitem___")]
  public static extern void OdIndexVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2,  ref Nlc.OdIndex  jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_AddRange___")]
  public static extern void OdIndexVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_GetRange___")]
  public static extern global::System.IntPtr OdIndexVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Insert___")]
  public static extern void OdIndexVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2,  ref Nlc.OdIndex  jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_InsertRange___")]
  public static extern void OdIndexVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_RemoveAt___")]
  public static extern void OdIndexVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_RemoveRange___")]
  public static extern void OdIndexVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Repeat___")]
  public static extern global::System.IntPtr OdIndexVector_Repeat( ref Nlc.OdIndex  jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Reverse__SWIG_0___")]
  public static extern void OdIndexVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_Reverse__SWIG_1___")]
  public static extern void OdIndexVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_OdIndexVector_SetRange___")]
  public static extern void OdIndexVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_OdIndexVector___")]
  public static extern void delete_OdIndexVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampleDataVector__SWIG_0___")]
  public static extern global::System.IntPtr new_SampleDataVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampleDataVector__SWIG_1___")]
  public static extern global::System.IntPtr new_SampleDataVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Clear___")]
  public static extern void SampleDataVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Add___")]
  public static extern void SampleDataVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_size___")]
  public static extern uint SampleDataVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_empty___")]
  public static extern bool SampleDataVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_capacity___")]
  public static extern uint SampleDataVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_reserve___")]
  public static extern void SampleDataVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampleDataVector__SWIG_2___")]
  public static extern global::System.IntPtr new_SampleDataVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_getitemcopy___")]
  public static extern global::System.IntPtr SampleDataVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_getitem___")]
  public static extern global::System.IntPtr SampleDataVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_setitem___")]
  public static extern void SampleDataVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_AddRange___")]
  public static extern void SampleDataVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_GetRange___")]
  public static extern global::System.IntPtr SampleDataVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Insert___")]
  public static extern void SampleDataVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_InsertRange___")]
  public static extern void SampleDataVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_RemoveAt___")]
  public static extern void SampleDataVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_RemoveRange___")]
  public static extern void SampleDataVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Repeat___")]
  public static extern global::System.IntPtr SampleDataVector_Repeat(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Reverse__SWIG_0___")]
  public static extern void SampleDataVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_Reverse__SWIG_1___")]
  public static extern void SampleDataVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampleDataVector_SetRange___")]
  public static extern void SampleDataVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SampleDataVector___")]
  public static extern void delete_SampleDataVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampledValueVector__SWIG_0___")]
  public static extern global::System.IntPtr new_SampledValueVector__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampledValueVector__SWIG_1___")]
  public static extern global::System.IntPtr new_SampledValueVector__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Clear___")]
  public static extern void SampledValueVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Add___")]
  public static extern void SampledValueVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_size___")]
  public static extern uint SampledValueVector_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_empty___")]
  public static extern bool SampledValueVector_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_capacity___")]
  public static extern uint SampledValueVector_capacity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_reserve___")]
  public static extern void SampledValueVector_reserve(global::System.Runtime.InteropServices.HandleRef jarg1, uint jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SampledValueVector__SWIG_2___")]
  public static extern global::System.IntPtr new_SampledValueVector__SWIG_2(int jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_getitemcopy___")]
  public static extern global::System.IntPtr SampledValueVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_getitem___")]
  public static extern global::System.IntPtr SampledValueVector_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_setitem___")]
  public static extern void SampledValueVector_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_AddRange___")]
  public static extern void SampledValueVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_GetRange___")]
  public static extern global::System.IntPtr SampledValueVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Insert___")]
  public static extern void SampledValueVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_InsertRange___")]
  public static extern void SampledValueVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_RemoveAt___")]
  public static extern void SampledValueVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_RemoveRange___")]
  public static extern void SampledValueVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Repeat___")]
  public static extern global::System.IntPtr SampledValueVector_Repeat(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Reverse__SWIG_0___")]
  public static extern void SampledValueVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_Reverse__SWIG_1___")]
  public static extern void SampledValueVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SampledValueVector_SetRange___")]
  public static extern void SampledValueVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SampledValueVector___")]
  public static extern void delete_SampledValueVector(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_StringIntMap__SWIG_0___")]
  public static extern global::System.IntPtr new_StringIntMap__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_StringIntMap__SWIG_1___")]
  public static extern global::System.IntPtr new_StringIntMap__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_size___")]
  public static extern uint StringIntMap_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_empty___")]
  public static extern bool StringIntMap_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_Clear___")]
  public static extern void StringIntMap_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_getitem___")]
  public static extern int StringIntMap_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_setitem___")]
  public static extern void StringIntMap_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_ContainsKey___")]
  public static extern bool StringIntMap_ContainsKey(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_Add___")]
  public static extern void StringIntMap_Add(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_Remove___")]
  public static extern bool StringIntMap_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_create_iterator_begin___")]
  public static extern global::System.IntPtr StringIntMap_create_iterator_begin(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_get_next_key___")]
  public static extern string StringIntMap_get_next_key(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.IntPtr jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringIntMap_destroy_iterator___")]
  public static extern void StringIntMap_destroy_iterator(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.IntPtr jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_StringIntMap___")]
  public static extern void delete_StringIntMap(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_StringStringMap__SWIG_0___")]
  public static extern global::System.IntPtr new_StringStringMap__SWIG_0();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_StringStringMap__SWIG_1___")]
  public static extern global::System.IntPtr new_StringStringMap__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_size___")]
  public static extern uint StringStringMap_size(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_empty___")]
  public static extern bool StringStringMap_empty(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_Clear___")]
  public static extern void StringStringMap_Clear(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_getitem___")]
  public static extern string StringStringMap_getitem(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_setitem___")]
  public static extern void StringStringMap_setitem(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_ContainsKey___")]
  public static extern bool StringStringMap_ContainsKey(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_Add___")]
  public static extern void StringStringMap_Add(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_Remove___")]
  public static extern bool StringStringMap_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, string jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_create_iterator_begin___")]
  public static extern global::System.IntPtr StringStringMap_create_iterator_begin(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_get_next_key___")]
  public static extern string StringStringMap_get_next_key(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.IntPtr jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_StringStringMap_destroy_iterator___")]
  public static extern void StringStringMap_destroy_iterator(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.IntPtr jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_StringStringMap___")]
  public static extern void delete_StringStringMap(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_1000K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_1000K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_800K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_800K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_500K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_500K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_250K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_250K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_125K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_125K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_100K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_100K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_50K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_50K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_20K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_20K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_10K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_10K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBaudRate_BAUD_RATE_5K_get___")]
  public static extern string CanBaudRate_BAUD_RATE_5K_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanBaudRate___")]
  public static extern global::System.IntPtr new_CanBaudRate();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanBaudRate___")]
  public static extern void delete_CanBaudRate(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IxxatAdapterBusNumber_BUS_NUMBER_0_DEFAULT_get___")]
  public static extern string IxxatAdapterBusNumber_BUS_NUMBER_0_DEFAULT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IxxatAdapterBusNumber_BUS_NUMBER_1_get___")]
  public static extern string IxxatAdapterBusNumber_BUS_NUMBER_1_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IxxatAdapterBusNumber_BUS_NUMBER_2_get___")]
  public static extern string IxxatAdapterBusNumber_BUS_NUMBER_2_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_IxxatAdapterBusNumber_BUS_NUMBER_3_get___")]
  public static extern string IxxatAdapterBusNumber_BUS_NUMBER_3_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_IxxatAdapterBusNumber___")]
  public static extern global::System.IntPtr new_IxxatAdapterBusNumber();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_IxxatAdapterBusNumber___")]
  public static extern void delete_IxxatAdapterBusNumber(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS1_get___")]
  public static extern ushort PCAN_USBBUS1_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS2_get___")]
  public static extern ushort PCAN_USBBUS2_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS3_get___")]
  public static extern ushort PCAN_USBBUS3_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS4_get___")]
  public static extern ushort PCAN_USBBUS4_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS5_get___")]
  public static extern ushort PCAN_USBBUS5_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS6_get___")]
  public static extern ushort PCAN_USBBUS6_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS7_get___")]
  public static extern ushort PCAN_USBBUS7_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS8_get___")]
  public static extern ushort PCAN_USBBUS8_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS9_get___")]
  public static extern ushort PCAN_USBBUS9_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS10_get___")]
  public static extern ushort PCAN_USBBUS10_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS11_get___")]
  public static extern ushort PCAN_USBBUS11_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS12_get___")]
  public static extern ushort PCAN_USBBUS12_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS13_get___")]
  public static extern ushort PCAN_USBBUS13_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS14_get___")]
  public static extern ushort PCAN_USBBUS14_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS15_get___")]
  public static extern ushort PCAN_USBBUS15_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PCAN_USBBUS16_get___")]
  public static extern ushort PCAN_USBBUS16_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_1_DEFAULT_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_1_DEFAULT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_2_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_2_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_3_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_3_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_4_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_4_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_5_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_5_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_6_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_6_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_7_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_7_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_8_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_8_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_9_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_9_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_10_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_10_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_11_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_11_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_12_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_12_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_13_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_13_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_14_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_14_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_15_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_15_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_PeakAdapterBusNumber_BUS_NUMBER_16_get___")]
  public static extern string PeakAdapterBusNumber_BUS_NUMBER_16_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_PeakAdapterBusNumber___")]
  public static extern global::System.IntPtr new_PeakAdapterBusNumber();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_PeakAdapterBusNumber___")]
  public static extern void delete_PeakAdapterBusNumber(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Ixxat_ADAPTER_BUS_NUMBER_OPTIONS_NAME_get___")]
  public static extern string Ixxat_ADAPTER_BUS_NUMBER_OPTIONS_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Ixxat_adapterBusNumber_get___")]
  public static extern global::System.IntPtr Ixxat_adapterBusNumber_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_Ixxat___")]
  public static extern global::System.IntPtr new_Ixxat();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_Ixxat___")]
  public static extern void delete_Ixxat(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Peak_ADAPTER_BUS_NUMBER_OPTIONS_NAME_get___")]
  public static extern string Peak_ADAPTER_BUS_NUMBER_OPTIONS_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_Peak_adapterBusNumber_get___")]
  public static extern global::System.IntPtr Peak_adapterBusNumber_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_Peak___")]
  public static extern global::System.IntPtr new_Peak();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_Peak___")]
  public static extern void delete_Peak(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_sdoTimeout_get___")]
  public static extern global::System.IntPtr CanBusTimeoutOptions_sdoTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_SDO_TIMEOUT_OPTION_NAME_get___")]
  public static extern string CanBusTimeoutOptions_SDO_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_DEFAULT_SDO_TIMEOUT_get___")]
  public static extern uint CanBusTimeoutOptions_DEFAULT_SDO_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_scanTimeout_get___")]
  public static extern global::System.IntPtr CanBusTimeoutOptions_scanTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_SCAN_TIMEOUT_OPTION_NAME_get___")]
  public static extern string CanBusTimeoutOptions_SCAN_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_DEFAULT_SCAN_TIMEOUT_get___")]
  public static extern uint CanBusTimeoutOptions_DEFAULT_SCAN_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_nmtAnswerTimeout_get___")]
  public static extern global::System.IntPtr CanBusTimeoutOptions_nmtAnswerTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_NMT_ANSWER_TIMEOUT_OPTION_NAME_get___")]
  public static extern string CanBusTimeoutOptions_NMT_ANSWER_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusTimeoutOptions_DEFAULT_NMT_ANSWER_TIMEOUT_get___")]
  public static extern uint CanBusTimeoutOptions_DEFAULT_NMT_ANSWER_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanBusTimeoutOptions___")]
  public static extern global::System.IntPtr new_CanBusTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanBusTimeoutOptions___")]
  public static extern void delete_CanBusTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusRetryOptions_sdoMaxRetries_get___")]
  public static extern global::System.IntPtr CanBusRetryOptions_sdoMaxRetries_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusRetryOptions_SDO_MAX_RETRIES_OPTION_NAME_get___")]
  public static extern string CanBusRetryOptions_SDO_MAX_RETRIES_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBusRetryOptions_DEFAULT_SDO_MAX_RETRIES_get___")]
  public static extern uint CanBusRetryOptions_DEFAULT_SDO_MAX_RETRIES_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanBusRetryOptions___")]
  public static extern global::System.IntPtr new_CanBusRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanBusRetryOptions___")]
  public static extern void delete_CanBusRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_BAUD_RATE_OPTIONS_NAME_get___")]
  public static extern string CanBus_BAUD_RATE_OPTIONS_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_baudRate_get___")]
  public static extern global::System.IntPtr CanBus_baudRate_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_ixxat_get___")]
  public static extern global::System.IntPtr CanBus_ixxat_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_peak_get___")]
  public static extern global::System.IntPtr CanBus_peak_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr CanBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_CanBus_retryOptions_get___")]
  public static extern global::System.IntPtr CanBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_CanBus___")]
  public static extern global::System.IntPtr new_CanBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_CanBus___")]
  public static extern void delete_CanBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusSerialRetryOptions___")]
  public static extern global::System.IntPtr new_ModbusSerialRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusSerialRetryOptions___")]
  public static extern void delete_ModbusSerialRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_nominalTimeout_get___")]
  public static extern global::System.IntPtr ModbusSerialTimeoutOptions_nominalTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_NOMINAL_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ModbusSerialTimeoutOptions_NOMINAL_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_DEFAULT_NOMINAL_TIMEOUT_get___")]
  public static extern uint ModbusSerialTimeoutOptions_DEFAULT_NOMINAL_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_minimumTimeout_get___")]
  public static extern global::System.IntPtr ModbusSerialTimeoutOptions_minimumTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_MINIMUM_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ModbusSerialTimeoutOptions_MINIMUM_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialTimeoutOptions_DEFAULT_MINIMUM_TIMEOUT_get___")]
  public static extern uint ModbusSerialTimeoutOptions_DEFAULT_MINIMUM_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusSerialTimeoutOptions___")]
  public static extern global::System.IntPtr new_ModbusSerialTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusSerialTimeoutOptions___")]
  public static extern void delete_ModbusSerialTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialParity_NONE_get___")]
  public static extern string SerialParity_NONE_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialParity_ODD_get___")]
  public static extern string SerialParity_ODD_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialParity_EVEN_get___")]
  public static extern string SerialParity_EVEN_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialParity_MARK_get___")]
  public static extern string SerialParity_MARK_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialParity_SPACE_get___")]
  public static extern string SerialParity_SPACE_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SerialParity___")]
  public static extern global::System.IntPtr new_SerialParity();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SerialParity___")]
  public static extern void delete_SerialParity(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_7200_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_7200_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_9600_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_9600_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_14400_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_14400_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_19200_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_19200_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_38400_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_38400_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_56000_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_56000_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_57600_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_57600_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_115200_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_115200_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_128000_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_128000_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_SerialBaudRate_BAUD_RATE_256000_get___")]
  public static extern string SerialBaudRate_BAUD_RATE_256000_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_SerialBaudRate___")]
  public static extern global::System.IntPtr new_SerialBaudRate();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_SerialBaudRate___")]
  public static extern void delete_SerialBaudRate(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_BAUD_RATE_OPTIONS_NAME_get___")]
  public static extern string ModbusSerialBus_BAUD_RATE_OPTIONS_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_baudRate_get___")]
  public static extern global::System.IntPtr ModbusSerialBus_baudRate_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_PARITY_OPTIONS_NAME_get___")]
  public static extern string ModbusSerialBus_PARITY_OPTIONS_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_parity_get___")]
  public static extern global::System.IntPtr ModbusSerialBus_parity_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr ModbusSerialBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusSerialBus_retryOptions_get___")]
  public static extern global::System.IntPtr ModbusSerialBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusSerialBus___")]
  public static extern global::System.IntPtr new_ModbusSerialBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusSerialBus___")]
  public static extern void delete_ModbusSerialBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_connectTimeout_get___")]
  public static extern global::System.IntPtr RESTfulTimeoutOptions_connectTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_CONNECT_TIMEOUT_OPTION_NAME_get___")]
  public static extern string RESTfulTimeoutOptions_CONNECT_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_DEFAULT_CONNECT_TIMEOUT_get___")]
  public static extern uint RESTfulTimeoutOptions_DEFAULT_CONNECT_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_requestTimeout_get___")]
  public static extern global::System.IntPtr RESTfulTimeoutOptions_requestTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_REQUEST_TIMEOUT_OPTION_NAME_get___")]
  public static extern string RESTfulTimeoutOptions_REQUEST_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_DEFAULT_REQUEST_TIMEOUT_get___")]
  public static extern uint RESTfulTimeoutOptions_DEFAULT_REQUEST_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_responseTimeout_get___")]
  public static extern global::System.IntPtr RESTfulTimeoutOptions_responseTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_RESPONSE_TIMEOUT_OPTION_NAME_get___")]
  public static extern string RESTfulTimeoutOptions_RESPONSE_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_DEFAULT_RESPONSE_TIMEOUT_get___")]
  public static extern uint RESTfulTimeoutOptions_DEFAULT_RESPONSE_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_uploadResponseTimeout_get___")]
  public static extern global::System.IntPtr RESTfulTimeoutOptions_uploadResponseTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_UPLOAD_RESPONSE_TIMEOUT_OPTION_NAME_get___")]
  public static extern string RESTfulTimeoutOptions_UPLOAD_RESPONSE_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_DEFAULT_UPLOAD_RESPONSE_TIMEOUT_get___")]
  public static extern uint RESTfulTimeoutOptions_DEFAULT_UPLOAD_RESPONSE_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_uploadConnectTimeout_get___")]
  public static extern global::System.IntPtr RESTfulTimeoutOptions_uploadConnectTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_UPLOAD_CONNECT_TIMEOUT_OPTION_NAME_get___")]
  public static extern string RESTfulTimeoutOptions_UPLOAD_CONNECT_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulTimeoutOptions_DEFAULT_UPLOAD_CONNECT_TIMEOUT_get___")]
  public static extern uint RESTfulTimeoutOptions_DEFAULT_UPLOAD_CONNECT_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_RESTfulTimeoutOptions___")]
  public static extern global::System.IntPtr new_RESTfulTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_RESTfulTimeoutOptions___")]
  public static extern void delete_RESTfulTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulRetryOptions_maxAttempts_get___")]
  public static extern global::System.IntPtr RESTfulRetryOptions_maxAttempts_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulRetryOptions_MAX_ATTEMPTS_OPTION_NAME_get___")]
  public static extern string RESTfulRetryOptions_MAX_ATTEMPTS_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulRetryOptions_DEFAULT_MAX_ATTEMPTS_get___")]
  public static extern uint RESTfulRetryOptions_DEFAULT_MAX_ATTEMPTS_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_RESTfulRetryOptions___")]
  public static extern global::System.IntPtr new_RESTfulRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_RESTfulRetryOptions___")]
  public static extern void delete_RESTfulRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_backoffBaseDelay_get___")]
  public static extern global::System.IntPtr RESTfulBus_backoffBaseDelay_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_BACKOFF_BASE_DELAY_OPTION_NAME_get___")]
  public static extern string RESTfulBus_BACKOFF_BASE_DELAY_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_DEFAULT_BACKOFF_BASE_DELAY_get___")]
  public static extern uint RESTfulBus_DEFAULT_BACKOFF_BASE_DELAY_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_backoffMaxDelay_get___")]
  public static extern global::System.IntPtr RESTfulBus_backoffMaxDelay_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_BACKOFF_MAX_DELAY_OPTION_NAME_get___")]
  public static extern string RESTfulBus_BACKOFF_MAX_DELAY_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_DEFAULT_BACKOFF_MAX_DELAY_get___")]
  public static extern uint RESTfulBus_DEFAULT_BACKOFF_MAX_DELAY_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr RESTfulBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_RESTfulBus_retryOptions_get___")]
  public static extern global::System.IntPtr RESTfulBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_RESTfulBus___")]
  public static extern global::System.IntPtr new_RESTfulBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_RESTfulBus___")]
  public static extern void delete_RESTfulBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_exclusiveLockTimeout_get___")]
  public static extern global::System.IntPtr EtherCATBusTimeoutOptions_exclusiveLockTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_EXCLUSIVE_LOCK_TIMEOUT_OPTION_NAME_get___")]
  public static extern string EtherCATBusTimeoutOptions_EXCLUSIVE_LOCK_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_DEFAULT_EXCLUSIVE_LOCK_TIMEOUT_get___")]
  public static extern uint EtherCATBusTimeoutOptions_DEFAULT_EXCLUSIVE_LOCK_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_sharedLockTimeout_get___")]
  public static extern global::System.IntPtr EtherCATBusTimeoutOptions_sharedLockTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_SHARED_LOCK_TIMEOUT_OPTION_NAME_get___")]
  public static extern string EtherCATBusTimeoutOptions_SHARED_LOCK_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_DEFAULT_SHARED_LOCK_TIMEOUT_get___")]
  public static extern uint EtherCATBusTimeoutOptions_DEFAULT_SHARED_LOCK_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_readTimeout_get___")]
  public static extern global::System.IntPtr EtherCATBusTimeoutOptions_readTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_READ_TIMEOUT_OPTION_NAME_get___")]
  public static extern string EtherCATBusTimeoutOptions_READ_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_DEFAULT_READ_TIMEOUT_get___")]
  public static extern uint EtherCATBusTimeoutOptions_DEFAULT_READ_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_writeTimeout_get___")]
  public static extern global::System.IntPtr EtherCATBusTimeoutOptions_writeTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_WRITE_TIMEOUT_OPTION_NAME_get___")]
  public static extern string EtherCATBusTimeoutOptions_WRITE_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusTimeoutOptions_DEFAULT_WRITE_TIMEOUT_get___")]
  public static extern uint EtherCATBusTimeoutOptions_DEFAULT_WRITE_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_EtherCATBusTimeoutOptions___")]
  public static extern global::System.IntPtr new_EtherCATBusTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_EtherCATBusTimeoutOptions___")]
  public static extern void delete_EtherCATBusTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_readWriteAttempts_get___")]
  public static extern global::System.IntPtr EtherCATBusRetryOptions_readWriteAttempts_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_READ_WRITE_ATTEMPTS_OPTION_NAME_get___")]
  public static extern string EtherCATBusRetryOptions_READ_WRITE_ATTEMPTS_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_DEFAULT_READ_WRITE_ATTEMPTS_get___")]
  public static extern uint EtherCATBusRetryOptions_DEFAULT_READ_WRITE_ATTEMPTS_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_changeNetworkStateAttempts_get___")]
  public static extern global::System.IntPtr EtherCATBusRetryOptions_changeNetworkStateAttempts_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME_get___")]
  public static extern string EtherCATBusRetryOptions_CHANGE_NETWORK_STATE_ATTEMPTS_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBusRetryOptions_DEFAULT_CHANGE_NETWORK_STATE_ATTEMPTS_get___")]
  public static extern uint EtherCATBusRetryOptions_DEFAULT_CHANGE_NETWORK_STATE_ATTEMPTS_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_EtherCATBusRetryOptions___")]
  public static extern global::System.IntPtr new_EtherCATBusRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_EtherCATBusRetryOptions___")]
  public static extern void delete_EtherCATBusRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_networkFirmwareState_get___")]
  public static extern global::System.IntPtr EtherCATBus_networkFirmwareState_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_NETWORK_FIRMWARE_STATE_OPTION_NAME_get___")]
  public static extern string EtherCATBus_NETWORK_FIRMWARE_STATE_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_DEFAULT_NETWORK_FIRMWARE_STATE_get___")]
  public static extern string EtherCATBus_DEFAULT_NETWORK_FIRMWARE_STATE_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_pdoIoEnabled_get___")]
  public static extern global::System.IntPtr EtherCATBus_pdoIoEnabled_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_PDO_IO_ENABLED_OPTION_NAME_get___")]
  public static extern string EtherCATBus_PDO_IO_ENABLED_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_DEFAULT_PDO_IO_ENABLED_get___")]
  public static extern string EtherCATBus_DEFAULT_PDO_IO_ENABLED_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr EtherCATBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_EtherCATBus_retryOptions_get___")]
  public static extern global::System.IntPtr EtherCATBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_EtherCATBus___")]
  public static extern global::System.IntPtr new_EtherCATBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_EtherCATBus___")]
  public static extern void delete_EtherCATBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_tcpTimeout_get___")]
  public static extern global::System.IntPtr ModbusTcpTimeoutOptions_tcpTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_TCP_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ModbusTcpTimeoutOptions_TCP_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_DEFAULT_TCP_TIMEOUT_get___")]
  public static extern uint ModbusTcpTimeoutOptions_DEFAULT_TCP_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_udpTimeout_get___")]
  public static extern global::System.IntPtr ModbusTcpTimeoutOptions_udpTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_UDP_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ModbusTcpTimeoutOptions_UDP_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpTimeoutOptions_DEFAULT_UDP_TIMEOUT_get___")]
  public static extern uint ModbusTcpTimeoutOptions_DEFAULT_UDP_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusTcpTimeoutOptions___")]
  public static extern global::System.IntPtr new_ModbusTcpTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusTcpTimeoutOptions___")]
  public static extern void delete_ModbusTcpTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpRetryOptions_tcpMaxRetries_get___")]
  public static extern global::System.IntPtr ModbusTcpRetryOptions_tcpMaxRetries_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpRetryOptions_TCP_MAX_RETRIES_OPTION_NAME_get___")]
  public static extern string ModbusTcpRetryOptions_TCP_MAX_RETRIES_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpRetryOptions_DEFAULT_TCP_MAX_RETRIES_get___")]
  public static extern uint ModbusTcpRetryOptions_DEFAULT_TCP_MAX_RETRIES_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusTcpRetryOptions___")]
  public static extern global::System.IntPtr new_ModbusTcpRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusTcpRetryOptions___")]
  public static extern void delete_ModbusTcpRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr ModbusTcpBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ModbusTcpBus_retryOptions_get___")]
  public static extern global::System.IntPtr ModbusTcpBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ModbusTcpBus___")]
  public static extern global::System.IntPtr new_ModbusTcpBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ModbusTcpBus___")]
  public static extern void delete_ModbusTcpBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_postDisconnectDelay_get___")]
  public static extern global::System.IntPtr UsbMscBusTimeoutOptions_postDisconnectDelay_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_POST_DISCONNECT_DELAY_OPTION_NAME_get___")]
  public static extern string UsbMscBusTimeoutOptions_POST_DISCONNECT_DELAY_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DEFAULT_POST_DISCONNECT_DELAY_get___")]
  public static extern uint UsbMscBusTimeoutOptions_DEFAULT_POST_DISCONNECT_DELAY_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_rebootWaitTimeout_get___")]
  public static extern global::System.IntPtr UsbMscBusTimeoutOptions_rebootWaitTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_REBOOT_WAIT_TIMEOUT_OPTION_NAME_get___")]
  public static extern string UsbMscBusTimeoutOptions_REBOOT_WAIT_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DEFAULT_REBOOT_WAIT_TIMEOUT_get___")]
  public static extern uint UsbMscBusTimeoutOptions_DEFAULT_REBOOT_WAIT_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_bootloaderWaitTimeout_get___")]
  public static extern global::System.IntPtr UsbMscBusTimeoutOptions_bootloaderWaitTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_BOOTLOADER_WAIT_TIMEOUT_OPTION_NAME_get___")]
  public static extern string UsbMscBusTimeoutOptions_BOOTLOADER_WAIT_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DEFAULT_BOOTLOADER_WAIT_TIMEOUT_get___")]
  public static extern uint UsbMscBusTimeoutOptions_DEFAULT_BOOTLOADER_WAIT_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_delayAfterCopy_get___")]
  public static extern global::System.IntPtr UsbMscBusTimeoutOptions_delayAfterCopy_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DELAY_AFTER_COPY_OPTION_NAME_get___")]
  public static extern string UsbMscBusTimeoutOptions_DELAY_AFTER_COPY_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DEFAULT_DELAY_AFTER_COPY_get___")]
  public static extern uint UsbMscBusTimeoutOptions_DEFAULT_DELAY_AFTER_COPY_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_writeCommandTimeout_get___")]
  public static extern global::System.IntPtr UsbMscBusTimeoutOptions_writeCommandTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_WRITE_COMMAND_TIMEOUT_OPTION_NAME_get___")]
  public static extern string UsbMscBusTimeoutOptions_WRITE_COMMAND_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBusTimeoutOptions_DEFAULT_WRITE_COMMAND_TIMEOUT_get___")]
  public static extern uint UsbMscBusTimeoutOptions_DEFAULT_WRITE_COMMAND_TIMEOUT_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_UsbMscBusTimeoutOptions___")]
  public static extern global::System.IntPtr new_UsbMscBusTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_UsbMscBusTimeoutOptions___")]
  public static extern void delete_UsbMscBusTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_UsbMscBusRetryOptions___")]
  public static extern global::System.IntPtr new_UsbMscBusRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_UsbMscBusRetryOptions___")]
  public static extern void delete_UsbMscBusRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr UsbMscBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_UsbMscBus_retryOptions_get___")]
  public static extern global::System.IntPtr UsbMscBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_UsbMscBus___")]
  public static extern global::System.IntPtr new_UsbMscBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_UsbMscBus___")]
  public static extern void delete_UsbMscBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_scanTimeout_get___")]
  public static extern global::System.IntPtr ProfinetDcpTimeoutOptions_scanTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_SCAN_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ProfinetDcpTimeoutOptions_SCAN_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_DEFAULT_SCAN_TIMEOUT_MSEC_get___")]
  public static extern uint ProfinetDcpTimeoutOptions_DEFAULT_SCAN_TIMEOUT_MSEC_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_responseTimeout_get___")]
  public static extern global::System.IntPtr ProfinetDcpTimeoutOptions_responseTimeout_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_RESPONSE_TIMEOUT_OPTION_NAME_get___")]
  public static extern string ProfinetDcpTimeoutOptions_RESPONSE_TIMEOUT_OPTION_NAME_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpTimeoutOptions_DEFAULT_RESPONSE_TIMEOUT_MSEC_get___")]
  public static extern uint ProfinetDcpTimeoutOptions_DEFAULT_RESPONSE_TIMEOUT_MSEC_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDcpTimeoutOptions___")]
  public static extern global::System.IntPtr new_ProfinetDcpTimeoutOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDcpTimeoutOptions___")]
  public static extern void delete_ProfinetDcpTimeoutOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDcpRetryOptions___")]
  public static extern global::System.IntPtr new_ProfinetDcpRetryOptions();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDcpRetryOptions___")]
  public static extern void delete_ProfinetDcpRetryOptions(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpBus_timeoutOptions_get___")]
  public static extern global::System.IntPtr ProfinetDcpBus_timeoutOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ProfinetDcpBus_retryOptions_get___")]
  public static extern global::System.IntPtr ProfinetDcpBus_retryOptions_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_ProfinetDcpBus___")]
  public static extern global::System.IntPtr new_ProfinetDcpBus();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_ProfinetDcpBus___")]
  public static extern void delete_ProfinetDcpBus(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_canBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_canBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_modbusSerialBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_modbusSerialBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_modbusTcpBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_modbusTcpBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_restfulBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_restfulBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_ethercatBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_ethercatBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_usbMscBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_usbMscBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_BusHwOptionsDefault_profinetDcpBus_get___")]
  public static extern global::System.IntPtr BusHwOptionsDefault_profinetDcpBus_get(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_new_BusHwOptionsDefault___")]
  public static extern global::System.IntPtr new_BusHwOptionsDefault();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_BusHwOptionsDefault___")]
  public static extern void delete_BusHwOptionsDefault(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_busHwOptionsDefaults_get___")]
  public static extern global::System.IntPtr busHwOptionsDefaults_get();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NanoLibAccessor___")]
  public static extern void delete_NanoLibAccessor(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_setLoggingLevel___")]
  public static extern void NanoLibAccessor_setLoggingLevel(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_setLoggingCallback___")]
  public static extern void NanoLibAccessor_setLoggingCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, int jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_unsetLoggingCallback___")]
  public static extern void NanoLibAccessor_unsetLoggingCallback(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_listAvailableBusHardware___")]
  public static extern global::System.IntPtr NanoLibAccessor_listAvailableBusHardware(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_openBusHardwareWithProtocol___")]
  public static extern global::System.IntPtr NanoLibAccessor_openBusHardwareWithProtocol(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_closeBusHardware___")]
  public static extern global::System.IntPtr NanoLibAccessor_closeBusHardware(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_setBusState___")]
  public static extern global::System.IntPtr NanoLibAccessor_setBusState(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_addDevice___")]
  public static extern global::System.IntPtr NanoLibAccessor_addDevice(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_removeDevice___")]
  public static extern global::System.IntPtr NanoLibAccessor_removeDevice(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceId___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceId(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceIds___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceIds(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_connectDevice___")]
  public static extern global::System.IntPtr NanoLibAccessor_connectDevice(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_disconnectDevice___")]
  public static extern global::System.IntPtr NanoLibAccessor_disconnectDevice(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_rebootDevice___")]
  public static extern global::System.IntPtr NanoLibAccessor_rebootDevice(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceVendorId___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceVendorId(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceProductCode___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceProductCode(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceName___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceName(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceHardwareVersion___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceHardwareVersion(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceFirmwareBuildId___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceFirmwareBuildId(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceBootloaderBuildId___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceBootloaderBuildId(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceSerialNumber___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceSerialNumber(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceUid___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceUid(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceBootloaderVersion___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceBootloaderVersion(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceHardwareGroup___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceHardwareGroup(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getConnectionState___")]
  public static extern global::System.IntPtr NanoLibAccessor_getConnectionState(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_checkConnectionState___")]
  public static extern global::System.IntPtr NanoLibAccessor_checkConnectionState(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getDeviceState___")]
  public static extern global::System.IntPtr NanoLibAccessor_getDeviceState(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_setDeviceState___")]
  public static extern global::System.IntPtr NanoLibAccessor_setDeviceState(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_scanDevices___")]
  public static extern global::System.IntPtr NanoLibAccessor_scanDevices(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getProtocolSpecificAccessor___")]
  public static extern global::System.IntPtr NanoLibAccessor_getProtocolSpecificAccessor(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_isBusHardwareOpen___")]
  public static extern bool NanoLibAccessor_isBusHardwareOpen(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_readNumber___")]
  public static extern global::System.IntPtr NanoLibAccessor_readNumber(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2,  Nlc.OdIndex  jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_readString___")]
  public static extern global::System.IntPtr NanoLibAccessor_readString(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2,  Nlc.OdIndex  jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_readBytes___")]
  public static extern global::System.IntPtr NanoLibAccessor_readBytes(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2,  Nlc.OdIndex  jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_writeNumber___")]
  public static extern global::System.IntPtr NanoLibAccessor_writeNumber(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, long jarg3,  Nlc.OdIndex  jarg4, uint jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_writeBytes___")]
  public static extern global::System.IntPtr NanoLibAccessor_writeBytes(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3,  Nlc.OdIndex  jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_readNumberArray___")]
  public static extern global::System.IntPtr NanoLibAccessor_readNumberArray(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, ushort jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadFirmwareFromFile___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadFirmwareFromFile(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadFirmware___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadFirmware(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadBootloaderFromFile___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadBootloaderFromFile(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadBootloader___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadBootloader(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadBootloaderFirmwareFromFile___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadBootloaderFirmwareFromFile(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3, string jarg4, global::System.Runtime.InteropServices.HandleRef jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadBootloaderFirmware___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadBootloaderFirmware(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4, global::System.Runtime.InteropServices.HandleRef jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadNanoJFromFile___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadNanoJFromFile(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_uploadNanoJ___")]
  public static extern global::System.IntPtr NanoLibAccessor_uploadNanoJ(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, global::System.Runtime.InteropServices.HandleRef jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getObjectDictionaryLibrary___")]
  public static extern global::System.IntPtr NanoLibAccessor_getObjectDictionaryLibrary(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_assignObjectDictionary___")]
  public static extern global::System.IntPtr NanoLibAccessor_assignObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_autoAssignObjectDictionary___")]
  public static extern global::System.IntPtr NanoLibAccessor_autoAssignObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, string jarg3);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getAssignedObjectDictionary___")]
  public static extern global::System.IntPtr NanoLibAccessor_getAssignedObjectDictionary(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getProfinetDCP___")]
  public static extern global::System.IntPtr NanoLibAccessor_getProfinetDCP(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessor_getSamplerInterface___")]
  public static extern global::System.IntPtr NanoLibAccessor_getSamplerInterface(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessorEx_activateBootloader___")]
  public static extern global::System.IntPtr NanoLibAccessorEx_activateBootloader(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessorEx_sendBootloaderCmdWithoutResponse___")]
  public static extern global::System.IntPtr NanoLibAccessorEx_sendBootloaderCmdWithoutResponse(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, uint jarg4, bool jarg5);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessorEx_sendBootloaderCmd___")]
  public static extern global::System.IntPtr NanoLibAccessorEx_sendBootloaderCmd(global::System.Runtime.InteropServices.HandleRef jarg1,  Nlc.DeviceHandle  jarg2, global::System.Runtime.InteropServices.HandleRef jarg3, uint jarg4);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_delete_NanoLibAccessorEx___")]
  public static extern void delete_NanoLibAccessorEx(global::System.Runtime.InteropServices.HandleRef jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_getNanoLibAccessor___")]
  public static extern global::System.IntPtr getNanoLibAccessor();

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultVoid_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultVoid_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultInt_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultInt_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultString_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultString_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultArrayInt_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultArrayInt_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultArrayByte_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultArrayByte_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultBusHwIds_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultBusHwIds_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceId_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultDeviceId_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceIds_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultDeviceIds_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultDeviceHandle_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultDeviceHandle_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultConnectionState_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultConnectionState_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectEntry_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultObjectEntry_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectSubEntry_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultObjectSubEntry_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultObjectDictionary_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultObjectDictionary_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultProfinetDevices_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultProfinetDevices_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultSamplerState_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultSamplerState_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_ResultSampleDataArray_SWIGUpcast___")]
  public static extern global::System.IntPtr ResultSampleDataArray_SWIGUpcast(global::System.IntPtr jarg1);

  [global::System.Runtime.InteropServices.DllImport("nanolib_csharp", EntryPoint="CSharp__Nlc_NanoLibAccessorEx_SWIGUpcast___")]
  public static extern global::System.IntPtr NanoLibAccessorEx_SWIGUpcast(global::System.IntPtr jarg1);
}

}
