/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3.35
 * 
 * This file is not intended to be easily readable and contains a number of 
 * coding conventions designed to improve portability and efficiency. Do not make
 * changes to this file unless you know what you are doing--modify the SWIG 
 * interface file instead. 
 * ----------------------------------------------------------------------------- */


#ifdef __cplusplus
template<typename T> class SwigValueWrapper {
    T *tt;
public:
    SwigValueWrapper() : tt(0) { }
    SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
    SwigValueWrapper(const T& t) : tt(new T(t)) { }
    ~SwigValueWrapper() { delete tt; } 
    SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
    operator T&() const { return *tt; }
    T *operator&() { return tt; }
private:
    SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
};

template <typename T> T SwigValueInit() {
  return T();
}
#endif

/* -----------------------------------------------------------------------------
 *  This section contains generic SWIG labels for method/variable
 *  declarations/attributes, and other compiler dependent labels.
 * ----------------------------------------------------------------------------- */

/* template workaround for compilers that cannot correctly implement the C++ standard */
#ifndef SWIGTEMPLATEDISAMBIGUATOR
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
#  define SWIGTEMPLATEDISAMBIGUATOR template
# elif defined(__HP_aCC)
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
#  define SWIGTEMPLATEDISAMBIGUATOR template
# else
#  define SWIGTEMPLATEDISAMBIGUATOR
# endif
#endif

/* inline attribute */
#ifndef SWIGINLINE
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
#   define SWIGINLINE inline
# else
#   define SWIGINLINE
# endif
#endif

/* attribute recognised by some compilers to avoid 'unused' warnings */
#ifndef SWIGUNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define SWIGUNUSED __attribute__ ((__unused__)) 
#   else
#     define SWIGUNUSED
#   endif
# elif defined(__ICC)
#   define SWIGUNUSED __attribute__ ((__unused__)) 
# else
#   define SWIGUNUSED 
# endif
#endif

#ifndef SWIGUNUSEDPARM
# ifdef __cplusplus
#   define SWIGUNUSEDPARM(p)
# else
#   define SWIGUNUSEDPARM(p) p SWIGUNUSED 
# endif
#endif

/* internal SWIG method */
#ifndef SWIGINTERN
# define SWIGINTERN static SWIGUNUSED
#endif

/* internal inline SWIG method */
#ifndef SWIGINTERNINLINE
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
#endif

/* exporting methods */
#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
#  ifndef GCC_HASCLASSVISIBILITY
#    define GCC_HASCLASSVISIBILITY
#  endif
#endif

#ifndef SWIGEXPORT
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   if defined(STATIC_LINKED)
#     define SWIGEXPORT
#   else
#     define SWIGEXPORT __declspec(dllexport)
#   endif
# else
#   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
#     define SWIGEXPORT __attribute__ ((visibility("default")))
#   else
#     define SWIGEXPORT
#   endif
# endif
#endif

/* calling conventions for Windows */
#ifndef SWIGSTDCALL
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
#   define SWIGSTDCALL __stdcall
# else
#   define SWIGSTDCALL
# endif 
#endif

/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
# define _CRT_SECURE_NO_DEPRECATE
#endif

/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
# define _SCL_SECURE_NO_DEPRECATE
#endif



#include <stdlib.h>
#include <string.h>
#include <stdio.h>


/* Support for throwing C# exceptions from C/C++. There are two types: 
 * Exceptions that take a message and ArgumentExceptions that take a message and a parameter name. */
typedef enum {
  SWIG_CSharpApplicationException,
  SWIG_CSharpArithmeticException,
  SWIG_CSharpDivideByZeroException,
  SWIG_CSharpIndexOutOfRangeException,
  SWIG_CSharpInvalidCastException,
  SWIG_CSharpInvalidOperationException,
  SWIG_CSharpIOException,
  SWIG_CSharpNullReferenceException,
  SWIG_CSharpOutOfMemoryException,
  SWIG_CSharpOverflowException,
  SWIG_CSharpSystemException
} SWIG_CSharpExceptionCodes;

typedef enum {
  SWIG_CSharpArgumentException,
  SWIG_CSharpArgumentNullException,
  SWIG_CSharpArgumentOutOfRangeException
} SWIG_CSharpExceptionArgumentCodes;

typedef void (SWIGSTDCALL* SWIG_CSharpExceptionCallback_t)(const char *);
typedef void (SWIGSTDCALL* SWIG_CSharpExceptionArgumentCallback_t)(const char *, const char *);

typedef struct {
  SWIG_CSharpExceptionCodes code;
  SWIG_CSharpExceptionCallback_t callback;
} SWIG_CSharpException_t;

typedef struct {
  SWIG_CSharpExceptionArgumentCodes code;
  SWIG_CSharpExceptionArgumentCallback_t callback;
} SWIG_CSharpExceptionArgument_t;

static SWIG_CSharpException_t SWIG_csharp_exceptions[] = {
  { SWIG_CSharpApplicationException, NULL },
  { SWIG_CSharpArithmeticException, NULL },
  { SWIG_CSharpDivideByZeroException, NULL },
  { SWIG_CSharpIndexOutOfRangeException, NULL },
  { SWIG_CSharpInvalidCastException, NULL },
  { SWIG_CSharpInvalidOperationException, NULL },
  { SWIG_CSharpIOException, NULL },
  { SWIG_CSharpNullReferenceException, NULL },
  { SWIG_CSharpOutOfMemoryException, NULL },
  { SWIG_CSharpOverflowException, NULL },
  { SWIG_CSharpSystemException, NULL }
};

static SWIG_CSharpExceptionArgument_t SWIG_csharp_exceptions_argument[] = {
  { SWIG_CSharpArgumentException, NULL },
  { SWIG_CSharpArgumentNullException, NULL },
  { SWIG_CSharpArgumentOutOfRangeException, NULL },
};

static void SWIGUNUSED SWIG_CSharpSetPendingException(SWIG_CSharpExceptionCodes code, const char *msg) {
  SWIG_CSharpExceptionCallback_t callback = SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback;
  if (code >=0 && (size_t)code < sizeof(SWIG_csharp_exceptions)/sizeof(SWIG_CSharpException_t)) {
    callback = SWIG_csharp_exceptions[code].callback;
  }
  callback(msg);
}

static void SWIGUNUSED SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpExceptionArgumentCodes code, const char *msg, const char *param_name) {
  SWIG_CSharpExceptionArgumentCallback_t callback = SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback;
  if (code >=0 && (size_t)code < sizeof(SWIG_csharp_exceptions_argument)/sizeof(SWIG_CSharpExceptionArgument_t)) {
    callback = SWIG_csharp_exceptions_argument[code].callback;
  }
  callback(msg, param_name);
}


#ifdef __cplusplus
extern "C" 
#endif
SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionCallbacks_pteidlib_dotNet(
                                                SWIG_CSharpExceptionCallback_t applicationCallback,
                                                SWIG_CSharpExceptionCallback_t arithmeticCallback,
                                                SWIG_CSharpExceptionCallback_t divideByZeroCallback, 
                                                SWIG_CSharpExceptionCallback_t indexOutOfRangeCallback, 
                                                SWIG_CSharpExceptionCallback_t invalidCastCallback,
                                                SWIG_CSharpExceptionCallback_t invalidOperationCallback,
                                                SWIG_CSharpExceptionCallback_t ioCallback,
                                                SWIG_CSharpExceptionCallback_t nullReferenceCallback,
                                                SWIG_CSharpExceptionCallback_t outOfMemoryCallback, 
                                                SWIG_CSharpExceptionCallback_t overflowCallback, 
                                                SWIG_CSharpExceptionCallback_t systemCallback) {
  SWIG_csharp_exceptions[SWIG_CSharpApplicationException].callback = applicationCallback;
  SWIG_csharp_exceptions[SWIG_CSharpArithmeticException].callback = arithmeticCallback;
  SWIG_csharp_exceptions[SWIG_CSharpDivideByZeroException].callback = divideByZeroCallback;
  SWIG_csharp_exceptions[SWIG_CSharpIndexOutOfRangeException].callback = indexOutOfRangeCallback;
  SWIG_csharp_exceptions[SWIG_CSharpInvalidCastException].callback = invalidCastCallback;
  SWIG_csharp_exceptions[SWIG_CSharpInvalidOperationException].callback = invalidOperationCallback;
  SWIG_csharp_exceptions[SWIG_CSharpIOException].callback = ioCallback;
  SWIG_csharp_exceptions[SWIG_CSharpNullReferenceException].callback = nullReferenceCallback;
  SWIG_csharp_exceptions[SWIG_CSharpOutOfMemoryException].callback = outOfMemoryCallback;
  SWIG_csharp_exceptions[SWIG_CSharpOverflowException].callback = overflowCallback;
  SWIG_csharp_exceptions[SWIG_CSharpSystemException].callback = systemCallback;
}

#ifdef __cplusplus
extern "C" 
#endif
SWIGEXPORT void SWIGSTDCALL SWIGRegisterExceptionArgumentCallbacks_pteidlib_dotNet(
                                                SWIG_CSharpExceptionArgumentCallback_t argumentCallback,
                                                SWIG_CSharpExceptionArgumentCallback_t argumentNullCallback,
                                                SWIG_CSharpExceptionArgumentCallback_t argumentOutOfRangeCallback) {
  SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentException].callback = argumentCallback;
  SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentNullException].callback = argumentNullCallback;
  SWIG_csharp_exceptions_argument[SWIG_CSharpArgumentOutOfRangeException].callback = argumentOutOfRangeCallback;
}


/* Callback for returning strings to C# without leaking memory */
typedef char * (SWIGSTDCALL* SWIG_CSharpStringHelperCallback)(const char *);
static SWIG_CSharpStringHelperCallback SWIG_csharp_string_callback = NULL;


#ifdef __cplusplus
extern "C" 
#endif
SWIGEXPORT void SWIGSTDCALL SWIGRegisterStringCallback_pteidlib_dotNet(SWIG_CSharpStringHelperCallback callback) {
  SWIG_csharp_string_callback = callback;
}


/* Contract support */

#define SWIG_contract_assert(nullreturn, expr, msg) if (!(expr)) {SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentOutOfRangeException, msg, ""); return nullreturn; } else


#include "eidlib.h"
#include "eidlibException.h"


	// Code to handle throwing of C# CustomApplicationException from C/C++ code.
	// The equivalent delegate to the callback, CSharpExceptionCallback_t, is CustomExceptionDelegate
	// and the equivalent customExceptionCallback instance is customDelegate
	typedef void (SWIGSTDCALL* CSharpExceptionCallback_t)(long);
	CSharpExceptionCallback_t customExceptionCallback = NULL;

	extern "C" SWIGEXPORT
	void SWIGSTDCALL CustomExceptionRegisterCallback(CSharpExceptionCallback_t customCallback) 
	{
		customExceptionCallback = customCallback;
	}

	// Note that SWIG detects any method calls named starting with
	// SWIG_CSharpSetPendingException for warning 845
	static void SWIG_CSharpSetPendingExceptionCustom(long code) 
	{
		customExceptionCallback(code);
	}


typedef void * (SWIGSTDCALL* CUSTOM_CSharpStringArrayHelperCallback)(void *, long);
static CUSTOM_CSharpStringArrayHelperCallback CUSTOM_CSharpStringArrayCallback = NULL;

extern "C" SWIGEXPORT
void SWIGSTDCALL CUSTOM_RegisterStringArrayCallback(CUSTOM_CSharpStringArrayHelperCallback callback) 
{
  CUSTOM_CSharpStringArrayCallback = callback;
}


typedef void (SWIGSTDCALL* CUSTOM_CSharpSetEventHelperCallback)(long, unsigned long, void *);
static CUSTOM_CSharpSetEventHelperCallback CUSTOM_CSharpSetEventCallback = NULL;

extern "C" SWIGEXPORT
void SWIGSTDCALL CUSTOM_RegisterSetEventCallback(CUSTOM_CSharpSetEventHelperCallback callback) 
{
  CUSTOM_CSharpSetEventCallback = callback;
}

//This is the function registered to the lower level callback for every SetEventCallback
void SetEventCallback_WrapperCpp(long lRet, unsigned long ulState, void *pvRef)
{
	//The goal is just to call the SetEventCallback_WrapperCSharp with the correct parameter
	CUSTOM_CSharpSetEventCallback(lRet,ulState,pvRef);
}


#ifdef __cplusplus
extern "C" {
#endif

SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_OK_get() {
  int jresult ;
  int result;
  
  result = (int) 0;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PARAM_BAD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00100;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PARAM_RANGE_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00101;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_BAD_PATH_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00102;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_ALGO_BAD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00103;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PIN_OPERATION_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00104;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PIN_FORMAT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00105;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_BAD_USAGE_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00106;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00200;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NOT_AUTHENTICATED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00201;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NOT_SUPPORTED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00202;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PIN_BAD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00203;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PIN_BLOCKED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00204;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NO_CARD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00205;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_BAD_P1P2_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00206;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CMD_NOT_ALLOWED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00207;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_FILE_NOT_FOUND_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00208;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_APPLET_VERSION_NOT_FOUND_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00209;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NOT_ACTIVATED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d0020A;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARD_COMM_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00300;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NO_READER_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00301;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PINPAD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00302;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CANT_CONNECT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00303;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARD_RESET_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00304;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARD_SHARING_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00305;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NOT_TRANSACTED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00306;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_LIMIT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00400;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CHECK_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00401;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PCSC_LIB_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00402;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_ZLIB_RESOLVE_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00403;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_UNKNOWN_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00404;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_PINPAD_ERR_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00405;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_CANT_LOAD_LIB_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00406;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_MEMORY_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00407;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_DELETE_CACHE_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00408;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_CONF_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00409;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_CACHE_TAMPERED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d0040A;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_CREATE_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00500;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_SEND_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00501;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_RECV_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00502;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_GETHOST_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00503;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_CONNECT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00504;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_SOCKET_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00510;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_BIND_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00511;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SOCKET_ACCEPT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00512;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_PIN_CANCEL_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00600;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_TIMEOUT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00601;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_NEW_PINS_DIFFER_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00602;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_WRONG_PIN_FORMAT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00603;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_WRONG_ASN1_FORMAT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00700;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_FILE_NOT_OPENED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00800;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_PERMISSION_DENIED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00801;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_INVALID_PATH_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00802;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_TOO_MANY_OPENED_FILES_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00803;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_DIR_NOT_OPENED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00804;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_INTERRUPTION_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00805;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_OVERFLOW_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00806;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERROR_IO_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00807;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_LOGGER_APPLEAVING_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00900;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_DOCTYPE_UNKNOWN_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b00;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARDTYPE_BAD_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b01;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARDTYPE_UNKNOWN_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b02;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CERT_NOISSUER_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b03;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_RELEASE_NEEDED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b04;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_BAD_TRANSACTION_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b05;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_FILETYPE_UNKNOWN_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b06;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CARD_CHANGED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b07;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_READERSET_CHANGED_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b08;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_NOT_ALLOW_BY_USER_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b09;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CERT_NOCRL_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b0A;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CERT_NOOCSP_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b0B;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_CERT_NOROOT_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b0C;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_USER_MUST_ANSWER_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00b0D;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SYSTEM_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00c01;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_EIDMW_ERR_SIGNAL_get() {
  int jresult ;
  int result;
  
  result = (int) 0xe1d00c02;
  
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Exception(long jarg1) {
  void * jresult ;
  long arg1 ;
  eIDMW::PTEID_Exception *result = 0 ;
  
  arg1 = (long)jarg1; 
  result = (eIDMW::PTEID_Exception *)new eIDMW::PTEID_Exception(arg1);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Exception(void * jarg1) {
  eIDMW::PTEID_Exception *arg1 = (eIDMW::PTEID_Exception *) 0 ;
  
  arg1 = (eIDMW::PTEID_Exception *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_Exception_GetError(void * jarg1) {
  long jresult ;
  eIDMW::PTEID_Exception *arg1 = (eIDMW::PTEID_Exception *) 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_Exception *)jarg1; 
  result = (long)((eIDMW::PTEID_Exception const *)arg1)->GetError();
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExReleaseNeeded() {
  void * jresult ;
  eIDMW::PTEID_ExReleaseNeeded *result = 0 ;
  
  result = (eIDMW::PTEID_ExReleaseNeeded *)new eIDMW::PTEID_ExReleaseNeeded();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExReleaseNeeded(void * jarg1) {
  eIDMW::PTEID_ExReleaseNeeded *arg1 = (eIDMW::PTEID_ExReleaseNeeded *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExReleaseNeeded *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExUnknown() {
  void * jresult ;
  eIDMW::PTEID_ExUnknown *result = 0 ;
  
  result = (eIDMW::PTEID_ExUnknown *)new eIDMW::PTEID_ExUnknown();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExUnknown(void * jarg1) {
  eIDMW::PTEID_ExUnknown *arg1 = (eIDMW::PTEID_ExUnknown *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExUnknown *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExDocTypeUnknown() {
  void * jresult ;
  eIDMW::PTEID_ExDocTypeUnknown *result = 0 ;
  
  result = (eIDMW::PTEID_ExDocTypeUnknown *)new eIDMW::PTEID_ExDocTypeUnknown();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExDocTypeUnknown(void * jarg1) {
  eIDMW::PTEID_ExDocTypeUnknown *arg1 = (eIDMW::PTEID_ExDocTypeUnknown *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExDocTypeUnknown *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExFileTypeUnknown() {
  void * jresult ;
  eIDMW::PTEID_ExFileTypeUnknown *result = 0 ;
  
  result = (eIDMW::PTEID_ExFileTypeUnknown *)new eIDMW::PTEID_ExFileTypeUnknown();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExFileTypeUnknown(void * jarg1) {
  eIDMW::PTEID_ExFileTypeUnknown *arg1 = (eIDMW::PTEID_ExFileTypeUnknown *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExFileTypeUnknown *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExParamRange() {
  void * jresult ;
  eIDMW::PTEID_ExParamRange *result = 0 ;
  
  result = (eIDMW::PTEID_ExParamRange *)new eIDMW::PTEID_ExParamRange();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExParamRange(void * jarg1) {
  eIDMW::PTEID_ExParamRange *arg1 = (eIDMW::PTEID_ExParamRange *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExParamRange *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCmdNotAllowed() {
  void * jresult ;
  eIDMW::PTEID_ExCmdNotAllowed *result = 0 ;
  
  result = (eIDMW::PTEID_ExCmdNotAllowed *)new eIDMW::PTEID_ExCmdNotAllowed();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCmdNotAllowed(void * jarg1) {
  eIDMW::PTEID_ExCmdNotAllowed *arg1 = (eIDMW::PTEID_ExCmdNotAllowed *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCmdNotAllowed *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCmdNotSupported() {
  void * jresult ;
  eIDMW::PTEID_ExCmdNotSupported *result = 0 ;
  
  result = (eIDMW::PTEID_ExCmdNotSupported *)new eIDMW::PTEID_ExCmdNotSupported();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCmdNotSupported(void * jarg1) {
  eIDMW::PTEID_ExCmdNotSupported *arg1 = (eIDMW::PTEID_ExCmdNotSupported *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCmdNotSupported *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExNoCardPresent() {
  void * jresult ;
  eIDMW::PTEID_ExNoCardPresent *result = 0 ;
  
  result = (eIDMW::PTEID_ExNoCardPresent *)new eIDMW::PTEID_ExNoCardPresent();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExNoCardPresent(void * jarg1) {
  eIDMW::PTEID_ExNoCardPresent *arg1 = (eIDMW::PTEID_ExNoCardPresent *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExNoCardPresent *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCardBadType() {
  void * jresult ;
  eIDMW::PTEID_ExCardBadType *result = 0 ;
  
  result = (eIDMW::PTEID_ExCardBadType *)new eIDMW::PTEID_ExCardBadType();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCardBadType(void * jarg1) {
  eIDMW::PTEID_ExCardBadType *arg1 = (eIDMW::PTEID_ExCardBadType *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCardBadType *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCardTypeUnknown() {
  void * jresult ;
  eIDMW::PTEID_ExCardTypeUnknown *result = 0 ;
  
  result = (eIDMW::PTEID_ExCardTypeUnknown *)new eIDMW::PTEID_ExCardTypeUnknown();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCardTypeUnknown(void * jarg1) {
  eIDMW::PTEID_ExCardTypeUnknown *arg1 = (eIDMW::PTEID_ExCardTypeUnknown *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCardTypeUnknown *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCertNoIssuer() {
  void * jresult ;
  eIDMW::PTEID_ExCertNoIssuer *result = 0 ;
  
  result = (eIDMW::PTEID_ExCertNoIssuer *)new eIDMW::PTEID_ExCertNoIssuer();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCertNoIssuer(void * jarg1) {
  eIDMW::PTEID_ExCertNoIssuer *arg1 = (eIDMW::PTEID_ExCertNoIssuer *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCertNoIssuer *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCertNoCrl() {
  void * jresult ;
  eIDMW::PTEID_ExCertNoCrl *result = 0 ;
  
  result = (eIDMW::PTEID_ExCertNoCrl *)new eIDMW::PTEID_ExCertNoCrl();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCertNoCrl(void * jarg1) {
  eIDMW::PTEID_ExCertNoCrl *arg1 = (eIDMW::PTEID_ExCertNoCrl *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCertNoCrl *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCertNoOcsp() {
  void * jresult ;
  eIDMW::PTEID_ExCertNoOcsp *result = 0 ;
  
  result = (eIDMW::PTEID_ExCertNoOcsp *)new eIDMW::PTEID_ExCertNoOcsp();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCertNoOcsp(void * jarg1) {
  eIDMW::PTEID_ExCertNoOcsp *arg1 = (eIDMW::PTEID_ExCertNoOcsp *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCertNoOcsp *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCertNoRoot() {
  void * jresult ;
  eIDMW::PTEID_ExCertNoRoot *result = 0 ;
  
  result = (eIDMW::PTEID_ExCertNoRoot *)new eIDMW::PTEID_ExCertNoRoot();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCertNoRoot(void * jarg1) {
  eIDMW::PTEID_ExCertNoRoot *arg1 = (eIDMW::PTEID_ExCertNoRoot *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCertNoRoot *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExBadUsage() {
  void * jresult ;
  eIDMW::PTEID_ExBadUsage *result = 0 ;
  
  result = (eIDMW::PTEID_ExBadUsage *)new eIDMW::PTEID_ExBadUsage();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExBadUsage(void * jarg1) {
  eIDMW::PTEID_ExBadUsage *arg1 = (eIDMW::PTEID_ExBadUsage *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExBadUsage *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExBadTransaction() {
  void * jresult ;
  eIDMW::PTEID_ExBadTransaction *result = 0 ;
  
  result = (eIDMW::PTEID_ExBadTransaction *)new eIDMW::PTEID_ExBadTransaction();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExBadTransaction(void * jarg1) {
  eIDMW::PTEID_ExBadTransaction *arg1 = (eIDMW::PTEID_ExBadTransaction *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExBadTransaction *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExCardChanged() {
  void * jresult ;
  eIDMW::PTEID_ExCardChanged *result = 0 ;
  
  result = (eIDMW::PTEID_ExCardChanged *)new eIDMW::PTEID_ExCardChanged();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExCardChanged(void * jarg1) {
  eIDMW::PTEID_ExCardChanged *arg1 = (eIDMW::PTEID_ExCardChanged *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExCardChanged *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExReaderSetChanged() {
  void * jresult ;
  eIDMW::PTEID_ExReaderSetChanged *result = 0 ;
  
  result = (eIDMW::PTEID_ExReaderSetChanged *)new eIDMW::PTEID_ExReaderSetChanged();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExReaderSetChanged(void * jarg1) {
  eIDMW::PTEID_ExReaderSetChanged *arg1 = (eIDMW::PTEID_ExReaderSetChanged *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExReaderSetChanged *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExNoReader() {
  void * jresult ;
  eIDMW::PTEID_ExNoReader *result = 0 ;
  
  result = (eIDMW::PTEID_ExNoReader *)new eIDMW::PTEID_ExNoReader();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExNoReader(void * jarg1) {
  eIDMW::PTEID_ExNoReader *arg1 = (eIDMW::PTEID_ExNoReader *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExNoReader *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExNotAllowByUser() {
  void * jresult ;
  eIDMW::PTEID_ExNotAllowByUser *result = 0 ;
  
  result = (eIDMW::PTEID_ExNotAllowByUser *)new eIDMW::PTEID_ExNotAllowByUser();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExNotAllowByUser(void * jarg1) {
  eIDMW::PTEID_ExNotAllowByUser *arg1 = (eIDMW::PTEID_ExNotAllowByUser *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExNotAllowByUser *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ExUserMustAnswer() {
  void * jresult ;
  eIDMW::PTEID_ExUserMustAnswer *result = 0 ;
  
  result = (eIDMW::PTEID_ExUserMustAnswer *)new eIDMW::PTEID_ExUserMustAnswer();
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ExUserMustAnswer(void * jarg1) {
  eIDMW::PTEID_ExUserMustAnswer *arg1 = (eIDMW::PTEID_ExUserMustAnswer *) 0 ;
  
  arg1 = (eIDMW::PTEID_ExUserMustAnswer *)jarg1; 
  delete arg1;
  
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Object(void * jarg1) {
  eIDMW::PTEID_Object *arg1 = (eIDMW::PTEID_Object *) 0 ;
  
  arg1 = (eIDMW::PTEID_Object *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ByteArray__SWIG_0() {
  void * jresult ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  {
    try 
    {
      result = (eIDMW::PTEID_ByteArray *)new eIDMW::PTEID_ByteArray();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ByteArray__SWIG_1(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ByteArray *arg1 = 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1;
  if(!arg1) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_ByteArray *)new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray const &)*arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ByteArray__SWIG_2(unsigned char * jarg1, unsigned long jarg2) {
  void * jresult ;
  unsigned char *arg1 = (unsigned char *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      result = (eIDMW::PTEID_ByteArray *)new eIDMW::PTEID_ByteArray((unsigned char const *)arg1,arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ByteArray(void * jarg1) {
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ByteArray_Append__SWIG_0(void * jarg1, unsigned char * jarg2, unsigned long jarg3) {
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  unsigned char *arg2 = (unsigned char *) 0 ;
  unsigned long arg3 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  arg2 = jarg2; 
  arg3 = (unsigned long)jarg3; 
  {
    try 
    {
      (arg1)->Append((unsigned char const *)arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ByteArray_Append__SWIG_1(void * jarg1, void * jarg2) {
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return ;
  } 
  {
    try 
    {
      (arg1)->Append((eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ByteArray_Clear(void * jarg1) {
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  {
    try 
    {
      (arg1)->Clear();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ByteArray_Equals(void * jarg1, void * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)((eIDMW::PTEID_ByteArray const *)arg1)->Equals((eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_ByteArray_Size(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  {
    try 
    {
      result = (unsigned long)((eIDMW::PTEID_ByteArray const *)arg1)->Size();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned char * SWIGSTDCALL CSharp_PTEID_ByteArray_GetBytes(void * jarg1) {
  unsigned char * jresult ;
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  unsigned char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  {
    try 
    {
      result = (unsigned char *)((eIDMW::PTEID_ByteArray const *)arg1)->GetBytes();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ByteArray_writeToFile(void * jarg1, char * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (bool)(arg1)->writeToFile((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ByteArray_assign(void * jarg1, void * jarg2) {
  void * jresult ;
  eIDMW::PTEID_ByteArray *arg1 = (eIDMW::PTEID_ByteArray *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ByteArray *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray &_result_ref = (arg1)->operator =((eIDMW::PTEID_ByteArray const &)*arg2);
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_idData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->idData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_idData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->idData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_idSigData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->idSigData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_idSigData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->idSigData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_addrData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->addrData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_addrData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->addrData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_addrSigData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->addrSigData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_addrSigData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->addrSigData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_pictureData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->pictureData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_pictureData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->pictureData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_cardData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->cardData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_cardData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->cardData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_tokenInfo_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->tokenInfo = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_tokenInfo_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->tokenInfo);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_certRN_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->certRN = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_certRN_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->certRN);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_challenge_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->challenge = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_challenge_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->challenge);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Eid_response_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->response = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Eid_response_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->response);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_RawData_Eid() {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *result = 0 ;
  
  {
    try 
    {
      result = (eIDMW::PTEID_RawData_Eid *)new eIDMW::PTEID_RawData_Eid();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_RawData_Eid(void * jarg1) {
  eIDMW::PTEID_RawData_Eid *arg1 = (eIDMW::PTEID_RawData_Eid *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_RawData_Sis_idData_set(void * jarg1, void * jarg2) {
  eIDMW::PTEID_RawData_Sis *arg1 = (eIDMW::PTEID_RawData_Sis *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = (eIDMW::PTEID_ByteArray *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Sis *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2; 
  if (arg1) (arg1)->idData = *arg2;
  
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_RawData_Sis_idData_get(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Sis *arg1 = (eIDMW::PTEID_RawData_Sis *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Sis *)jarg1; 
  result = (eIDMW::PTEID_ByteArray *)& ((arg1)->idData);
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_RawData_Sis() {
  void * jresult ;
  eIDMW::PTEID_RawData_Sis *result = 0 ;
  
  {
    try 
    {
      result = (eIDMW::PTEID_RawData_Sis *)new eIDMW::PTEID_RawData_Sis();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_RawData_Sis(void * jarg1) {
  eIDMW::PTEID_RawData_Sis *arg1 = (eIDMW::PTEID_RawData_Sis *) 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Sis *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_instance() {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *result = 0 ;
  
  {
    try 
    {
      {
        eIDMW::PTEID_ReaderSet &_result_ref = eIDMW::PTEID_ReaderSet::instance();
        result = (eIDMW::PTEID_ReaderSet *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderSet_initSDK__SWIG_0(unsigned int jarg1) {
  bool arg1 ;
  
  arg1 = jarg1 ? true : false; 
  {
    try 
    {
      eIDMW::PTEID_ReaderSet::initSDK(arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderSet_initSDK__SWIG_1() {
  {
    try 
    {
      eIDMW::PTEID_ReaderSet::initSDK();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderSet_releaseSDK() {
  {
    try 
    {
      eIDMW::PTEID_ReaderSet::releaseSDK();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ReaderSet(void * jarg1) {
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderSet_releaseReaders__SWIG_0(void * jarg1, unsigned int jarg2) {
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  bool arg2 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      (arg1)->releaseReaders(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderSet_releaseReaders__SWIG_1(void * jarg1) {
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      (arg1)->releaseReaders();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ReaderSet_isReadersChanged(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      result = (bool)((eIDMW::PTEID_ReaderSet const *)arg1)->isReadersChanged();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_readerList__SWIG_0(void * jarg1, unsigned int jarg2) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  bool arg2 ;
  char **result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      result = (char **)(arg1)->readerList(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  {
    long size=0;
    for(char **p=result;*p!=NULL;p++)
    size++;
    
    jresult = CUSTOM_CSharpStringArrayCallback((void *)result, size); 
  }
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_readerList__SWIG_1(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  char **result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      result = (char **)(arg1)->readerList();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  {
    long size=0;
    for(char **p=result;*p!=NULL;p++)
    size++;
    
    jresult = CUSTOM_CSharpStringArrayCallback((void *)result, size); 
  }
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_getReader(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ReaderContext &_result_ref = (arg1)->getReader();
        result = (eIDMW::PTEID_ReaderContext *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_getReaderByName(void * jarg1, char * jarg2) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ReaderContext &_result_ref = (arg1)->getReaderByName((char const *)arg2);
        result = (eIDMW::PTEID_ReaderContext *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_ReaderSet_readerCount__SWIG_0(void * jarg1, unsigned int jarg2) {
  unsigned long jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  bool arg2 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      result = (unsigned long)(arg1)->readerCount(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_ReaderSet_readerCount__SWIG_1(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->readerCount();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_ReaderSet_getReaderName(void * jarg1, unsigned long jarg2) {
  char * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  unsigned long arg2 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      result = (char *)(arg1)->getReaderName(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_getReaderByNum(void * jarg1, unsigned long jarg2) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ReaderContext &_result_ref = (arg1)->getReaderByNum(arg2);
        result = (eIDMW::PTEID_ReaderContext *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderSet_getReaderByCardSerialNumber(void * jarg1, char * jarg2) {
  void * jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ReaderContext &_result_ref = (arg1)->getReaderByCardSerialNumber((char const *)arg2);
        result = (eIDMW::PTEID_ReaderContext *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ReaderSet_flushCache(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_ReaderSet *arg1 = (eIDMW::PTEID_ReaderSet *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ReaderSet *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->flushCache();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ReaderContext__SWIG_0(int jarg1, char * jarg2) {
  void * jresult ;
  eIDMW::PTEID_FileType arg1 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_FileType)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (eIDMW::PTEID_ReaderContext *)new eIDMW::PTEID_ReaderContext(arg1,(char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ReaderContext__SWIG_1(int jarg1, void * jarg2) {
  void * jresult ;
  eIDMW::PTEID_FileType arg1 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_FileType)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_ReaderContext *)new eIDMW::PTEID_ReaderContext(arg1,(eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ReaderContext__SWIG_2(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Eid *arg1 = 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Eid *)jarg1;
  if(!arg1) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_RawData_Eid const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_ReaderContext *)new eIDMW::PTEID_ReaderContext((eIDMW::PTEID_RawData_Eid const &)*arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_ReaderContext__SWIG_3(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_RawData_Sis *arg1 = 0 ;
  eIDMW::PTEID_ReaderContext *result = 0 ;
  
  arg1 = (eIDMW::PTEID_RawData_Sis *)jarg1;
  if(!arg1) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_RawData_Sis const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_ReaderContext *)new eIDMW::PTEID_ReaderContext((eIDMW::PTEID_RawData_Sis const &)*arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ReaderContext(void * jarg1) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_ReaderContext_getName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ReaderContext_isCardPresent(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isCardPresent();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderContext_releaseCard__SWIG_0(void * jarg1, unsigned int jarg2) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  bool arg2 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      (arg1)->releaseCard(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderContext_releaseCard__SWIG_1(void * jarg1) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      (arg1)->releaseCard();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ReaderContext_isCardChanged(void * jarg1, unsigned long * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  unsigned long *arg2 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  arg2 = (unsigned long *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "unsigned long & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)(arg1)->isCardChanged(*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_ReaderContext_getCardType(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_CardType result;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CardType)(arg1)->getCardType();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderContext_getCard(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_Card *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Card &_result_ref = (arg1)->getCard();
        result = (eIDMW::PTEID_Card *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderContext_getEIDCard(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_EIDCard *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_EIDCard &_result_ref = (arg1)->getEIDCard();
        result = (eIDMW::PTEID_EIDCard *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderContext_getKidsCard(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_KidsCard *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_KidsCard &_result_ref = (arg1)->getKidsCard();
        result = (eIDMW::PTEID_KidsCard *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderContext_getForeignerCard(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_ForeignerCard *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ForeignerCard &_result_ref = (arg1)->getForeignerCard();
        result = (eIDMW::PTEID_ForeignerCard *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_ReaderContext_getSISCard(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  eIDMW::PTEID_SISCard *result = 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_SISCard &_result_ref = (arg1)->getSISCard();
        result = (eIDMW::PTEID_SISCard *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_ReaderContext_SetEventCallback(void * jarg1, long jarg2, void * jarg3) {
  unsigned long jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  void (*arg2)(long,unsigned long,void *) = (void (*)(long,unsigned long,void *)) 0 ;
  void *arg3 = (void *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  
  arg3 = (void *)jarg3; 
  {
    try 
    {
      //Always register the SetEventCallback_WrapperCpp function
      result = (unsigned long)(arg1)->SetEventCallback(&SetEventCallback_WrapperCpp,(void*)arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderContext_StopEventCallback(void * jarg1, unsigned long jarg2) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  unsigned long arg2 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      (arg1)->StopEventCallback(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderContext_BeginTransaction(void * jarg1) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      (arg1)->BeginTransaction();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_ReaderContext_EndTransaction(void * jarg1) {
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      (arg1)->EndTransaction();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_ReaderContext_isVirtualReader(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_ReaderContext *arg1 = (eIDMW::PTEID_ReaderContext *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_ReaderContext *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isVirtualReader();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Card(void * jarg1) {
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Card_getType(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  eIDMW::PTEID_CardType result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CardType)(arg1)->getType();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_getDocument(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  eIDMW::PTEID_DocumentType arg2 ;
  eIDMW::PTEID_XMLDoc *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (eIDMW::PTEID_DocumentType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_XMLDoc &_result_ref = (arg1)->getDocument(arg2);
        result = (eIDMW::PTEID_XMLDoc *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_getRawData(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  eIDMW::PTEID_RawDataType arg2 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (eIDMW::PTEID_RawDataType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData(arg2);
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_sendAPDU(void * jarg1, void * jarg2) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (arg1)->sendAPDU((eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_readFile__SWIG_0(void * jarg1, char * jarg2, unsigned long jarg3, unsigned long jarg4) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  char *arg2 = (char *) 0 ;
  unsigned long arg3 ;
  unsigned long arg4 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (unsigned long)jarg3; 
  arg4 = (unsigned long)jarg4; 
  {
    try 
    {
      result = (arg1)->readFile((char const *)arg2,arg3,arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_readFile__SWIG_1(void * jarg1, char * jarg2, unsigned long jarg3) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  char *arg2 = (char *) 0 ;
  unsigned long arg3 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (unsigned long)jarg3; 
  {
    try 
    {
      result = (arg1)->readFile((char const *)arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Card_readFile__SWIG_2(void * jarg1, char * jarg2) {
  void * jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (arg1)->readFile((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Card_writeFile__SWIG_0(void * jarg1, char * jarg2, void * jarg3, unsigned long jarg4) {
  unsigned int jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  unsigned long arg4 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg4 = (unsigned long)jarg4; 
  {
    try 
    {
      result = (bool)(arg1)->writeFile((char const *)arg2,(eIDMW::PTEID_ByteArray const &)*arg3,arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Card_writeFile__SWIG_1(void * jarg1, char * jarg2, void * jarg3) {
  unsigned int jresult ;
  eIDMW::PTEID_Card *arg1 = (eIDMW::PTEID_Card *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Card *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)(arg1)->writeFile((char const *)arg2,(eIDMW::PTEID_ByteArray const &)*arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_MemoryCard(void * jarg1) {
  eIDMW::PTEID_MemoryCard *arg1 = (eIDMW::PTEID_MemoryCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_MemoryCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_SmartCard(void * jarg1) {
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_SmartCard_selectApplication(void * jarg1, void * jarg2) {
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return ;
  } 
  {
    try 
    {
      (arg1)->selectApplication((eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_sendAPDU__SWIG_0(void * jarg1, void * jarg2, void * jarg3, char * jarg4) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_Pin *arg3 = (eIDMW::PTEID_Pin *) 0 ;
  char *arg4 = (char *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg3 = (eIDMW::PTEID_Pin *)jarg3; 
  arg4 = (char *)jarg4; 
  {
    try 
    {
      result = (arg1)->sendAPDU((eIDMW::PTEID_ByteArray const &)*arg2,arg3,(char const *)arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_sendAPDU__SWIG_1(void * jarg1, void * jarg2, void * jarg3) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_Pin *arg3 = (eIDMW::PTEID_Pin *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg3 = (eIDMW::PTEID_Pin *)jarg3; 
  {
    try 
    {
      result = (arg1)->sendAPDU((eIDMW::PTEID_ByteArray const &)*arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_sendAPDU__SWIG_2(void * jarg1, void * jarg2) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (arg1)->sendAPDU((eIDMW::PTEID_ByteArray const &)*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_SmartCard_readFile__SWIG_0(void * jarg1, char * jarg2, void * jarg3, void * jarg4, char * jarg5) {
  long jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  eIDMW::PTEID_Pin *arg4 = (eIDMW::PTEID_Pin *) 0 ;
  char *arg5 = (char *) 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  arg4 = (eIDMW::PTEID_Pin *)jarg4; 
  arg5 = (char *)jarg5; 
  {
    try 
    {
      result = (long)(arg1)->readFile((char const *)arg2,*arg3,arg4,(char const *)arg5);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_SmartCard_readFile__SWIG_1(void * jarg1, char * jarg2, void * jarg3, void * jarg4) {
  long jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  eIDMW::PTEID_Pin *arg4 = (eIDMW::PTEID_Pin *) 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  arg4 = (eIDMW::PTEID_Pin *)jarg4; 
  {
    try 
    {
      result = (long)(arg1)->readFile((char const *)arg2,*arg3,arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_SmartCard_readFile__SWIG_2(void * jarg1, char * jarg2, void * jarg3) {
  long jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (long)(arg1)->readFile((char const *)arg2,*arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_SmartCard_writeFile__SWIG_0(void * jarg1, char * jarg2, void * jarg3, void * jarg4, char * jarg5) {
  unsigned int jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  eIDMW::PTEID_Pin *arg4 = (eIDMW::PTEID_Pin *) 0 ;
  char *arg5 = (char *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg4 = (eIDMW::PTEID_Pin *)jarg4; 
  arg5 = (char *)jarg5; 
  {
    try 
    {
      result = (bool)(arg1)->writeFile((char const *)arg2,(eIDMW::PTEID_ByteArray const &)*arg3,arg4,(char const *)arg5);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_SmartCard_writeFile__SWIG_1(void * jarg1, char * jarg2, void * jarg3, void * jarg4) {
  unsigned int jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  eIDMW::PTEID_Pin *arg4 = (eIDMW::PTEID_Pin *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg4 = (eIDMW::PTEID_Pin *)jarg4; 
  {
    try 
    {
      result = (bool)(arg1)->writeFile((char const *)arg2,(eIDMW::PTEID_ByteArray const &)*arg3,arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_SmartCard_writeFile__SWIG_2(void * jarg1, char * jarg2, void * jarg3) {
  unsigned int jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  char *arg2 = (char *) 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)(arg1)->writeFile((char const *)arg2,(eIDMW::PTEID_ByteArray const &)*arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_SmartCard_pinCount(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->pinCount();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_getPins(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_Pins *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Pins &_result_ref = (arg1)->getPins();
        result = (eIDMW::PTEID_Pins *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_SmartCard_certificateCount(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->certificateCount();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_getCertificates(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_Certificates *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificates &_result_ref = (arg1)->getCertificates();
        result = (eIDMW::PTEID_Certificates *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_getChallenge__SWIG_0(void * jarg1, unsigned int jarg2) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  bool arg2 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getChallenge(arg2);
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_getChallenge__SWIG_1(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getChallenge();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SmartCard_getChallengeResponse(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getChallengeResponse();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_SmartCard_verifyChallengeResponse(void * jarg1, void * jarg2, void * jarg3) {
  unsigned int jresult ;
  eIDMW::PTEID_SmartCard *arg1 = (eIDMW::PTEID_SmartCard *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_SmartCard *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)((eIDMW::PTEID_SmartCard const *)arg1)->verifyChallengeResponse((eIDMW::PTEID_ByteArray const &)*arg2,(eIDMW::PTEID_ByteArray const &)*arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_SISCard(void * jarg1) {
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SISCard_getDocument(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  eIDMW::PTEID_DocumentType arg2 ;
  eIDMW::PTEID_XMLDoc *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  arg2 = (eIDMW::PTEID_DocumentType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_XMLDoc &_result_ref = (arg1)->getDocument(arg2);
        result = (eIDMW::PTEID_XMLDoc *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SISCard_getFullDoc(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  eIDMW::PTEID_SisFullDoc *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_SisFullDoc &_result_ref = (arg1)->getFullDoc();
        result = (eIDMW::PTEID_SisFullDoc *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SISCard_getID(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  eIDMW::PTEID_SisId *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_SisId &_result_ref = (arg1)->getID();
        result = (eIDMW::PTEID_SisId *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SISCard_getRawData(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  eIDMW::PTEID_RawDataType arg2 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  arg2 = (eIDMW::PTEID_RawDataType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData(arg2);
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_SISCard_getRawData_Id(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_SISCard *arg1 = (eIDMW::PTEID_SISCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SISCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Id();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_EIDCard(void * jarg1) {
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_EIDCard_isApplicationAllowed() {
  unsigned int jresult ;
  bool result;
  
  {
    try 
    {
      result = (bool)eIDMW::PTEID_EIDCard::isApplicationAllowed();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_EIDCard_isTestCard(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isTestCard();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_EIDCard_getAllowTestCard(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->getAllowTestCard();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_EIDCard_setAllowTestCard(void * jarg1, unsigned int jarg2) {
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  bool arg2 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      (arg1)->setAllowTestCard(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_EIDCard_getDataStatus(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->getDataStatus();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getDocument(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_DocumentType arg2 ;
  eIDMW::PTEID_XMLDoc *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  arg2 = (eIDMW::PTEID_DocumentType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_XMLDoc &_result_ref = (arg1)->getDocument(arg2);
        result = (eIDMW::PTEID_XMLDoc *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getFullDoc(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_EIdFullDoc *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_EIdFullDoc &_result_ref = (arg1)->getFullDoc();
        result = (eIDMW::PTEID_EIdFullDoc *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getID(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_EId *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_EId &_result_ref = (arg1)->getID();
        result = (eIDMW::PTEID_EId *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getPicture(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Picture *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Picture &_result_ref = (arg1)->getPicture();
        result = (eIDMW::PTEID_Picture *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getVersionInfo(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_CardVersionInfo *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_CardVersionInfo &_result_ref = (arg1)->getVersionInfo();
        result = (eIDMW::PTEID_CardVersionInfo *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getCert(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_CertifType arg2 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  arg2 = (eIDMW::PTEID_CertifType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCert(arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRrn(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getRrn();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRoot(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getRoot();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getCA(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCA();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getSignature(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getSignature();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getAuthentication(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getAuthentication();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_RawDataType arg2 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  arg2 = (eIDMW::PTEID_RawDataType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData(arg2);
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_Id(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Id();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_IdSig(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_IdSig();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_Addr(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Addr();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_AddrSig(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_AddrSig();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_Picture(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Picture();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_CardInfo(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_CardInfo();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_TokenInfo(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_TokenInfo();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_CertRRN(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_CertRRN();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_Challenge(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Challenge();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_EIDCard_getRawData_Response(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_EIDCard *arg1 = (eIDMW::PTEID_EIDCard *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EIDCard *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getRawData_Response();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_KidsCard(void * jarg1) {
  eIDMW::PTEID_KidsCard *arg1 = (eIDMW::PTEID_KidsCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_KidsCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_ForeignerCard(void * jarg1) {
  eIDMW::PTEID_ForeignerCard *arg1 = (eIDMW::PTEID_ForeignerCard *) 0 ;
  
  arg1 = (eIDMW::PTEID_ForeignerCard *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_XMLDoc(void * jarg1) {
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_XMLDoc_isAllowed(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isAllowed();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_XMLDoc_getXML(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  {
    try 
    {
      result = (arg1)->getXML();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_XMLDoc_getCSV(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  {
    try 
    {
      result = (arg1)->getCSV();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_XMLDoc_getTLV(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  eIDMW::PTEID_ByteArray result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  {
    try 
    {
      result = (arg1)->getTLV();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = new eIDMW::PTEID_ByteArray((eIDMW::PTEID_ByteArray &)result); 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_XMLDoc_writeXmlToFile(void * jarg1, char * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (bool)(arg1)->writeXmlToFile((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_XMLDoc_writeCsvToFile(void * jarg1, char * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (bool)(arg1)->writeCsvToFile((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_XMLDoc_writeTlvToFile(void * jarg1, char * jarg2) {
  unsigned int jresult ;
  eIDMW::PTEID_XMLDoc *arg1 = (eIDMW::PTEID_XMLDoc *) 0 ;
  char *arg2 = (char *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_XMLDoc *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      result = (bool)(arg1)->writeTlvToFile((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Biometric(void * jarg1) {
  eIDMW::PTEID_Biometric *arg1 = (eIDMW::PTEID_Biometric *) 0 ;
  
  arg1 = (eIDMW::PTEID_Biometric *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Crypto(void * jarg1) {
  eIDMW::PTEID_Crypto *arg1 = (eIDMW::PTEID_Crypto *) 0 ;
  
  arg1 = (eIDMW::PTEID_Crypto *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_CardVersionInfo(void * jarg1) {
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getSerialNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSerialNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getComponentCode(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getComponentCode();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getOsNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getOsNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getOsVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getOsVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getSoftmaskNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSoftmaskNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getSoftmaskVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSoftmaskVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getAppletVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getAppletVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getGlobalOsVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getGlobalOsVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getAppletInterfaceVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getAppletInterfaceVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getPKCS1Support(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getPKCS1Support();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getKeyExchangeVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getKeyExchangeVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getAppletLifeCycle(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getAppletLifeCycle();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getGraphicalPersonalisation(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getGraphicalPersonalisation();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getElectricalPersonalisation(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getElectricalPersonalisation();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getElectricalPersonalisationInterface(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getElectricalPersonalisationInterface();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_CardVersionInfo_getSignature(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_CardVersionInfo *arg1 = (eIDMW::PTEID_CardVersionInfo *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_CardVersionInfo *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getSignature();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Picture(void * jarg1) {
  eIDMW::PTEID_Picture *arg1 = (eIDMW::PTEID_Picture *) 0 ;
  
  arg1 = (eIDMW::PTEID_Picture *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Picture_getData(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Picture *arg1 = (eIDMW::PTEID_Picture *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Picture *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getData();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Picture_getHash(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Picture *arg1 = (eIDMW::PTEID_Picture *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Picture *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getHash();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_SisId(void * jarg1) {
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getSurname(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSurname();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getInitials(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getInitials();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getGender(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getGender();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getDateOfBirth(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDateOfBirth();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getSocialSecurityNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSocialSecurityNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getLogicalNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getLogicalNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getDateOfIssue(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDateOfIssue();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getValidityBeginDate(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityBeginDate();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_SisId_getValidityEndDate(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_SisId *arg1 = (eIDMW::PTEID_SisId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_SisId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityEndDate();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_EId(void * jarg1) {
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getDocumentVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDocumentVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getDocumentType(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDocumentType();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getFirstName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getFirstName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getFirstName1(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getFirstName1();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getFirstName2(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getFirstName2();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getSurname(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSurname();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getGender(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getGender();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getDateOfBirth(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDateOfBirth();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getLocationOfBirth(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getLocationOfBirth();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getNobility(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getNobility();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getNationality(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getNationality();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getNationalNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getNationalNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getDuplicata(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getDuplicata();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getSpecialOrganization(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSpecialOrganization();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getMemberOfFamily(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getMemberOfFamily();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getLogicalNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getLogicalNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getChipNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getChipNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getValidityBeginDate(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityBeginDate();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getValidityEndDate(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityEndDate();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getIssuingMunicipality(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getIssuingMunicipality();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getAddressVersion(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getAddressVersion();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getStreet(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getStreet();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getZipCode(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getZipCode();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getMunicipality(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getMunicipality();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getCountry(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getCountry();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_EId_getSpecialStatus(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_EId *arg1 = (eIDMW::PTEID_EId *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_EId *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSpecialStatus();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_SisFullDoc(void * jarg1) {
  eIDMW::PTEID_SisFullDoc *arg1 = (eIDMW::PTEID_SisFullDoc *) 0 ;
  
  arg1 = (eIDMW::PTEID_SisFullDoc *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_EIdFullDoc(void * jarg1) {
  eIDMW::PTEID_EIdFullDoc *arg1 = (eIDMW::PTEID_EIdFullDoc *) 0 ;
  
  arg1 = (eIDMW::PTEID_EIdFullDoc *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Pins(void * jarg1) {
  eIDMW::PTEID_Pins *arg1 = (eIDMW::PTEID_Pins *) 0 ;
  
  arg1 = (eIDMW::PTEID_Pins *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Pins_count(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Pins *arg1 = (eIDMW::PTEID_Pins *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Pins *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->count();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Pins_getPinByNumber(void * jarg1, unsigned long jarg2) {
  void * jresult ;
  eIDMW::PTEID_Pins *arg1 = (eIDMW::PTEID_Pins *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_Pin *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Pins *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Pin &_result_ref = (arg1)->getPinByNumber(arg2);
        result = (eIDMW::PTEID_Pin *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Pin(void * jarg1) {
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Pin_getIndex(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getIndex();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Pin_getType(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getType();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Pin_getId(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getId();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Pin_getUsageCode(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  eIDMW::PTEID_PinUsage result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_PinUsage)(arg1)->getUsageCode();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Pin_getFlags(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getFlags();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Pin_getLabel(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getLabel();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Pin_getSignature(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getSignature();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_Pin_getTriesLeft(void * jarg1) {
  long jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (long)(arg1)->getTriesLeft();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Pin_verifyPin__SWIG_0(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->verifyPin();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Pin_verifyPin__SWIG_1(void * jarg1, char * jarg2, unsigned long * jarg3) {
  unsigned int jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  char *arg2 = (char *) 0 ;
  unsigned long *arg3 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (unsigned long *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "unsigned long & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)(arg1)->verifyPin((char const *)arg2,*arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Pin_changePin__SWIG_0(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->changePin();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Pin_changePin__SWIG_1(void * jarg1, char * jarg2, char * jarg3, unsigned long * jarg4) {
  unsigned int jresult ;
  eIDMW::PTEID_Pin *arg1 = (eIDMW::PTEID_Pin *) 0 ;
  char *arg2 = (char *) 0 ;
  char *arg3 = (char *) 0 ;
  unsigned long *arg4 = 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Pin *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (char *)jarg3; 
  arg4 = (unsigned long *)jarg4;
  if(!arg4) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "unsigned long & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (bool)(arg1)->changePin((char const *)arg2,(char const *)arg3,*arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Crl(char * jarg1) {
  void * jresult ;
  char *arg1 = (char *) 0 ;
  eIDMW::PTEID_Crl *result = 0 ;
  
  arg1 = (char *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_Crl *)new eIDMW::PTEID_Crl((char const *)arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Crl(void * jarg1) {
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Crl_getUri(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getUri();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Crl_getIssuerName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getIssuerName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Crl_getIssuer(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getIssuer();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Crl_getData__SWIG_0(void * jarg1, void * jarg2, unsigned int jarg3) {
  int jresult ;
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  bool arg3 ;
  eIDMW::PTEID_CrlStatus result;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  arg3 = jarg3 ? true : false; 
  {
    try 
    {
      result = (eIDMW::PTEID_CrlStatus)(arg1)->getData(*arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Crl_getData__SWIG_1(void * jarg1, void * jarg2) {
  int jresult ;
  eIDMW::PTEID_Crl *arg1 = (eIDMW::PTEID_Crl *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_CrlStatus result;
  
  arg1 = (eIDMW::PTEID_Crl *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_CrlStatus)(arg1)->getData(*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_OcspResponse(char * jarg1, int jarg2, void * jarg3, void * jarg4, void * jarg5) {
  void * jresult ;
  char *arg1 = (char *) 0 ;
  eIDMW::PTEID_HashAlgo arg2 ;
  eIDMW::PTEID_ByteArray *arg3 = 0 ;
  eIDMW::PTEID_ByteArray *arg4 = 0 ;
  eIDMW::PTEID_ByteArray *arg5 = 0 ;
  eIDMW::PTEID_OcspResponse *result = 0 ;
  
  arg1 = (char *)jarg1; 
  arg2 = (eIDMW::PTEID_HashAlgo)jarg2; 
  arg3 = (eIDMW::PTEID_ByteArray *)jarg3;
  if(!arg3) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg4 = (eIDMW::PTEID_ByteArray *)jarg4;
  if(!arg4) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  arg5 = (eIDMW::PTEID_ByteArray *)jarg5;
  if(!arg5) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray const & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_OcspResponse *)new eIDMW::PTEID_OcspResponse((char const *)arg1,arg2,(eIDMW::PTEID_ByteArray const &)*arg3,(eIDMW::PTEID_ByteArray const &)*arg4,(eIDMW::PTEID_ByteArray const &)*arg5);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_OcspResponse(void * jarg1) {
  eIDMW::PTEID_OcspResponse *arg1 = (eIDMW::PTEID_OcspResponse *) 0 ;
  
  arg1 = (eIDMW::PTEID_OcspResponse *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_OcspResponse_getUri(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_OcspResponse *arg1 = (eIDMW::PTEID_OcspResponse *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_OcspResponse *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getUri();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_OcspResponse_getResponse(void * jarg1, void * jarg2) {
  int jresult ;
  eIDMW::PTEID_OcspResponse *arg1 = (eIDMW::PTEID_OcspResponse *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_OcspResponse *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->getResponse(*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Certificates() {
  void * jresult ;
  eIDMW::PTEID_Certificates *result = 0 ;
  
  {
    try 
    {
      result = (eIDMW::PTEID_Certificates *)new eIDMW::PTEID_Certificates();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Certificates(void * jarg1) {
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Certificates_countFromCard(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->countFromCard();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Certificates_countAll(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->countAll();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getCertFromCard(void * jarg1, unsigned long jarg2) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCertFromCard(arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getCert__SWIG_0(void * jarg1, unsigned long jarg2) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCert(arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getCert__SWIG_1(void * jarg1, int jarg2) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_CertifType arg2 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  arg2 = (eIDMW::PTEID_CertifType)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCert(arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getRrn(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getRrn();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getRoot(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getRoot();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getCA(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getCA();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getSignature(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getSignature();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_getAuthentication(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getAuthentication();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificates_addCertificate(void * jarg1, void * jarg2) {
  void * jresult ;
  eIDMW::PTEID_Certificates *arg1 = (eIDMW::PTEID_Certificates *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificates *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return 0;
  } 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->addCertificate(*arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Certificate(void * jarg1) {
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getLabel(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getLabel();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Certificate_getID(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getID();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_getStatus__SWIG_0(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->getStatus();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_getStatus__SWIG_1(void * jarg1, int jarg2, int jarg3) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_ValidationLevel arg2 ;
  eIDMW::PTEID_ValidationLevel arg3 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  arg2 = (eIDMW::PTEID_ValidationLevel)jarg2; 
  arg3 = (eIDMW::PTEID_ValidationLevel)jarg3; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->getStatus(arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_getType(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_CertifType result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifType)(arg1)->getType();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificate_getCertData(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_ByteArray *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_ByteArray const &_result_ref = (arg1)->getCertData();
        result = (eIDMW::PTEID_ByteArray *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_Certificate_getFormattedData(void * jarg1, void * jarg2) {
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_ByteArray *arg2 = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  arg2 = (eIDMW::PTEID_ByteArray *)jarg2;
  if(!arg2) {
    SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "eIDMW::PTEID_ByteArray & type is null", 0);
    return ;
  } 
  {
    try 
    {
      (arg1)->getFormattedData(*arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getSerialNumber(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getSerialNumber();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getOwnerName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getOwnerName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getIssuerName(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getIssuerName();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getValidityBegin(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityBegin();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Certificate_getValidityEnd(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getValidityEnd();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Certificate_getKeyLength(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->getKeyLength();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Certificate_isRoot(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isRoot();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Certificate_isTest(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isTest();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Certificate_isFromPteidValidChain(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isFromPteidValidChain();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT unsigned int SWIGSTDCALL CSharp_PTEID_Certificate_isFromCard(void * jarg1) {
  unsigned int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  bool result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (bool)(arg1)->isFromCard();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificate_getIssuer(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getIssuer();
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT unsigned long SWIGSTDCALL CSharp_PTEID_Certificate_countChildren(void * jarg1) {
  unsigned long jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  unsigned long result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (unsigned long)(arg1)->countChildren();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (unsigned long)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificate_getChildren(void * jarg1, unsigned long jarg2) {
  void * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  unsigned long arg2 ;
  eIDMW::PTEID_Certificate *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  arg2 = (unsigned long)jarg2; 
  {
    try 
    {
      {
        eIDMW::PTEID_Certificate &_result_ref = (arg1)->getChildren(arg2);
        result = (eIDMW::PTEID_Certificate *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificate_getCRL(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_Crl *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_Crl &_result_ref = (arg1)->getCRL();
        result = (eIDMW::PTEID_Crl *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_PTEID_Certificate_getOcspResponse(void * jarg1) {
  void * jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_OcspResponse *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      {
        eIDMW::PTEID_OcspResponse &_result_ref = (arg1)->getOcspResponse();
        result = (eIDMW::PTEID_OcspResponse *) &_result_ref;
      }
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_verifyCRL__SWIG_0(void * jarg1, unsigned int jarg2) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  bool arg2 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  arg2 = jarg2 ? true : false; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->verifyCRL(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_verifyCRL__SWIG_1(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->verifyCRL();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT int SWIGSTDCALL CSharp_PTEID_Certificate_verifyOCSP(void * jarg1) {
  int jresult ;
  eIDMW::PTEID_Certificate *arg1 = (eIDMW::PTEID_Certificate *) 0 ;
  eIDMW::PTEID_CertifStatus result;
  
  arg1 = (eIDMW::PTEID_Certificate *)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_CertifStatus)(arg1)->verifyOCSP();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Config__SWIG_0(int jarg1) {
  void * jresult ;
  eIDMW::PTEID_Param arg1 ;
  eIDMW::PTEID_Config *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Param)jarg1; 
  {
    try 
    {
      result = (eIDMW::PTEID_Config *)new eIDMW::PTEID_Config(arg1);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Config__SWIG_1(char * jarg1, char * jarg2, char * jarg3) {
  void * jresult ;
  char *arg1 = (char *) 0 ;
  char *arg2 = (char *) 0 ;
  char *arg3 = (char *) 0 ;
  eIDMW::PTEID_Config *result = 0 ;
  
  arg1 = (char *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (char *)jarg3; 
  {
    try 
    {
      result = (eIDMW::PTEID_Config *)new eIDMW::PTEID_Config((char const *)arg1,(char const *)arg2,(char const *)arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void * SWIGSTDCALL CSharp_new_PTEID_Config__SWIG_2(char * jarg1, char * jarg2, long jarg3) {
  void * jresult ;
  char *arg1 = (char *) 0 ;
  char *arg2 = (char *) 0 ;
  long arg3 ;
  eIDMW::PTEID_Config *result = 0 ;
  
  arg1 = (char *)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (long)jarg3; 
  {
    try 
    {
      result = (eIDMW::PTEID_Config *)new eIDMW::PTEID_Config((char const *)arg1,(char const *)arg2,arg3);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = (void *)result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_delete_PTEID_Config(void * jarg1) {
  eIDMW::PTEID_Config *arg1 = (eIDMW::PTEID_Config *) 0 ;
  
  arg1 = (eIDMW::PTEID_Config *)jarg1; 
  {
    try 
    {
      delete arg1;
      
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT char * SWIGSTDCALL CSharp_PTEID_Config_getString(void * jarg1) {
  char * jresult ;
  eIDMW::PTEID_Config *arg1 = (eIDMW::PTEID_Config *) 0 ;
  char *result = 0 ;
  
  arg1 = (eIDMW::PTEID_Config *)jarg1; 
  {
    try 
    {
      result = (char *)(arg1)->getString();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = SWIG_csharp_string_callback((const char *)result); 
  return jresult;
}


SWIGEXPORT long SWIGSTDCALL CSharp_PTEID_Config_getLong(void * jarg1) {
  long jresult ;
  eIDMW::PTEID_Config *arg1 = (eIDMW::PTEID_Config *) 0 ;
  long result;
  
  arg1 = (eIDMW::PTEID_Config *)jarg1; 
  {
    try 
    {
      result = (long)(arg1)->getLong();
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return 0;
    }
  }
  jresult = result; 
  return jresult;
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_Config_setString(void * jarg1, char * jarg2) {
  eIDMW::PTEID_Config *arg1 = (eIDMW::PTEID_Config *) 0 ;
  char *arg2 = (char *) 0 ;
  
  arg1 = (eIDMW::PTEID_Config *)jarg1; 
  arg2 = (char *)jarg2; 
  {
    try 
    {
      (arg1)->setString((char const *)arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_Config_setLong(void * jarg1, long jarg2) {
  eIDMW::PTEID_Config *arg1 = (eIDMW::PTEID_Config *) 0 ;
  long arg2 ;
  
  arg1 = (eIDMW::PTEID_Config *)jarg1; 
  arg2 = (long)jarg2; 
  {
    try 
    {
      (arg1)->setLong(arg2);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT void SWIGSTDCALL CSharp_PTEID_LOG(int jarg1, char * jarg2, char * jarg3) {
  eIDMW::PTEID_LogLevel arg1 ;
  char *arg2 = (char *) 0 ;
  char *arg3 = (char *) 0 ;
  void *arg4 = 0 ;
  
  arg1 = (eIDMW::PTEID_LogLevel)jarg1; 
  arg2 = (char *)jarg2; 
  arg3 = (char *)jarg3; 
  {
    try 
    {
      eIDMW::PTEID_LOG(arg1,(char const *)arg2,(char const *)arg3,arg4);
    }
    catch (eIDMW::PTEID_Exception& e) 
    {
      SWIG_CSharpSetPendingExceptionCustom(e.GetError());
      return ;
    }
  }
}


SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExReleaseNeededUpcast(eIDMW::PTEID_ExReleaseNeeded *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExUnknownUpcast(eIDMW::PTEID_ExUnknown *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExDocTypeUnknownUpcast(eIDMW::PTEID_ExDocTypeUnknown *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExFileTypeUnknownUpcast(eIDMW::PTEID_ExFileTypeUnknown *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExParamRangeUpcast(eIDMW::PTEID_ExParamRange *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCmdNotAllowedUpcast(eIDMW::PTEID_ExCmdNotAllowed *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCmdNotSupportedUpcast(eIDMW::PTEID_ExCmdNotSupported *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExNoCardPresentUpcast(eIDMW::PTEID_ExNoCardPresent *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCardBadTypeUpcast(eIDMW::PTEID_ExCardBadType *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCardTypeUnknownUpcast(eIDMW::PTEID_ExCardTypeUnknown *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCertNoIssuerUpcast(eIDMW::PTEID_ExCertNoIssuer *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCertNoCrlUpcast(eIDMW::PTEID_ExCertNoCrl *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCertNoOcspUpcast(eIDMW::PTEID_ExCertNoOcsp *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCertNoRootUpcast(eIDMW::PTEID_ExCertNoRoot *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExBadUsageUpcast(eIDMW::PTEID_ExBadUsage *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExBadTransactionUpcast(eIDMW::PTEID_ExBadTransaction *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExCardChangedUpcast(eIDMW::PTEID_ExCardChanged *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExReaderSetChangedUpcast(eIDMW::PTEID_ExReaderSetChanged *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExNoReaderUpcast(eIDMW::PTEID_ExNoReader *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExNotAllowByUserUpcast(eIDMW::PTEID_ExNotAllowByUser *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Exception * SWIGSTDCALL CSharp_PTEID_ExUserMustAnswerUpcast(eIDMW::PTEID_ExUserMustAnswer *objectRef) {
    return (eIDMW::PTEID_Exception *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_ByteArrayUpcast(eIDMW::PTEID_ByteArray *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_ReaderSetUpcast(eIDMW::PTEID_ReaderSet *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_ReaderContextUpcast(eIDMW::PTEID_ReaderContext *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_CardUpcast(eIDMW::PTEID_Card *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Card * SWIGSTDCALL CSharp_PTEID_MemoryCardUpcast(eIDMW::PTEID_MemoryCard *objectRef) {
    return (eIDMW::PTEID_Card *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Card * SWIGSTDCALL CSharp_PTEID_SmartCardUpcast(eIDMW::PTEID_SmartCard *objectRef) {
    return (eIDMW::PTEID_Card *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_MemoryCard * SWIGSTDCALL CSharp_PTEID_SISCardUpcast(eIDMW::PTEID_SISCard *objectRef) {
    return (eIDMW::PTEID_MemoryCard *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_SmartCard * SWIGSTDCALL CSharp_PTEID_EIDCardUpcast(eIDMW::PTEID_EIDCard *objectRef) {
    return (eIDMW::PTEID_SmartCard *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_EIDCard * SWIGSTDCALL CSharp_PTEID_KidsCardUpcast(eIDMW::PTEID_KidsCard *objectRef) {
    return (eIDMW::PTEID_EIDCard *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_EIDCard * SWIGSTDCALL CSharp_PTEID_ForeignerCardUpcast(eIDMW::PTEID_ForeignerCard *objectRef) {
    return (eIDMW::PTEID_EIDCard *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_XMLDocUpcast(eIDMW::PTEID_XMLDoc *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_BiometricUpcast(eIDMW::PTEID_Biometric *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_CryptoUpcast(eIDMW::PTEID_Crypto *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_CardVersionInfoUpcast(eIDMW::PTEID_CardVersionInfo *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Biometric * SWIGSTDCALL CSharp_PTEID_PictureUpcast(eIDMW::PTEID_Picture *objectRef) {
    return (eIDMW::PTEID_Biometric *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_SisIdUpcast(eIDMW::PTEID_SisId *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_EIdUpcast(eIDMW::PTEID_EId *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_SisFullDocUpcast(eIDMW::PTEID_SisFullDoc *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_XMLDoc * SWIGSTDCALL CSharp_PTEID_EIdFullDocUpcast(eIDMW::PTEID_EIdFullDoc *objectRef) {
    return (eIDMW::PTEID_XMLDoc *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Crypto * SWIGSTDCALL CSharp_PTEID_PinsUpcast(eIDMW::PTEID_Pins *objectRef) {
    return (eIDMW::PTEID_Crypto *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Crypto * SWIGSTDCALL CSharp_PTEID_PinUpcast(eIDMW::PTEID_Pin *objectRef) {
    return (eIDMW::PTEID_Crypto *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_CrlUpcast(eIDMW::PTEID_Crl *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_OcspResponseUpcast(eIDMW::PTEID_OcspResponse *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Crypto * SWIGSTDCALL CSharp_PTEID_CertificatesUpcast(eIDMW::PTEID_Certificates *objectRef) {
    return (eIDMW::PTEID_Crypto *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Crypto * SWIGSTDCALL CSharp_PTEID_CertificateUpcast(eIDMW::PTEID_Certificate *objectRef) {
    return (eIDMW::PTEID_Crypto *)objectRef;
}

SWIGEXPORT eIDMW::PTEID_Object * SWIGSTDCALL CSharp_PTEID_ConfigUpcast(eIDMW::PTEID_Config *objectRef) {
    return (eIDMW::PTEID_Object *)objectRef;
}

#ifdef __cplusplus
}
#endif

