/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (http://www.swig.org).
 * Version 1.3u-20040523-0413 (Alpha 5)
 * 
 * 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. 
 * ----------------------------------------------------------------------------- */

/***********************************************************************
 * common.swg
 *
 *     This file contains generic SWIG runtime support for pointer
 *     type checking as well as a few commonly used macros to control
 *     external linkage.
 *
 * Author : David Beazley (beazley@cs.uchicago.edu)
 *
 * Copyright (c) 1999-2000, The University of Chicago
 * 
 * This file may be freely redistributed without license or fee provided
 * this copyright message remains intact.
 ************************************************************************/

#include <string.h>

#if defined(_WIN32) || defined(__WIN32__)
#       if defined(_MSC_VER)
#               if defined(STATIC_LINKED)
#                       define SWIGEXPORT(a) a
#               else
#                       define SWIGEXPORT(a) __declspec(dllexport) a
#               endif
#       else
#               if defined(__BORLANDC__)
#                       define SWIGEXPORT(a) a _export
#               else
#                       define SWIGEXPORT(a) a
#       endif
#endif
#else
#       define SWIGEXPORT(a) a
#endif

#ifdef SWIG_GLOBAL
#define SWIGRUNTIME(a) SWIGEXPORT(a)
#else
#define SWIGRUNTIME(a) static a
#endif

#ifdef __cplusplus
extern "C" {
#endif

typedef struct swig_type_info {
  char  *name;                 
  void *(*converter)(void *);
  char  *str;
  struct swig_type_info  *next;
  struct swig_type_info  *prev;
} swig_type_info;

#ifdef SWIG_NOINCLUDE
SWIGEXPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *);
SWIGEXPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *);
SWIGEXPORT(void *) SWIG_TypeCast(swig_type_info *, void *);
#else

static swig_type_info *swig_type_list = 0;

/* Register a type mapping with the type-checking */
SWIGRUNTIME(swig_type_info *)
SWIG_TypeRegister(swig_type_info *ti)
{
  swig_type_info *tc, *head, *ret, *next;
  /* Check to see if this type has already been registered */
  tc = swig_type_list;
  while (tc) {
    if (strcmp(tc->name, ti->name) == 0) {
      /* Already exists in the table.  Just add additional types to the list */
      head = tc;
      next = tc->next;
      goto l1;
    }
    tc = tc->prev;
  }
  head = ti;
  next = 0;

  /* Place in list */
  ti->prev = swig_type_list;
  swig_type_list = ti;

  /* Build linked lists */
 l1:
  ret = head;
  tc = ti + 1;
  /* Patch up the rest of the links */
  while (tc->name) {
    head->next = tc;
    tc->prev = head;
    head = tc;
    tc++;
  }
  head->next = next;
  return ret;
}

/* Check the typename */
SWIGRUNTIME(swig_type_info *) 
SWIG_TypeCheck(char *c, swig_type_info *ty)
{
  swig_type_info *s;
  if (!ty) return 0;        /* Void pointer */
  s = ty->next;             /* First element always just a name */
  while (s) {
    if (strcmp(s->name,c) == 0) {
      if (s == ty->next) return s;
      /* Move s to the top of the linked list */
      s->prev->next = s->next;
      if (s->next) {
	s->next->prev = s->prev;
      }
      /* Insert s as second element in the list */
      s->next = ty->next;
      if (ty->next) ty->next->prev = s;
      ty->next = s;
      return s;
    }
    s = s->next;
  }
  return 0;
}

/* Cast a pointer (needed for C++ inheritance */
SWIGRUNTIME(void *) 
SWIG_TypeCast(swig_type_info *ty, void *ptr) 
{
  if ((!ty) || (!ty->converter)) return ptr;
  return (*ty->converter)(ptr);
}

/* Search for a swig_type_info structure */
SWIGRUNTIME(void *)
SWIG_TypeQuery(const char *name) {
  swig_type_info *ty = swig_type_list;
  while (ty) {
    if (ty->str && (strcmp(name,ty->str) == 0)) return ty;
    if (ty->name && (strcmp(name,ty->name) == 0)) return ty;
    ty = ty->prev;
  }
  return 0;
}

#endif

#ifdef __cplusplus
}
#endif



/*
 * $Header: /cvs/projects/SWIG/Lib/tcl/swigtcl8.swg,v 1.8 2000/09/02 16:25:29 beazley Exp $
 * 
 * swigtcl8.swg
 */

#include <tcl.h>
#include <stdlib.h>
#include <stdarg.h>

#ifdef __cplusplus
extern "C" {
#endif

#ifdef SWIG_NOINCLUDE
SWIGEXPORT(int) SWIG_ConvertPtrFromString(Tcl_Interp *, char *, void **, swig_type_info *);
SWIGEXPORT(int) SWIG_ConvertPtr(Tcl_Interp *, Tcl_Obj *, void **, swig_type_info *);
SWIGEXPORT(void) SWIG_MakePtr(char *, void *, swig_type_info *);
SWIGEXPORT(Tcl_Obj *) SWIG_NewPointerObj(void *, swig_type_info *);
SWIGEXPORT(int) SWIG_GetArgs(Tcl_Interp *, int, Tcl_Obj *CONST [], const char *, ...);
SWIGEXPORT(char *) SWIG_PointerTypeFromString(char *c);
#else

/* Convert a pointer value */
SWIGRUNTIME(int)
SWIG_ConvertPtrFromString(Tcl_Interp *interp, char *c, void **ptr, swig_type_info *ty)
{
  unsigned long p;
  register int d;
  swig_type_info *tc;
  p = 0;
  /* Pointer values must start with leading underscore */
  if (*c != '_') {
    *ptr = (void *) 0;
    if (strcmp(c,"NULL") == 0) return TCL_OK;
    Tcl_SetResult(interp,"Type error. Expected a pointer", TCL_STATIC);
    return TCL_ERROR;
  }
  c++;
  /* Extract hex value from pointer */
  while ((d = *c)) {
    if ((d >= '0') && (d <= '9'))
      p = (p << 4) + (d - '0');
    else if ((d >= 'a') && (d <= 'f'))
      p = (p << 4) + (d - ('a'-10));
    else
      break; 
    c++;
  }
  *ptr = (void *) p;
  if (ty) {
    tc = SWIG_TypeCheck(c,ty);
    if (!tc) {
      Tcl_SetResult(interp,"Type error. Expected ", TCL_STATIC);
      Tcl_AppendElement(interp, ty->name);
      return TCL_ERROR;
    }
    *ptr = SWIG_TypeCast(tc,(void *)p);
  }
  return TCL_OK;
}


/* Convert a pointer value */
SWIGRUNTIME(int)
SWIG_ConvertPtr(Tcl_Interp *interp, Tcl_Obj *oc, void **ptr, swig_type_info *ty)
{
  return SWIG_ConvertPtrFromString(interp, Tcl_GetStringFromObj(oc,NULL), ptr, ty);
}


/* Convert a pointer value */
SWIGRUNTIME(char *)
SWIG_PointerTypeFromString(char *c) {
  char d;
  /* Pointer values must start with leading underscore */
  if (*c != '_') {
    return 0;
  }
  c++;
  /* Extract hex value from pointer */
  while (d = *c) {
    if (!(((d >= '0') && (d <= '9')) || ((d >= 'a') && (d <= 'f')))) break;
    c++;
  }
  return c;
}

/* Take a pointer and convert it to a string */
SWIGRUNTIME(void) 
SWIG_MakePtr(char *c, void *ptr, swig_type_info *ty) {
  static char hex[17] = "0123456789abcdef";
  unsigned long p, s;
  char result[24], *r; 
  r = result;
  p = (unsigned long) ptr;
  if (p > 0) {
    while (p > 0) {
      s = p & 0xf;
      *(r++) = hex[s];
      p = p >> 4;
    }
    *r = '_';
    while (r >= result)
      *(c++) = *(r--);
    strcpy (c, ty->name);
  } else {
    strcpy (c, "NULL");
  }
}

/* Create a new pointer object */
SWIGRUNTIME(Tcl_Obj *)
SWIG_NewPointerObj(void *ptr, swig_type_info *type) {
  char result[256];
  Tcl_Obj *robj;
  SWIG_MakePtr(result,ptr,type);
  robj = Tcl_NewStringObj(result,-1);
  return robj;
}

/* Get arguments */
SWIGRUNTIME(int)
SWIG_GetArgs(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], const char *fmt, ...)
{
  int        argno = 0, opt = 0, tempi;
  int        us = 0;
  double     tempd;
  const char *c;
  va_list    ap;
  void      *vptr;
  swig_type_info *ty;

  va_start(ap,fmt);
  for (c = fmt; (*c && (*c != ':')); c++,argno++) {
    if (*c == '|') {
      opt = 1;
      c++;
    }
    if (argno >= (objc-1)) {
      if (!opt) {
	Tcl_SetResult(interp,"Wrong # args. ", TCL_STATIC);
	goto argerror;
      } else {
	va_end(ap);
	return TCL_OK;
      }
    }
    vptr = va_arg(ap,void *);
    if (vptr) {
      us = 0;
      if (*c == 'u') {
	us = 1;
	c++;
      }
      switch(*c) {
      case 'i':
      case 'l':
      case 'h':
      case 'b':
	if (Tcl_GetIntFromObj(interp,objv[argno+1],&tempi) != TCL_OK) goto argerror;
	if (*c == 'i') *((int *)vptr) = tempi;
	else if (*c == 'l') *((long *)vptr) = tempi;
	else if (*c == 'h') *((short*)vptr) = tempi;
	else if (*c == 'b') *((unsigned char *)vptr) = tempi;
	break;
      case 'f':
      case 'd':
	if (Tcl_GetDoubleFromObj(interp,objv[argno+1],&tempd) != TCL_OK) goto argerror;
	if (*c == 'f') *((float *) vptr) = tempd;
	else if (*c == 'd') *((double*) vptr) = tempd;
	break;
      case 's':
	if (*(c+1) == '#') {
	  int *vlptr = (int *) va_arg(ap, void *);
	  *((char **) vptr) = Tcl_GetStringFromObj(objv[argno+1], vlptr);
	  c++;
	} else {
	  *((char **)vptr) = Tcl_GetStringFromObj(objv[argno+1],NULL);
	}
	break;
      case 'c':
	*((char *)vptr) = *(Tcl_GetStringFromObj(objv[argno+1],NULL));
	break;
      case 'p':
	ty = (swig_type_info *) va_arg(ap, void *);
	if (SWIG_ConvertPtr(interp, objv[argno+1], (void **) vptr, ty) == TCL_ERROR) goto argerror;
	break;
      case 'o':
	*((Tcl_Obj **)vptr) = objv[argno+1];
	break;
      default:
	break;
      }
    }
  }
  if ((objc-1) > argno) {
    Tcl_SetResult(interp,"Wrong # args.", TCL_STATIC);
    goto argerror;
  }
  va_end(ap);
  return TCL_OK;
  
 argerror:
  {
    char temp[32];
    sprintf(temp,"%d", argno);
    Tcl_AppendResult(interp,strchr(fmt,':'), " argument ", temp, NULL);
    va_end(ap);
    return TCL_ERROR;
  }
}

#endif

/* Structure for command table */
typedef struct {
  const char *name;
  int       (*wrapper)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST []);
  ClientData  clientdata;
} swig_command_info;

/* Structure for variable linking table */
typedef struct {
  const char *name;
  void *addr;
  char * (*get)(ClientData, Tcl_Interp *, char *, char *, int);
  char * (*set)(ClientData, Tcl_Interp *, char *, char *, int);
} swig_var_info;


#ifdef __cplusplus
}
#endif


/* -------- TYPES TABLE (BEGIN) -------- */

#define  SWIGTYPE_p_CCameraIO swig_types[0] 
#define  SWIGTYPE_p_unsigned_short swig_types[1] 
#define  SWIGTYPE_p_short swig_types[2] 
static swig_type_info *swig_types[4];

/* -------- TYPES TABLE (END) -------- */

#define SWIG_init    Apogee_ppi_Init
#define SWIG_name    "apogee_ppi"
#define SWIG_prefix  ""
#define SWIG_namespace ""

#ifdef __cplusplus
extern "C" {
#endif
#ifdef MAC_TCL
#pragma export on
#endif
SWIGEXPORT(int) Apogee_ppi_Init(Tcl_Interp *);
#ifdef MAC_TCL
#pragma export off
#endif
#ifdef __cplusplus
}
#endif
     
#include "CameraIO_Linux.h" 
static int  _wrap_const_Camera_Status_Idle = Camera_Status_Idle;
static int  _wrap_const_Camera_Status_Waiting = Camera_Status_Waiting;
static int  _wrap_const_Camera_Status_Exposing = Camera_Status_Exposing;
static int  _wrap_const_Camera_Status_Downloading = Camera_Status_Downloading;
static int  _wrap_const_Camera_Status_LineReady = Camera_Status_LineReady;
static int  _wrap_const_Camera_Status_ImageReady = Camera_Status_ImageReady;
static int  _wrap_const_Camera_Status_Flushing = Camera_Status_Flushing;
static int  _wrap_const_Camera_CoolerStatus_Off = Camera_CoolerStatus_Off;
static int  _wrap_const_Camera_CoolerStatus_RampingToSetPoint = Camera_CoolerStatus_RampingToSetPoint;
static int  _wrap_const_Camera_CoolerStatus_Correcting = Camera_CoolerStatus_Correcting;
static int  _wrap_const_Camera_CoolerStatus_RampingToAmbient = Camera_CoolerStatus_RampingToAmbient;
static int  _wrap_const_Camera_CoolerStatus_AtAmbient = Camera_CoolerStatus_AtAmbient;
static int  _wrap_const_Camera_CoolerStatus_AtMax = Camera_CoolerStatus_AtMax;
static int  _wrap_const_Camera_CoolerStatus_AtMin = Camera_CoolerStatus_AtMin;
static int  _wrap_const_Camera_CoolerStatus_AtSetPoint = Camera_CoolerStatus_AtSetPoint;
static int  _wrap_const_Camera_CoolerMode_Off = Camera_CoolerMode_Off;
static int  _wrap_const_Camera_CoolerMode_On = Camera_CoolerMode_On;
static int  _wrap_const_Camera_CoolerMode_Shutdown = Camera_CoolerMode_Shutdown;
static int  _wrap_const_Camera_Interface_ISA = Camera_Interface_ISA;
static int  _wrap_const_Camera_Interface_PPI = Camera_Interface_PPI;
static int  _wrap_const_Camera_Interface_PCI = Camera_Interface_PCI;
static int  _wrap_const_Camera_SensorType_CCD = Camera_SensorType_CCD;
static int  _wrap_const_Camera_SensorType_CMOS = Camera_SensorType_CMOS;
static long const  _wrap_const_MAXCOLUMNS = 16383;
static char *_wrap_const_MAXCOLUMNS_char;
static long const  _wrap_const_MAXROWS = 16383;
static char *_wrap_const_MAXROWS_char;
static long const  _wrap_const_MAXHBIN = 8;
static char *_wrap_const_MAXHBIN_char;
static long const  _wrap_const_MAXVBIN = 255;
static char *_wrap_const_MAXVBIN_char;
static long const  _wrap_const_NumWriteRegisters = 8;
static char *_wrap_const_NumWriteRegisters_char;
static long const  _wrap_const_RegISA_Command = 0x000;
static char *_wrap_const_RegISA_Command_char;
static long const  _wrap_const_Reg_Command = 0;
static char *_wrap_const_Reg_Command_char;
static unsigned short const  _wrap_const_RegBit_TDIMode = 0x1;
static char *_wrap_const_RegBit_TDIMode_char;
static unsigned short const  _wrap_const_RegBit_StartTimer = 0x2;
static char *_wrap_const_RegBit_StartTimer_char;
static unsigned short const  _wrap_const_RegBit_ShutterOverride = 0x4;
static char *_wrap_const_RegBit_ShutterOverride_char;
static unsigned short const  _wrap_const_RegBit_ResetSystem = 0x8;
static char *_wrap_const_RegBit_ResetSystem_char;
static unsigned short const  _wrap_const_RegBit_FIFOCache = 0x10;
static char *_wrap_const_RegBit_FIFOCache_char;
static unsigned short const  _wrap_const_RegBit_TriggerEnable = 0x20;
static char *_wrap_const_RegBit_TriggerEnable_char;
static unsigned short const  _wrap_const_RegBit_StopFlushing = 0x40;
static char *_wrap_const_RegBit_StopFlushing_char;
static unsigned short const  _wrap_const_RegBit_ShutterEnable = 0x80;
static char *_wrap_const_RegBit_ShutterEnable_char;
static unsigned short const  _wrap_const_RegBit_CoolerShutdown = 0x100;
static char *_wrap_const_RegBit_CoolerShutdown_char;
static unsigned short const  _wrap_const_RegBit_DoneReading = 0x200;
static char *_wrap_const_RegBit_DoneReading_char;
static unsigned short const  _wrap_const_RegBit_TimerLoad = 0x400;
static char *_wrap_const_RegBit_TimerLoad_char;
static unsigned short const  _wrap_const_RegBit_StartNextLine = 0x800;
static char *_wrap_const_RegBit_StartNextLine_char;
static unsigned short const  _wrap_const_RegBit_StartFlushing = 0x1000;
static char *_wrap_const_RegBit_StartFlushing_char;
static unsigned short const  _wrap_const_RegBit_Focus = 0x2000;
static char *_wrap_const_RegBit_Focus_char;
static unsigned short const  _wrap_const_RegBit_CableLength = 0x4000;
static char *_wrap_const_RegBit_CableLength_char;
static unsigned short const  _wrap_const_RegBit_CoolerEnable = 0x8000;
static char *_wrap_const_RegBit_CoolerEnable_char;
static long const  _wrap_const_RegISA_Timer = 0x002;
static char *_wrap_const_RegISA_Timer_char;
static long const  _wrap_const_Reg_Timer = 1;
static char *_wrap_const_Reg_Timer_char;
static unsigned short const  _wrap_const_RegBitShift_Timer = 0;
static char *_wrap_const_RegBitShift_Timer_char;
static unsigned short const  _wrap_const_RegBitMask_Timer = 0xFFFF;
static char *_wrap_const_RegBitMask_Timer_char;
static long const  _wrap_const_RegISA_VBinning = 0x004;
static char *_wrap_const_RegISA_VBinning_char;
static long const  _wrap_const_Reg_VBinning = 2;
static char *_wrap_const_Reg_VBinning_char;
static unsigned short const  _wrap_const_RegBitShift_Timer2 = 0;
static char *_wrap_const_RegBitShift_Timer2_char;
static unsigned short const  _wrap_const_RegBitMask_Timer2 = 0xF;
static char *_wrap_const_RegBitMask_Timer2_char;
static unsigned short const  _wrap_const_RegBitShift_VBinning = 0x8;
static char *_wrap_const_RegBitShift_VBinning_char;
static unsigned short const  _wrap_const_RegBitMask_VBinning = 0xFF;
static char *_wrap_const_RegBitMask_VBinning_char;
static long const  _wrap_const_RegISA_AICCounter = 0x006;
static char *_wrap_const_RegISA_AICCounter_char;
static long const  _wrap_const_Reg_AICCounter = 3;
static char *_wrap_const_Reg_AICCounter_char;
static unsigned short const  _wrap_const_RegBitShift_AICCounter = 0;
static char *_wrap_const_RegBitShift_AICCounter_char;
static unsigned short const  _wrap_const_RegBitMask_AICCounter = 0xFFF;
static char *_wrap_const_RegBitMask_AICCounter_char;
static unsigned short const  _wrap_const_RegBitShift_Test2 = 0xC;
static char *_wrap_const_RegBitShift_Test2_char;
static unsigned short const  _wrap_const_RegBitMask_Test2 = 0xF;
static char *_wrap_const_RegBitMask_Test2_char;
static long const  _wrap_const_RegISA_TempSetPoint = 0x008;
static char *_wrap_const_RegISA_TempSetPoint_char;
static long const  _wrap_const_Reg_TempSetPoint = 4;
static char *_wrap_const_Reg_TempSetPoint_char;
static unsigned short const  _wrap_const_RegBitShift_TempSetPoint = 0;
static char *_wrap_const_RegBitShift_TempSetPoint_char;
static unsigned short const  _wrap_const_RegBitMask_TempSetPoint = 0xFF;
static char *_wrap_const_RegBitMask_TempSetPoint_char;
static unsigned short const  _wrap_const_RegBitShift_PortControl = 0x8;
static char *_wrap_const_RegBitShift_PortControl_char;
static unsigned short const  _wrap_const_RegBitMask_PortControl = 0xFF;
static char *_wrap_const_RegBitMask_PortControl_char;
static long const  _wrap_const_RegISA_PixelCounter = 0x00a;
static char *_wrap_const_RegISA_PixelCounter_char;
static long const  _wrap_const_Reg_PixelCounter = 5;
static char *_wrap_const_Reg_PixelCounter_char;
static unsigned short const  _wrap_const_RegBitShift_PixelCounter = 0;
static char *_wrap_const_RegBitShift_PixelCounter_char;
static unsigned short const  _wrap_const_RegBitMask_PixelCounter = 0xFFF;
static char *_wrap_const_RegBitMask_PixelCounter_char;
static unsigned short const  _wrap_const_RegBitShift_HBinning = 0xC;
static char *_wrap_const_RegBitShift_HBinning_char;
static unsigned short const  _wrap_const_RegBitMask_HBinning = 0x7;
static char *_wrap_const_RegBitMask_HBinning_char;
static unsigned short const  _wrap_const_RegBit_LoopLock = 0x8000;
static char *_wrap_const_RegBit_LoopLock_char;
static long const  _wrap_const_RegISA_LineCounter = 0x00c;
static char *_wrap_const_RegISA_LineCounter_char;
static long const  _wrap_const_Reg_LineCounter = 6;
static char *_wrap_const_Reg_LineCounter_char;
static unsigned short const  _wrap_const_RegBitShift_LineCounter = 0;
static char *_wrap_const_RegBitShift_LineCounter_char;
static unsigned short const  _wrap_const_RegBitMask_LineCounter = 0xFFF;
static char *_wrap_const_RegBitMask_LineCounter_char;
static unsigned short const  _wrap_const_RegBitShift_Mode = 0xC;
static char *_wrap_const_RegBitShift_Mode_char;
static unsigned short const  _wrap_const_RegBitMask_Mode = 0xF;
static char *_wrap_const_RegBitMask_Mode_char;
static long const  _wrap_const_RegISA_BICCounter = 0x00e;
static char *_wrap_const_RegISA_BICCounter_char;
static long const  _wrap_const_Reg_BICCounter = 7;
static char *_wrap_const_Reg_BICCounter_char;
static unsigned short const  _wrap_const_RegBitShift_BICCounter = 0;
static char *_wrap_const_RegBitShift_BICCounter_char;
static unsigned short const  _wrap_const_RegBitMask_BICCounter = 0xFFF;
static char *_wrap_const_RegBitMask_BICCounter_char;
static unsigned short const  _wrap_const_RegBitShift_Test = 0xC;
static char *_wrap_const_RegBitShift_Test_char;
static unsigned short const  _wrap_const_RegBitMask_Test = 0xF;
static char *_wrap_const_RegBitMask_Test_char;
static long const  _wrap_const_RegISA_ImageData = 0x000;
static char *_wrap_const_RegISA_ImageData_char;
static long const  _wrap_const_Reg_ImageData = 8;
static char *_wrap_const_Reg_ImageData_char;
static unsigned short const  _wrap_const_RegBitShift_ImageData = 0;
static char *_wrap_const_RegBitShift_ImageData_char;
static unsigned short const  _wrap_const_RegBitMask_ImageData = 0xFFFF;
static char *_wrap_const_RegBitMask_ImageData_char;
static long const  _wrap_const_RegISA_TempData = 0x002;
static char *_wrap_const_RegISA_TempData_char;
static long const  _wrap_const_Reg_TempData = 9;
static char *_wrap_const_Reg_TempData_char;
static unsigned short const  _wrap_const_RegBitShift_TempData = 0;
static char *_wrap_const_RegBitShift_TempData_char;
static unsigned short const  _wrap_const_RegBitMask_TempData = 0xFF;
static char *_wrap_const_RegBitMask_TempData_char;
static long const  _wrap_const_RegISA_Status = 0x006;
static char *_wrap_const_RegISA_Status_char;
static long const  _wrap_const_Reg_Status = 10;
static char *_wrap_const_Reg_Status_char;
static unsigned short const  _wrap_const_RegBit_Exposing = 0x1;
static char *_wrap_const_RegBit_Exposing_char;
static unsigned short const  _wrap_const_RegBit_LineDone = 0x2;
static char *_wrap_const_RegBit_LineDone_char;
static unsigned short const  _wrap_const_RegBit_CacheReadOK = 0x4;
static char *_wrap_const_RegBit_CacheReadOK_char;
static unsigned short const  _wrap_const_RegBit_TempAtMin = 0x10;
static char *_wrap_const_RegBit_TempAtMin_char;
static unsigned short const  _wrap_const_RegBit_TempAtMax = 0x20;
static char *_wrap_const_RegBit_TempAtMax_char;
static unsigned short const  _wrap_const_RegBit_ShutdownComplete = 0x40;
static char *_wrap_const_RegBit_ShutdownComplete_char;
static unsigned short const  _wrap_const_RegBit_TempAtSetPoint = 0x80;
static char *_wrap_const_RegBit_TempAtSetPoint_char;
static unsigned short const  _wrap_const_RegBit_GotTrigger = 0x400;
static char *_wrap_const_RegBit_GotTrigger_char;
static unsigned short const  _wrap_const_RegBit_FrameDone = 0x800;
static char *_wrap_const_RegBit_FrameDone_char;
static unsigned short const  _wrap_const_RegBit_LoopbackTest = 0x8000;
static char *_wrap_const_RegBit_LoopbackTest_char;
static long const  _wrap_const_RegISA_CommandReadback = 0x008;
static char *_wrap_const_RegISA_CommandReadback_char;
static long const  _wrap_const_Reg_CommandReadback = 11;
static char *_wrap_const_Reg_CommandReadback_char;
/* object.swg
 *
 * Tcl8.x - Object oriented runtime functions
 */

typedef int (*swig_wrapper)(ClientData, Tcl_Interp *, int, Tcl_Obj *CONST []);

typedef struct swig_method { 
  const char     *name;
  swig_wrapper   method;
} swig_method;

typedef struct swig_attribute {
  const char     *name;
  swig_wrapper   getmethod;
  swig_wrapper   setmethod;
} swig_attribute;
  
typedef struct swig_class {
  const char        *name;
  swig_type_info  **type;
  swig_wrapper      constructor;
  void             (*destructor)(void *);
  swig_method      *methods;
  swig_attribute   *attributes;
} swig_class;

typedef struct swig_instance {
  Tcl_Obj       *thisptr;
  void          *thisvalue;
  swig_class   *classptr;
  int            destroy;
} swig_instance;

static void SwigObjectDelete(ClientData clientData) {
  swig_instance *si = (swig_instance *) clientData;
  if (si->destroy) {
    if (si->classptr->destructor) {
      (si->classptr->destructor)(si->thisvalue);
    }
  }
  Tcl_DecrRefCount(si->thisptr);
  free(si);
}

/* Function to invoke object methods given an instance */
static int
SwigMethodCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST _objv[])
{
  char *method, *attrname;
  swig_instance  *inst = (swig_instance *) clientData;
  swig_method    *meth;
  swig_attribute *attr;
  Tcl_Obj         *oldarg;
  Tcl_Obj         **objv;
  int              rcode;

  objv = (Tcl_Obj **) _objv;
  if (objc < 2) {
    Tcl_SetResult(interp,"wrong # args.", TCL_STATIC);
    return TCL_ERROR;
  }
  meth = inst->classptr->methods;
  method = Tcl_GetStringFromObj(objv[1],NULL);

  /* Check for methods */
  while (meth && meth->name) {
    if (strcmp(meth->name,method) == 0) {
      oldarg = objv[1];
      objv[1] = inst->thisptr;
      Tcl_IncrRefCount(inst->thisptr);
      rcode = (*meth->method)(clientData,interp,objc,objv);
      objv[1] = oldarg;
      Tcl_DecrRefCount(inst->thisptr);
      return rcode;
    }
    meth++;
  }
  /* Check class methods for a match */
  if (strcmp(method,"cget") == 0) {
    if (objc < 3) {
      Tcl_SetResult(interp,"wrong # args.", TCL_STATIC);
      return TCL_ERROR;
    }
    attrname = Tcl_GetStringFromObj(objv[2],NULL);
    attr = inst->classptr->attributes;
    while (attr && attr->name) {
      if ((strcmp(attr->name, attrname) == 0) && (attr->getmethod)) {
	oldarg = objv[1];
	objv[1] = inst->thisptr;
	Tcl_IncrRefCount(inst->thisptr);
	rcode = (*attr->getmethod)(clientData,interp,2, objv);
	objv[1] = oldarg;
	Tcl_DecrRefCount(inst->thisptr);
	return rcode;
      }
      attr++;
    }
    if (strcmp(attrname, "-this") == 0) {
      Tcl_SetObjResult(interp, Tcl_DuplicateObj(inst->thisptr));
      return TCL_OK;
    }
    Tcl_SetResult(interp,"Invalid attribute.", TCL_STATIC);
    return TCL_ERROR;
  } else if (strcmp(method, "configure") == 0) {
    int i;
    if (objc < 4) {
      Tcl_SetResult(interp,"wrong # args.", TCL_STATIC);
      return TCL_ERROR;
    }
    i = 2;
    while (i < objc) {
      attrname = Tcl_GetStringFromObj(objv[i],NULL);
      attr = inst->classptr->attributes;
      while (attr && attr->name) {
	if ((strcmp(attr->name, attrname) == 0) && (attr->setmethod)) {
	  oldarg = objv[i];
	  objv[i] = inst->thisptr;
	  Tcl_IncrRefCount(inst->thisptr);
	  rcode = (*attr->setmethod)(clientData,interp,3, &objv[i-1]);
	  objv[i] = oldarg;
	  Tcl_DecrRefCount(inst->thisptr);
	  if (rcode != TCL_OK) return rcode;
	  i+=2;
	  break;
	}
	attr++;
      }
      if (inst->classptr->attributes && !(attr->name)) {
	Tcl_SetResult(interp,"Invalid attribute name.", TCL_STATIC);
	return TCL_ERROR;
      }
    }
    return TCL_OK;
  } else {
    Tcl_SetResult(interp,"Invalid method. Must be one of: configure cget ", TCL_STATIC);
    meth = inst->classptr->methods;
    while (meth && meth->name) {
      Tcl_AppendElement(interp, meth->name);
      meth++;
    }
    return TCL_ERROR;
  }

  
}

/* Function to create objects */
static int 
SwigObjectCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[])
{
    Tcl_Obj          *newObj = 0;
    void             *thisvalue = 0;
    swig_instance   *newinst = 0;
    swig_class      *classptr = (swig_class *) clientData;
    swig_wrapper     cons = 0;
    char             *name = 0;
    int               firstarg = 0;
    int               thisarg = 0;
    int               destroy = 1; 
    Tcl_CmdInfo       ci;

    if (!classptr) {
      Tcl_SetResult(interp,"swig: internal runtime error. No class object defined.", TCL_STATIC);
      return TCL_ERROR;
    }
    cons = classptr->constructor;
    if (objc > 1) {
      char *s = Tcl_GetStringFromObj(objv[1],NULL);
      if (strcmp(s,"-this") == 0) {
	thisarg = 2;
	cons = 0;
      } else if (strcmp(s,"-args") == 0) {
	firstarg = 1;
      } else if (objc == 2) {
	firstarg = 1;
	name = s;
      } else if (objc >= 3) {
	char *s1;
	name = s;
	s1 = Tcl_GetStringFromObj(objv[2],NULL);
	if (strcmp(s1,"-this") == 0) {
	  thisarg = 3;
	  cons = 0;
	} else {
	  firstarg = 1;
	}
      }
    }
    if (cons) {
      int result;
      result = (*cons)(0, interp, objc-firstarg, &objv[firstarg]);
      if (result != TCL_OK) {
	return result;
      }
      newObj = Tcl_DuplicateObj(Tcl_GetObjResult(interp));
      if (!name) name = Tcl_GetStringFromObj(newObj,NULL);
    } else if (thisarg > 0) {
      if (thisarg < objc) {
	destroy = 0;
	newObj = Tcl_DuplicateObj(objv[thisarg]);
	if (!name) name = Tcl_GetStringFromObj(newObj,NULL);
      } else {
	Tcl_SetResult(interp,"wrong # args.", TCL_STATIC);
	return TCL_ERROR;
      }
    } else {
      Tcl_SetResult(interp,"No constructor available.", TCL_STATIC);
      return TCL_ERROR;
    }
    if (!Tcl_GetCommandInfo(interp,name,&ci)) {
      if (SWIG_ConvertPtr(interp,newObj, (void **) &thisvalue, *(classptr->type)) == TCL_ERROR) {
	Tcl_DecrRefCount(newObj);
	return TCL_ERROR;
      }
      newinst = (swig_instance *) malloc(sizeof(swig_instance));
      newinst->thisptr = newObj;
      Tcl_IncrRefCount(newObj);
      newinst->thisvalue = thisvalue;
      newinst->classptr = classptr;
      newinst->destroy = destroy;
      Tcl_CreateObjCommand(interp,name, SwigMethodCmd, (ClientData) newinst, SwigObjectDelete);
      return TCL_OK;
    } else {
      Tcl_SetResult(interp,"Object name already exists!", TCL_STATIC);
      return TCL_ERROR;
    }
}

static char *swig_int_get(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {
    int *addr ;
    Tcl_Obj *value;
    
    addr = (int *) clientData;
    value = Tcl_NewIntObj((int) *addr);
    Tcl_SetVar2(interp,name1,name2,Tcl_GetStringFromObj(value,NULL), flags);
    Tcl_DecrRefCount(value);
    return NULL;
}


static char *swig_int_set(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {
    int *addr ;
    char *value;
    
    addr = (int *) clientData;
    value = Tcl_GetVar2(interp, name1, name2, flags);
    if (!value) return NULL;
    *(addr) = (int ) atol(value);
    return NULL;
}


static char *swig_readonly(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {
    return "Variable is read-only";
}


static char *swig_p_char_get(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {
    char **addr ;
    Tcl_Obj *value;
    
    addr = (char **) clientData;
    Tcl_SetVar2(interp,name1,name2,*addr, flags);
    return NULL;
}


static char *swig_p_char_set(ClientData clientData, Tcl_Interp *interp, char *name1, char *name2, int flags) {
    char **addr ;
    char *value;
    
    addr = (char **) clientData;
    value = Tcl_GetVar2(interp, name1, name2, flags);
    if (!value) return NULL;
    if (*addr) free(*addr);
    *addr = (char *) malloc(strlen(value)+1);
    strcpy(*addr,value);
    return NULL;
}


static int
_wrap_new_CCameraIO(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *result ;
    
    if (SWIG_GetArgs(interp, objc, objv,":new_CCameraIO ") == TCL_ERROR) return TCL_ERROR;
    result = (CCameraIO *)new CCameraIO();
    Tcl_SetObjResult(interp,SWIG_NewPointerObj((void *) result,SWIGTYPE_p_CCameraIO));
    return TCL_OK;
}

static int
_wrap_delete_CCameraIO(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:delete_CCameraIO self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    delete arg0;
    return TCL_OK;
}

static int
_wrap_CCameraIO_InitDriver(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_InitDriver self camnum ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->InitDriver(arg1);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_ReadLine(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    long arg1 ;
    long arg2 ;
    unsigned short *arg3 ;
    long result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pllp:CCameraIO_ReadLine self SkipPixels Pixels pLineBuffer ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2,&arg3, SWIGTYPE_p_unsigned_short) == TCL_ERROR) return TCL_ERROR;
    result = (long )arg0->ReadLine(arg1,arg2,arg3);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_Write(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    unsigned short arg2 ;
    long result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"phh:CCameraIO_Write self reg val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2) == TCL_ERROR) return TCL_ERROR;
    result = (long )arg0->Write(arg1,arg2);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_Read(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    unsigned short *arg2 ;
    long result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"php:CCameraIO_Read self reg val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2, SWIGTYPE_p_unsigned_short) == TCL_ERROR) return TCL_ERROR;
    result = (long )arg0->Read(arg1,*arg2);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Status(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Status self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int )arg0->read_Status();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Present(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Present self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_Present();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Shutter(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Shutter self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_Shutter();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_Shutter(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_Shutter self val ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->write_Shutter(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_ForceShutterOpen(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_ForceShutterOpen self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_ForceShutterOpen();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_ForceShutterOpen(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_ForceShutterOpen self val ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->write_ForceShutterOpen(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_LongCable(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_LongCable self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_LongCable();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_LongCable(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_LongCable self val ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->write_LongCable(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Mode(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Mode self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short )arg0->read_Mode();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_Mode(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_write_Mode self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->write_Mode(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_TestBits(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_TestBits self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short )arg0->read_TestBits();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_TestBits(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_write_TestBits self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->write_TestBits(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Test2Bits(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Test2Bits self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short )arg0->read_Test2Bits();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_Test2Bits(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_write_Test2Bits self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->write_Test2Bits(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_FastReadout(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_FastReadout self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_FastReadout();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_FastReadout(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_FastReadout self val ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->write_FastReadout(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_UseTrigger(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_UseTrigger self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->read_UseTrigger();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_UseTrigger(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_UseTrigger self val ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->write_UseTrigger(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_HighPriority_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_HighPriority_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_HighPriority = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_HighPriority_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_HighPriority_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_HighPriority);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PPRepeat_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_PPRepeat_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_PPRepeat = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PPRepeat_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_PPRepeat_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_PPRepeat);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_DataBits_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_DataBits_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_DataBits = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_DataBits_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_DataBits_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_DataBits);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutter_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_FastShutter_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_FastShutter = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutter_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_FastShutter_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_FastShutter);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_GuiderRelays_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_GuiderRelays_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_GuiderRelays = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_GuiderRelays_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_GuiderRelays_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_GuiderRelays);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxBinX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_MaxBinX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_MaxBinX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxBinX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_MaxBinX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_MaxBinX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxBinY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_MaxBinY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_MaxBinY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxBinY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_MaxBinY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_MaxBinY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxExposure_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_MaxExposure_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_MaxExposure = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MaxExposure_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_MaxExposure_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_MaxExposure);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MinExposure_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_MinExposure_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_MinExposure = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_MinExposure_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_MinExposure_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_MinExposure);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Timeout_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_Timeout_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Timeout = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Timeout_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Timeout_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_Timeout);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_CoolerSetPoint(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_CoolerSetPoint self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double )arg0->read_CoolerSetPoint();
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_CoolerSetPoint(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_write_CoolerSetPoint self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->write_CoolerSetPoint(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_CoolerStatus(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_CoolerStatus self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int )arg0->read_CoolerStatus();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_CoolerMode(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_CoolerMode self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int )arg0->read_CoolerMode();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_write_CoolerMode(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_write_CoolerMode self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->write_CoolerMode((Camera_CoolerMode )arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_read_Temperature(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_read_Temperature self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double )arg0->read_Temperature();
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempControl_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_TempControl_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_TempControl = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempControl_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_TempControl_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_TempControl);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempCalibration_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_TempCalibration_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_TempCalibration = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempCalibration_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_TempCalibration_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_TempCalibration);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempScale_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_TempScale_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_TempScale = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TempScale_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_TempScale_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_TempScale);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BinX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_BinX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_BinX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BinX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_BinX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_BinX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BinY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_BinY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_BinY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BinY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_BinY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_BinY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_StartX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_StartX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_StartX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_StartX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_StartX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_StartX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_StartY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_StartY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_StartY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_StartY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_StartY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_StartY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_NumX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_NumX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_NumX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_NumX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_NumX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_NumX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_NumY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_NumY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_NumY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_NumY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_NumY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_NumY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Columns_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_Columns_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Columns = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Columns_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Columns_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_Columns);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Rows_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_Rows_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Rows = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Rows_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Rows_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_Rows);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ImgColumns_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ImgColumns_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ImgColumns = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ImgColumns_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ImgColumns_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ImgColumns);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ImgRows_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ImgRows_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ImgRows = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ImgRows_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ImgRows_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ImgRows);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SkipC_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_SkipC_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_SkipC = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SkipC_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_SkipC_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_SkipC);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SkipR_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_SkipR_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_SkipR = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SkipR_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_SkipR_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_SkipR);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_HFlush_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_HFlush_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_HFlush = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_HFlush_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_HFlush_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_HFlush);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_VFlush_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_VFlush_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_VFlush = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_VFlush_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_VFlush_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_VFlush);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BIC_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_BIC_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_BIC = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BIC_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_BIC_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_BIC);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BIR_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_BIR_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_BIR = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_BIR_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_BIR_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_BIR);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Sensor_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    char *result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Sensor_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (char *)(char *) (arg0->m_Sensor);
    Tcl_SetObjResult(interp,Tcl_NewStringObj(result,-1));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Color_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_Color_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_Color = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Color_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Color_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_Color);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Noise_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_Noise_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Noise = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Noise_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Noise_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_Noise);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Gain_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_Gain_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Gain = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Gain_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Gain_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_Gain);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PixelXSize_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_PixelXSize_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_PixelXSize = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PixelXSize_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_PixelXSize_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_PixelXSize);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PixelYSize_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pd:CCameraIO_m_PixelYSize_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_PixelYSize = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_PixelYSize_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_PixelYSize_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (double ) (arg0->m_PixelYSize);
    Tcl_SetObjResult(interp,Tcl_NewDoubleObj((double) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_Reset(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_Reset self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    arg0->Reset();
    return TCL_OK;
}

static int
_wrap_CCameraIO_Flush(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 = -1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p|h:CCameraIO_Flush self ?Rows? ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->Flush(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_AuxOutput(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned char arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pb:CCameraIO_AuxOutput self val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->AuxOutput(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_RegWrite(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    unsigned short arg2 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"phh:CCameraIO_RegWrite self reg val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2) == TCL_ERROR) return TCL_ERROR;
    arg0->RegWrite(arg1,arg2);
    return TCL_OK;
}

static int
_wrap_CCameraIO_RegRead(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    unsigned short *arg2 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"php:CCameraIO_RegRead self reg val ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2, SWIGTYPE_p_unsigned_short) == TCL_ERROR) return TCL_ERROR;
    arg0->RegRead(arg1,*arg2);
    return TCL_OK;
}

static int
_wrap_CCameraIO_FilterHome(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_FilterHome self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->FilterHome();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_FilterSet(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_FilterSet self Slot ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->FilterSet(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_Expose(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    bool arg2 ;
    int tempb2 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pdi:CCameraIO_Expose self Duration Light ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&tempb2) == TCL_ERROR) return TCL_ERROR;
    arg2 = (bool) tempb2;
    result = (bool )arg0->Expose(arg1,arg2);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_GetImage(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short *arg1 ;
    short *arg2 ;
    short *arg3 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pppp:CCameraIO_GetImage self pImageData xSize ySize ",&arg0, SWIGTYPE_p_CCameraIO,&arg1, SWIGTYPE_p_unsigned_short,&arg2, SWIGTYPE_p_short,&arg3, SWIGTYPE_p_short) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->GetImage(arg1,*arg2,*arg3);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_BufferImage(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    char *arg1 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ps:CCameraIO_BufferImage self bufferName ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->BufferImage(arg1);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_DigitizeLine(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_DigitizeLine self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->DigitizeLine();
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_GetLine(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short *arg1 ;
    short *arg2 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ppp:CCameraIO_GetLine self pLineData xSize ",&arg0, SWIGTYPE_p_CCameraIO,&arg1, SWIGTYPE_p_unsigned_short,&arg2, SWIGTYPE_p_short) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->GetLine(arg1,*arg2);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_BufferDriftScan(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    char *arg1 ;
    int arg2 ;
    int arg3 ;
    int arg4 ;
    int arg5 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"psiiii:CCameraIO_BufferDriftScan self bufferName delay rowCount nblock npipe ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2,&arg3,&arg4,&arg5) == TCL_ERROR) return TCL_ERROR;
    result = (bool )arg0->BufferDriftScan(arg1,arg2,arg3,arg4,arg5);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_Snap(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    bool arg2 ;
    unsigned short *arg3 ;
    short *arg4 ;
    short *arg5 ;
    int tempb2 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pdippp:CCameraIO_Snap self Duration Light pImageData xSize ySize ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&tempb2,&arg3, SWIGTYPE_p_unsigned_short,&arg4, SWIGTYPE_p_short,&arg5, SWIGTYPE_p_short) == TCL_ERROR) return TCL_ERROR;
    arg2 = (bool) tempb2;
    result = (bool )arg0->Snap(arg1,arg2,arg3,*arg4,*arg5);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TDI_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_TDI_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_TDI = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_TDI_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_TDI_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_TDI);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforTrigger_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_WaitingforTrigger_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_WaitingforTrigger = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforTrigger_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_WaitingforTrigger_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_WaitingforTrigger);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforImage_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_WaitingforImage_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_WaitingforImage = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforImage_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_WaitingforImage_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_WaitingforImage);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforLine_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_WaitingforLine_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_WaitingforLine = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_WaitingforLine_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_WaitingforLine_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_WaitingforLine);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_RegisterOffset_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_RegisterOffset_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_RegisterOffset = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_RegisterOffset_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_RegisterOffset_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_RegisterOffset);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FilterPosition_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_FilterPosition_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_FilterPosition = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FilterPosition_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_FilterPosition_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_FilterPosition);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FilterStepPos_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_FilterStepPos_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_FilterStepPos = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FilterStepPos_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_FilterStepPos_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_FilterStepPos);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Shutter_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool arg1 ;
    int tempb1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_Shutter_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&tempb1) == TCL_ERROR) return TCL_ERROR;
    arg1 = (bool) tempb1;
    arg0->m_Shutter = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Shutter_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    bool result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Shutter_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (bool ) (arg0->m_Shutter);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Status_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_Status_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Status = (Camera_Status )arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Status_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Status_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int ) (arg0->m_Status);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Interface_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_Interface_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_Interface = (Camera_Interface )arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_Interface_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_Interface_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int ) (arg0->m_Interface);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SensorType_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_SensorType_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_SensorType = (Camera_SensorType )arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_SensorType_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_SensorType_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int ) (arg0->m_SensorType);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_CoolerStatus_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_CoolerStatus_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_CoolerStatus = (Camera_CoolerStatus )arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_CoolerStatus_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_CoolerStatus_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (int ) (arg0->m_CoolerStatus);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_IRQMask_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned int arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pi:CCameraIO_m_IRQMask_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_IRQMask = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_IRQMask_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned int result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_IRQMask_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned int ) (arg0->m_IRQMask);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBinX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureBinX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureBinX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBinX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureBinX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureBinX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBinY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureBinY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureBinY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBinY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureBinY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureBinY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureStartX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureStartX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureStartX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureStartX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureStartX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureStartX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureStartY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureStartY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureStartY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureStartY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureStartY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureStartY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureNumX_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureNumX_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureNumX = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureNumX_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureNumX_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureNumX);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureNumY_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureNumY_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureNumY = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureNumY_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureNumY_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureNumY);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureColumns_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureColumns_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureColumns = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureColumns_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureColumns_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureColumns);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureRows_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureRows_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureRows = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureRows_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureRows_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureRows);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureSkipC_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureSkipC_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureSkipC = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureSkipC_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureSkipC_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureSkipC);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureSkipR_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureSkipR_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureSkipR = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureSkipR_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureSkipR_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureSkipR);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureHFlush_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureHFlush_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureHFlush = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureHFlush_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureHFlush_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureHFlush);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureVFlush_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureVFlush_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureVFlush = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureVFlush_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureVFlush_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureVFlush);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBIC_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureBIC_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureBIC = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBIC_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureBIC_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureBIC);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBIR_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureBIR_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureBIR = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureBIR_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureBIR_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (short ) (arg0->m_ExposureBIR);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureAIC_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureAIC_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureAIC = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureAIC_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureAIC_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short ) (arg0->m_ExposureAIC);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureRemainingLines_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureRemainingLines_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureRemainingLines = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureRemainingLines_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureRemainingLines_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short ) (arg0->m_ExposureRemainingLines);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureAIR_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_ExposureAIR_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_ExposureAIR = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_ExposureAIR_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_ExposureAIR_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short ) (arg0->m_ExposureAIR);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_RegShadow_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short *result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_RegShadow_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short *)(unsigned short *) (arg0->m_RegShadow);
    Tcl_SetObjResult(interp,SWIG_NewPointerObj((void *) result,SWIGTYPE_p_unsigned_short));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutterBits_Mode_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_FastShutterBits_Mode_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_FastShutterBits_Mode = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutterBits_Mode_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_FastShutterBits_Mode_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short ) (arg0->m_FastShutterBits_Mode);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutterBits_Test_set(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_m_FastShutterBits_Test_set self value ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->m_FastShutterBits_Test = arg1;
    return TCL_OK;
}

static int
_wrap_CCameraIO_m_FastShutterBits_Test_get(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short result ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_m_FastShutterBits_Test_get self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    result = (unsigned short ) (arg0->m_FastShutterBits_Test);
    Tcl_SetObjResult(interp,Tcl_NewIntObj((long) result));
    return TCL_OK;
}

static int
_wrap_CCameraIO_LoadLineCounter(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"ph:CCameraIO_LoadLineCounter self rows ",&arg0, SWIGTYPE_p_CCameraIO,&arg1) == TCL_ERROR) return TCL_ERROR;
    arg0->LoadLineCounter(arg1);
    return TCL_OK;
}

static int
_wrap_CCameraIO_LoadColumnLayout(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    unsigned short arg1 ;
    unsigned short arg2 ;
    unsigned short arg3 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"phhh:CCameraIO_LoadColumnLayout self aic bic pixels ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2,&arg3) == TCL_ERROR) return TCL_ERROR;
    arg0->LoadColumnLayout(arg1,arg2,arg3);
    return TCL_OK;
}

static int
_wrap_CCameraIO_LoadTimerAndBinning(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    double arg1 ;
    unsigned short arg2 ;
    unsigned short arg3 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"pdhh:CCameraIO_LoadTimerAndBinning self Duration HBin VBin ",&arg0, SWIGTYPE_p_CCameraIO,&arg1,&arg2,&arg3) == TCL_ERROR) return TCL_ERROR;
    arg0->LoadTimerAndBinning(arg1,arg2,arg3);
    return TCL_OK;
}

static int
_wrap_CCameraIO_StartFlushing(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_StartFlushing self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    arg0->StartFlushing();
    return TCL_OK;
}

static int
_wrap_CCameraIO_StopFlushing(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_StopFlushing self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    arg0->StopFlushing();
    return TCL_OK;
}

static int
_wrap_CCameraIO_InitDefaults(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) {
    CCameraIO *arg0 ;
    
    if (SWIG_GetArgs(interp, objc, objv,"p:CCameraIO_InitDefaults self ",&arg0, SWIGTYPE_p_CCameraIO) == TCL_ERROR) return TCL_ERROR;
    arg0->InitDefaults();
    return TCL_OK;
}

static void swig_delete_CCameraIO(void *obj) {
    delete (CCameraIO *) obj;
}
static swig_method swig_CCameraIO_methods[] = {
    {"InitDriver", _wrap_CCameraIO_InitDriver}, 
    {"ReadLine", _wrap_CCameraIO_ReadLine}, 
    {"Write", _wrap_CCameraIO_Write}, 
    {"Read", _wrap_CCameraIO_Read}, 
    {"read_Status", _wrap_CCameraIO_read_Status}, 
    {"read_Present", _wrap_CCameraIO_read_Present}, 
    {"read_Shutter", _wrap_CCameraIO_read_Shutter}, 
    {"write_Shutter", _wrap_CCameraIO_write_Shutter}, 
    {"read_ForceShutterOpen", _wrap_CCameraIO_read_ForceShutterOpen}, 
    {"write_ForceShutterOpen", _wrap_CCameraIO_write_ForceShutterOpen}, 
    {"read_LongCable", _wrap_CCameraIO_read_LongCable}, 
    {"write_LongCable", _wrap_CCameraIO_write_LongCable}, 
    {"read_Mode", _wrap_CCameraIO_read_Mode}, 
    {"write_Mode", _wrap_CCameraIO_write_Mode}, 
    {"read_TestBits", _wrap_CCameraIO_read_TestBits}, 
    {"write_TestBits", _wrap_CCameraIO_write_TestBits}, 
    {"read_Test2Bits", _wrap_CCameraIO_read_Test2Bits}, 
    {"write_Test2Bits", _wrap_CCameraIO_write_Test2Bits}, 
    {"read_FastReadout", _wrap_CCameraIO_read_FastReadout}, 
    {"write_FastReadout", _wrap_CCameraIO_write_FastReadout}, 
    {"read_UseTrigger", _wrap_CCameraIO_read_UseTrigger}, 
    {"write_UseTrigger", _wrap_CCameraIO_write_UseTrigger}, 
    {"read_CoolerSetPoint", _wrap_CCameraIO_read_CoolerSetPoint}, 
    {"write_CoolerSetPoint", _wrap_CCameraIO_write_CoolerSetPoint}, 
    {"read_CoolerStatus", _wrap_CCameraIO_read_CoolerStatus}, 
    {"read_CoolerMode", _wrap_CCameraIO_read_CoolerMode}, 
    {"write_CoolerMode", _wrap_CCameraIO_write_CoolerMode}, 
    {"read_Temperature", _wrap_CCameraIO_read_Temperature}, 
    {"Reset", _wrap_CCameraIO_Reset}, 
    {"Flush", _wrap_CCameraIO_Flush}, 
    {"AuxOutput", _wrap_CCameraIO_AuxOutput}, 
    {"RegWrite", _wrap_CCameraIO_RegWrite}, 
    {"RegRead", _wrap_CCameraIO_RegRead}, 
    {"FilterHome", _wrap_CCameraIO_FilterHome}, 
    {"FilterSet", _wrap_CCameraIO_FilterSet}, 
    {"Expose", _wrap_CCameraIO_Expose}, 
    {"GetImage", _wrap_CCameraIO_GetImage}, 
    {"BufferImage", _wrap_CCameraIO_BufferImage}, 
    {"DigitizeLine", _wrap_CCameraIO_DigitizeLine}, 
    {"GetLine", _wrap_CCameraIO_GetLine}, 
    {"BufferDriftScan", _wrap_CCameraIO_BufferDriftScan}, 
    {"Snap", _wrap_CCameraIO_Snap}, 
    {"LoadLineCounter", _wrap_CCameraIO_LoadLineCounter}, 
    {"LoadColumnLayout", _wrap_CCameraIO_LoadColumnLayout}, 
    {"LoadTimerAndBinning", _wrap_CCameraIO_LoadTimerAndBinning}, 
    {"StartFlushing", _wrap_CCameraIO_StartFlushing}, 
    {"StopFlushing", _wrap_CCameraIO_StopFlushing}, 
    {"InitDefaults", _wrap_CCameraIO_InitDefaults}, 
    {0,0}
};
static swig_attribute swig_CCameraIO_attributes[] = {
    { "-m_HighPriority",_wrap_CCameraIO_m_HighPriority_get, _wrap_CCameraIO_m_HighPriority_set},
    { "-m_PPRepeat",_wrap_CCameraIO_m_PPRepeat_get, _wrap_CCameraIO_m_PPRepeat_set},
    { "-m_DataBits",_wrap_CCameraIO_m_DataBits_get, _wrap_CCameraIO_m_DataBits_set},
    { "-m_FastShutter",_wrap_CCameraIO_m_FastShutter_get, _wrap_CCameraIO_m_FastShutter_set},
    { "-m_GuiderRelays",_wrap_CCameraIO_m_GuiderRelays_get, _wrap_CCameraIO_m_GuiderRelays_set},
    { "-m_MaxBinX",_wrap_CCameraIO_m_MaxBinX_get, _wrap_CCameraIO_m_MaxBinX_set},
    { "-m_MaxBinY",_wrap_CCameraIO_m_MaxBinY_get, _wrap_CCameraIO_m_MaxBinY_set},
    { "-m_MaxExposure",_wrap_CCameraIO_m_MaxExposure_get, _wrap_CCameraIO_m_MaxExposure_set},
    { "-m_MinExposure",_wrap_CCameraIO_m_MinExposure_get, _wrap_CCameraIO_m_MinExposure_set},
    { "-m_Timeout",_wrap_CCameraIO_m_Timeout_get, _wrap_CCameraIO_m_Timeout_set},
    { "-m_TempControl",_wrap_CCameraIO_m_TempControl_get, _wrap_CCameraIO_m_TempControl_set},
    { "-m_TempCalibration",_wrap_CCameraIO_m_TempCalibration_get, _wrap_CCameraIO_m_TempCalibration_set},
    { "-m_TempScale",_wrap_CCameraIO_m_TempScale_get, _wrap_CCameraIO_m_TempScale_set},
    { "-m_BinX",_wrap_CCameraIO_m_BinX_get, _wrap_CCameraIO_m_BinX_set},
    { "-m_BinY",_wrap_CCameraIO_m_BinY_get, _wrap_CCameraIO_m_BinY_set},
    { "-m_StartX",_wrap_CCameraIO_m_StartX_get, _wrap_CCameraIO_m_StartX_set},
    { "-m_StartY",_wrap_CCameraIO_m_StartY_get, _wrap_CCameraIO_m_StartY_set},
    { "-m_NumX",_wrap_CCameraIO_m_NumX_get, _wrap_CCameraIO_m_NumX_set},
    { "-m_NumY",_wrap_CCameraIO_m_NumY_get, _wrap_CCameraIO_m_NumY_set},
    { "-m_Columns",_wrap_CCameraIO_m_Columns_get, _wrap_CCameraIO_m_Columns_set},
    { "-m_Rows",_wrap_CCameraIO_m_Rows_get, _wrap_CCameraIO_m_Rows_set},
    { "-m_ImgColumns",_wrap_CCameraIO_m_ImgColumns_get, _wrap_CCameraIO_m_ImgColumns_set},
    { "-m_ImgRows",_wrap_CCameraIO_m_ImgRows_get, _wrap_CCameraIO_m_ImgRows_set},
    { "-m_SkipC",_wrap_CCameraIO_m_SkipC_get, _wrap_CCameraIO_m_SkipC_set},
    { "-m_SkipR",_wrap_CCameraIO_m_SkipR_get, _wrap_CCameraIO_m_SkipR_set},
    { "-m_HFlush",_wrap_CCameraIO_m_HFlush_get, _wrap_CCameraIO_m_HFlush_set},
    { "-m_VFlush",_wrap_CCameraIO_m_VFlush_get, _wrap_CCameraIO_m_VFlush_set},
    { "-m_BIC",_wrap_CCameraIO_m_BIC_get, _wrap_CCameraIO_m_BIC_set},
    { "-m_BIR",_wrap_CCameraIO_m_BIR_get, _wrap_CCameraIO_m_BIR_set},
    { "-m_Sensor",_wrap_CCameraIO_m_Sensor_get, 0 },
    { "-m_Color",_wrap_CCameraIO_m_Color_get, _wrap_CCameraIO_m_Color_set},
    { "-m_Noise",_wrap_CCameraIO_m_Noise_get, _wrap_CCameraIO_m_Noise_set},
    { "-m_Gain",_wrap_CCameraIO_m_Gain_get, _wrap_CCameraIO_m_Gain_set},
    { "-m_PixelXSize",_wrap_CCameraIO_m_PixelXSize_get, _wrap_CCameraIO_m_PixelXSize_set},
    { "-m_PixelYSize",_wrap_CCameraIO_m_PixelYSize_get, _wrap_CCameraIO_m_PixelYSize_set},
    { "-m_TDI",_wrap_CCameraIO_m_TDI_get, _wrap_CCameraIO_m_TDI_set},
    { "-m_WaitingforTrigger",_wrap_CCameraIO_m_WaitingforTrigger_get, _wrap_CCameraIO_m_WaitingforTrigger_set},
    { "-m_WaitingforImage",_wrap_CCameraIO_m_WaitingforImage_get, _wrap_CCameraIO_m_WaitingforImage_set},
    { "-m_WaitingforLine",_wrap_CCameraIO_m_WaitingforLine_get, _wrap_CCameraIO_m_WaitingforLine_set},
    { "-m_RegisterOffset",_wrap_CCameraIO_m_RegisterOffset_get, _wrap_CCameraIO_m_RegisterOffset_set},
    { "-m_FilterPosition",_wrap_CCameraIO_m_FilterPosition_get, _wrap_CCameraIO_m_FilterPosition_set},
    { "-m_FilterStepPos",_wrap_CCameraIO_m_FilterStepPos_get, _wrap_CCameraIO_m_FilterStepPos_set},
    { "-m_Shutter",_wrap_CCameraIO_m_Shutter_get, _wrap_CCameraIO_m_Shutter_set},
    { "-m_Status",_wrap_CCameraIO_m_Status_get, _wrap_CCameraIO_m_Status_set},
    { "-m_Interface",_wrap_CCameraIO_m_Interface_get, _wrap_CCameraIO_m_Interface_set},
    { "-m_SensorType",_wrap_CCameraIO_m_SensorType_get, _wrap_CCameraIO_m_SensorType_set},
    { "-m_CoolerStatus",_wrap_CCameraIO_m_CoolerStatus_get, _wrap_CCameraIO_m_CoolerStatus_set},
    { "-m_IRQMask",_wrap_CCameraIO_m_IRQMask_get, _wrap_CCameraIO_m_IRQMask_set},
    { "-m_ExposureBinX",_wrap_CCameraIO_m_ExposureBinX_get, _wrap_CCameraIO_m_ExposureBinX_set},
    { "-m_ExposureBinY",_wrap_CCameraIO_m_ExposureBinY_get, _wrap_CCameraIO_m_ExposureBinY_set},
    { "-m_ExposureStartX",_wrap_CCameraIO_m_ExposureStartX_get, _wrap_CCameraIO_m_ExposureStartX_set},
    { "-m_ExposureStartY",_wrap_CCameraIO_m_ExposureStartY_get, _wrap_CCameraIO_m_ExposureStartY_set},
    { "-m_ExposureNumX",_wrap_CCameraIO_m_ExposureNumX_get, _wrap_CCameraIO_m_ExposureNumX_set},
    { "-m_ExposureNumY",_wrap_CCameraIO_m_ExposureNumY_get, _wrap_CCameraIO_m_ExposureNumY_set},
    { "-m_ExposureColumns",_wrap_CCameraIO_m_ExposureColumns_get, _wrap_CCameraIO_m_ExposureColumns_set},
    { "-m_ExposureRows",_wrap_CCameraIO_m_ExposureRows_get, _wrap_CCameraIO_m_ExposureRows_set},
    { "-m_ExposureSkipC",_wrap_CCameraIO_m_ExposureSkipC_get, _wrap_CCameraIO_m_ExposureSkipC_set},
    { "-m_ExposureSkipR",_wrap_CCameraIO_m_ExposureSkipR_get, _wrap_CCameraIO_m_ExposureSkipR_set},
    { "-m_ExposureHFlush",_wrap_CCameraIO_m_ExposureHFlush_get, _wrap_CCameraIO_m_ExposureHFlush_set},
    { "-m_ExposureVFlush",_wrap_CCameraIO_m_ExposureVFlush_get, _wrap_CCameraIO_m_ExposureVFlush_set},
    { "-m_ExposureBIC",_wrap_CCameraIO_m_ExposureBIC_get, _wrap_CCameraIO_m_ExposureBIC_set},
    { "-m_ExposureBIR",_wrap_CCameraIO_m_ExposureBIR_get, _wrap_CCameraIO_m_ExposureBIR_set},
    { "-m_ExposureAIC",_wrap_CCameraIO_m_ExposureAIC_get, _wrap_CCameraIO_m_ExposureAIC_set},
    { "-m_ExposureRemainingLines",_wrap_CCameraIO_m_ExposureRemainingLines_get, _wrap_CCameraIO_m_ExposureRemainingLines_set},
    { "-m_ExposureAIR",_wrap_CCameraIO_m_ExposureAIR_get, _wrap_CCameraIO_m_ExposureAIR_set},
    { "-m_RegShadow",_wrap_CCameraIO_m_RegShadow_get, 0 },
    { "-m_FastShutterBits_Mode",_wrap_CCameraIO_m_FastShutterBits_Mode_get, _wrap_CCameraIO_m_FastShutterBits_Mode_set},
    { "-m_FastShutterBits_Test",_wrap_CCameraIO_m_FastShutterBits_Test_get, _wrap_CCameraIO_m_FastShutterBits_Test_set},
    {0,0,0}
};
static swig_class _wrap_class_CCameraIO = { "CCameraIO", &SWIGTYPE_p_CCameraIO,_wrap_new_CCameraIO, swig_delete_CCameraIO, swig_CCameraIO_methods, swig_CCameraIO_attributes };

static swig_command_info swig_commands[] = {
    { SWIG_prefix "new_CCameraIO", _wrap_new_CCameraIO, NULL},
    { SWIG_prefix "delete_CCameraIO", _wrap_delete_CCameraIO, NULL},
    { SWIG_prefix "CCameraIO_InitDriver", _wrap_CCameraIO_InitDriver, NULL},
    { SWIG_prefix "CCameraIO_ReadLine", _wrap_CCameraIO_ReadLine, NULL},
    { SWIG_prefix "CCameraIO_Write", _wrap_CCameraIO_Write, NULL},
    { SWIG_prefix "CCameraIO_Read", _wrap_CCameraIO_Read, NULL},
    { SWIG_prefix "CCameraIO_read_Status", _wrap_CCameraIO_read_Status, NULL},
    { SWIG_prefix "CCameraIO_read_Present", _wrap_CCameraIO_read_Present, NULL},
    { SWIG_prefix "CCameraIO_read_Shutter", _wrap_CCameraIO_read_Shutter, NULL},
    { SWIG_prefix "CCameraIO_write_Shutter", _wrap_CCameraIO_write_Shutter, NULL},
    { SWIG_prefix "CCameraIO_read_ForceShutterOpen", _wrap_CCameraIO_read_ForceShutterOpen, NULL},
    { SWIG_prefix "CCameraIO_write_ForceShutterOpen", _wrap_CCameraIO_write_ForceShutterOpen, NULL},
    { SWIG_prefix "CCameraIO_read_LongCable", _wrap_CCameraIO_read_LongCable, NULL},
    { SWIG_prefix "CCameraIO_write_LongCable", _wrap_CCameraIO_write_LongCable, NULL},
    { SWIG_prefix "CCameraIO_read_Mode", _wrap_CCameraIO_read_Mode, NULL},
    { SWIG_prefix "CCameraIO_write_Mode", _wrap_CCameraIO_write_Mode, NULL},
    { SWIG_prefix "CCameraIO_read_TestBits", _wrap_CCameraIO_read_TestBits, NULL},
    { SWIG_prefix "CCameraIO_write_TestBits", _wrap_CCameraIO_write_TestBits, NULL},
    { SWIG_prefix "CCameraIO_read_Test2Bits", _wrap_CCameraIO_read_Test2Bits, NULL},
    { SWIG_prefix "CCameraIO_write_Test2Bits", _wrap_CCameraIO_write_Test2Bits, NULL},
    { SWIG_prefix "CCameraIO_read_FastReadout", _wrap_CCameraIO_read_FastReadout, NULL},
    { SWIG_prefix "CCameraIO_write_FastReadout", _wrap_CCameraIO_write_FastReadout, NULL},
    { SWIG_prefix "CCameraIO_read_UseTrigger", _wrap_CCameraIO_read_UseTrigger, NULL},
    { SWIG_prefix "CCameraIO_write_UseTrigger", _wrap_CCameraIO_write_UseTrigger, NULL},
    { SWIG_prefix "CCameraIO_m_HighPriority_set", _wrap_CCameraIO_m_HighPriority_set, NULL},
    { SWIG_prefix "CCameraIO_m_HighPriority_get", _wrap_CCameraIO_m_HighPriority_get, NULL},
    { SWIG_prefix "CCameraIO_m_PPRepeat_set", _wrap_CCameraIO_m_PPRepeat_set, NULL},
    { SWIG_prefix "CCameraIO_m_PPRepeat_get", _wrap_CCameraIO_m_PPRepeat_get, NULL},
    { SWIG_prefix "CCameraIO_m_DataBits_set", _wrap_CCameraIO_m_DataBits_set, NULL},
    { SWIG_prefix "CCameraIO_m_DataBits_get", _wrap_CCameraIO_m_DataBits_get, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutter_set", _wrap_CCameraIO_m_FastShutter_set, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutter_get", _wrap_CCameraIO_m_FastShutter_get, NULL},
    { SWIG_prefix "CCameraIO_m_GuiderRelays_set", _wrap_CCameraIO_m_GuiderRelays_set, NULL},
    { SWIG_prefix "CCameraIO_m_GuiderRelays_get", _wrap_CCameraIO_m_GuiderRelays_get, NULL},
    { SWIG_prefix "CCameraIO_m_MaxBinX_set", _wrap_CCameraIO_m_MaxBinX_set, NULL},
    { SWIG_prefix "CCameraIO_m_MaxBinX_get", _wrap_CCameraIO_m_MaxBinX_get, NULL},
    { SWIG_prefix "CCameraIO_m_MaxBinY_set", _wrap_CCameraIO_m_MaxBinY_set, NULL},
    { SWIG_prefix "CCameraIO_m_MaxBinY_get", _wrap_CCameraIO_m_MaxBinY_get, NULL},
    { SWIG_prefix "CCameraIO_m_MaxExposure_set", _wrap_CCameraIO_m_MaxExposure_set, NULL},
    { SWIG_prefix "CCameraIO_m_MaxExposure_get", _wrap_CCameraIO_m_MaxExposure_get, NULL},
    { SWIG_prefix "CCameraIO_m_MinExposure_set", _wrap_CCameraIO_m_MinExposure_set, NULL},
    { SWIG_prefix "CCameraIO_m_MinExposure_get", _wrap_CCameraIO_m_MinExposure_get, NULL},
    { SWIG_prefix "CCameraIO_m_Timeout_set", _wrap_CCameraIO_m_Timeout_set, NULL},
    { SWIG_prefix "CCameraIO_m_Timeout_get", _wrap_CCameraIO_m_Timeout_get, NULL},
    { SWIG_prefix "CCameraIO_read_CoolerSetPoint", _wrap_CCameraIO_read_CoolerSetPoint, NULL},
    { SWIG_prefix "CCameraIO_write_CoolerSetPoint", _wrap_CCameraIO_write_CoolerSetPoint, NULL},
    { SWIG_prefix "CCameraIO_read_CoolerStatus", _wrap_CCameraIO_read_CoolerStatus, NULL},
    { SWIG_prefix "CCameraIO_read_CoolerMode", _wrap_CCameraIO_read_CoolerMode, NULL},
    { SWIG_prefix "CCameraIO_write_CoolerMode", _wrap_CCameraIO_write_CoolerMode, NULL},
    { SWIG_prefix "CCameraIO_read_Temperature", _wrap_CCameraIO_read_Temperature, NULL},
    { SWIG_prefix "CCameraIO_m_TempControl_set", _wrap_CCameraIO_m_TempControl_set, NULL},
    { SWIG_prefix "CCameraIO_m_TempControl_get", _wrap_CCameraIO_m_TempControl_get, NULL},
    { SWIG_prefix "CCameraIO_m_TempCalibration_set", _wrap_CCameraIO_m_TempCalibration_set, NULL},
    { SWIG_prefix "CCameraIO_m_TempCalibration_get", _wrap_CCameraIO_m_TempCalibration_get, NULL},
    { SWIG_prefix "CCameraIO_m_TempScale_set", _wrap_CCameraIO_m_TempScale_set, NULL},
    { SWIG_prefix "CCameraIO_m_TempScale_get", _wrap_CCameraIO_m_TempScale_get, NULL},
    { SWIG_prefix "CCameraIO_m_BinX_set", _wrap_CCameraIO_m_BinX_set, NULL},
    { SWIG_prefix "CCameraIO_m_BinX_get", _wrap_CCameraIO_m_BinX_get, NULL},
    { SWIG_prefix "CCameraIO_m_BinY_set", _wrap_CCameraIO_m_BinY_set, NULL},
    { SWIG_prefix "CCameraIO_m_BinY_get", _wrap_CCameraIO_m_BinY_get, NULL},
    { SWIG_prefix "CCameraIO_m_StartX_set", _wrap_CCameraIO_m_StartX_set, NULL},
    { SWIG_prefix "CCameraIO_m_StartX_get", _wrap_CCameraIO_m_StartX_get, NULL},
    { SWIG_prefix "CCameraIO_m_StartY_set", _wrap_CCameraIO_m_StartY_set, NULL},
    { SWIG_prefix "CCameraIO_m_StartY_get", _wrap_CCameraIO_m_StartY_get, NULL},
    { SWIG_prefix "CCameraIO_m_NumX_set", _wrap_CCameraIO_m_NumX_set, NULL},
    { SWIG_prefix "CCameraIO_m_NumX_get", _wrap_CCameraIO_m_NumX_get, NULL},
    { SWIG_prefix "CCameraIO_m_NumY_set", _wrap_CCameraIO_m_NumY_set, NULL},
    { SWIG_prefix "CCameraIO_m_NumY_get", _wrap_CCameraIO_m_NumY_get, NULL},
    { SWIG_prefix "CCameraIO_m_Columns_set", _wrap_CCameraIO_m_Columns_set, NULL},
    { SWIG_prefix "CCameraIO_m_Columns_get", _wrap_CCameraIO_m_Columns_get, NULL},
    { SWIG_prefix "CCameraIO_m_Rows_set", _wrap_CCameraIO_m_Rows_set, NULL},
    { SWIG_prefix "CCameraIO_m_Rows_get", _wrap_CCameraIO_m_Rows_get, NULL},
    { SWIG_prefix "CCameraIO_m_ImgColumns_set", _wrap_CCameraIO_m_ImgColumns_set, NULL},
    { SWIG_prefix "CCameraIO_m_ImgColumns_get", _wrap_CCameraIO_m_ImgColumns_get, NULL},
    { SWIG_prefix "CCameraIO_m_ImgRows_set", _wrap_CCameraIO_m_ImgRows_set, NULL},
    { SWIG_prefix "CCameraIO_m_ImgRows_get", _wrap_CCameraIO_m_ImgRows_get, NULL},
    { SWIG_prefix "CCameraIO_m_SkipC_set", _wrap_CCameraIO_m_SkipC_set, NULL},
    { SWIG_prefix "CCameraIO_m_SkipC_get", _wrap_CCameraIO_m_SkipC_get, NULL},
    { SWIG_prefix "CCameraIO_m_SkipR_set", _wrap_CCameraIO_m_SkipR_set, NULL},
    { SWIG_prefix "CCameraIO_m_SkipR_get", _wrap_CCameraIO_m_SkipR_get, NULL},
    { SWIG_prefix "CCameraIO_m_HFlush_set", _wrap_CCameraIO_m_HFlush_set, NULL},
    { SWIG_prefix "CCameraIO_m_HFlush_get", _wrap_CCameraIO_m_HFlush_get, NULL},
    { SWIG_prefix "CCameraIO_m_VFlush_set", _wrap_CCameraIO_m_VFlush_set, NULL},
    { SWIG_prefix "CCameraIO_m_VFlush_get", _wrap_CCameraIO_m_VFlush_get, NULL},
    { SWIG_prefix "CCameraIO_m_BIC_set", _wrap_CCameraIO_m_BIC_set, NULL},
    { SWIG_prefix "CCameraIO_m_BIC_get", _wrap_CCameraIO_m_BIC_get, NULL},
    { SWIG_prefix "CCameraIO_m_BIR_set", _wrap_CCameraIO_m_BIR_set, NULL},
    { SWIG_prefix "CCameraIO_m_BIR_get", _wrap_CCameraIO_m_BIR_get, NULL},
    { SWIG_prefix "CCameraIO_m_Sensor_get", _wrap_CCameraIO_m_Sensor_get, NULL},
    { SWIG_prefix "CCameraIO_m_Color_set", _wrap_CCameraIO_m_Color_set, NULL},
    { SWIG_prefix "CCameraIO_m_Color_get", _wrap_CCameraIO_m_Color_get, NULL},
    { SWIG_prefix "CCameraIO_m_Noise_set", _wrap_CCameraIO_m_Noise_set, NULL},
    { SWIG_prefix "CCameraIO_m_Noise_get", _wrap_CCameraIO_m_Noise_get, NULL},
    { SWIG_prefix "CCameraIO_m_Gain_set", _wrap_CCameraIO_m_Gain_set, NULL},
    { SWIG_prefix "CCameraIO_m_Gain_get", _wrap_CCameraIO_m_Gain_get, NULL},
    { SWIG_prefix "CCameraIO_m_PixelXSize_set", _wrap_CCameraIO_m_PixelXSize_set, NULL},
    { SWIG_prefix "CCameraIO_m_PixelXSize_get", _wrap_CCameraIO_m_PixelXSize_get, NULL},
    { SWIG_prefix "CCameraIO_m_PixelYSize_set", _wrap_CCameraIO_m_PixelYSize_set, NULL},
    { SWIG_prefix "CCameraIO_m_PixelYSize_get", _wrap_CCameraIO_m_PixelYSize_get, NULL},
    { SWIG_prefix "CCameraIO_Reset", _wrap_CCameraIO_Reset, NULL},
    { SWIG_prefix "CCameraIO_Flush", _wrap_CCameraIO_Flush, NULL},
    { SWIG_prefix "CCameraIO_AuxOutput", _wrap_CCameraIO_AuxOutput, NULL},
    { SWIG_prefix "CCameraIO_RegWrite", _wrap_CCameraIO_RegWrite, NULL},
    { SWIG_prefix "CCameraIO_RegRead", _wrap_CCameraIO_RegRead, NULL},
    { SWIG_prefix "CCameraIO_FilterHome", _wrap_CCameraIO_FilterHome, NULL},
    { SWIG_prefix "CCameraIO_FilterSet", _wrap_CCameraIO_FilterSet, NULL},
    { SWIG_prefix "CCameraIO_Expose", _wrap_CCameraIO_Expose, NULL},
    { SWIG_prefix "CCameraIO_GetImage", _wrap_CCameraIO_GetImage, NULL},
    { SWIG_prefix "CCameraIO_BufferImage", _wrap_CCameraIO_BufferImage, NULL},
    { SWIG_prefix "CCameraIO_DigitizeLine", _wrap_CCameraIO_DigitizeLine, NULL},
    { SWIG_prefix "CCameraIO_GetLine", _wrap_CCameraIO_GetLine, NULL},
    { SWIG_prefix "CCameraIO_BufferDriftScan", _wrap_CCameraIO_BufferDriftScan, NULL},
    { SWIG_prefix "CCameraIO_Snap", _wrap_CCameraIO_Snap, NULL},
    { SWIG_prefix "CCameraIO_m_TDI_set", _wrap_CCameraIO_m_TDI_set, NULL},
    { SWIG_prefix "CCameraIO_m_TDI_get", _wrap_CCameraIO_m_TDI_get, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforTrigger_set", _wrap_CCameraIO_m_WaitingforTrigger_set, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforTrigger_get", _wrap_CCameraIO_m_WaitingforTrigger_get, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforImage_set", _wrap_CCameraIO_m_WaitingforImage_set, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforImage_get", _wrap_CCameraIO_m_WaitingforImage_get, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforLine_set", _wrap_CCameraIO_m_WaitingforLine_set, NULL},
    { SWIG_prefix "CCameraIO_m_WaitingforLine_get", _wrap_CCameraIO_m_WaitingforLine_get, NULL},
    { SWIG_prefix "CCameraIO_m_RegisterOffset_set", _wrap_CCameraIO_m_RegisterOffset_set, NULL},
    { SWIG_prefix "CCameraIO_m_RegisterOffset_get", _wrap_CCameraIO_m_RegisterOffset_get, NULL},
    { SWIG_prefix "CCameraIO_m_FilterPosition_set", _wrap_CCameraIO_m_FilterPosition_set, NULL},
    { SWIG_prefix "CCameraIO_m_FilterPosition_get", _wrap_CCameraIO_m_FilterPosition_get, NULL},
    { SWIG_prefix "CCameraIO_m_FilterStepPos_set", _wrap_CCameraIO_m_FilterStepPos_set, NULL},
    { SWIG_prefix "CCameraIO_m_FilterStepPos_get", _wrap_CCameraIO_m_FilterStepPos_get, NULL},
    { SWIG_prefix "CCameraIO_m_Shutter_set", _wrap_CCameraIO_m_Shutter_set, NULL},
    { SWIG_prefix "CCameraIO_m_Shutter_get", _wrap_CCameraIO_m_Shutter_get, NULL},
    { SWIG_prefix "CCameraIO_m_Status_set", _wrap_CCameraIO_m_Status_set, NULL},
    { SWIG_prefix "CCameraIO_m_Status_get", _wrap_CCameraIO_m_Status_get, NULL},
    { SWIG_prefix "CCameraIO_m_Interface_set", _wrap_CCameraIO_m_Interface_set, NULL},
    { SWIG_prefix "CCameraIO_m_Interface_get", _wrap_CCameraIO_m_Interface_get, NULL},
    { SWIG_prefix "CCameraIO_m_SensorType_set", _wrap_CCameraIO_m_SensorType_set, NULL},
    { SWIG_prefix "CCameraIO_m_SensorType_get", _wrap_CCameraIO_m_SensorType_get, NULL},
    { SWIG_prefix "CCameraIO_m_CoolerStatus_set", _wrap_CCameraIO_m_CoolerStatus_set, NULL},
    { SWIG_prefix "CCameraIO_m_CoolerStatus_get", _wrap_CCameraIO_m_CoolerStatus_get, NULL},
    { SWIG_prefix "CCameraIO_m_IRQMask_set", _wrap_CCameraIO_m_IRQMask_set, NULL},
    { SWIG_prefix "CCameraIO_m_IRQMask_get", _wrap_CCameraIO_m_IRQMask_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBinX_set", _wrap_CCameraIO_m_ExposureBinX_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBinX_get", _wrap_CCameraIO_m_ExposureBinX_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBinY_set", _wrap_CCameraIO_m_ExposureBinY_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBinY_get", _wrap_CCameraIO_m_ExposureBinY_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureStartX_set", _wrap_CCameraIO_m_ExposureStartX_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureStartX_get", _wrap_CCameraIO_m_ExposureStartX_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureStartY_set", _wrap_CCameraIO_m_ExposureStartY_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureStartY_get", _wrap_CCameraIO_m_ExposureStartY_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureNumX_set", _wrap_CCameraIO_m_ExposureNumX_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureNumX_get", _wrap_CCameraIO_m_ExposureNumX_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureNumY_set", _wrap_CCameraIO_m_ExposureNumY_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureNumY_get", _wrap_CCameraIO_m_ExposureNumY_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureColumns_set", _wrap_CCameraIO_m_ExposureColumns_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureColumns_get", _wrap_CCameraIO_m_ExposureColumns_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureRows_set", _wrap_CCameraIO_m_ExposureRows_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureRows_get", _wrap_CCameraIO_m_ExposureRows_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureSkipC_set", _wrap_CCameraIO_m_ExposureSkipC_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureSkipC_get", _wrap_CCameraIO_m_ExposureSkipC_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureSkipR_set", _wrap_CCameraIO_m_ExposureSkipR_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureSkipR_get", _wrap_CCameraIO_m_ExposureSkipR_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureHFlush_set", _wrap_CCameraIO_m_ExposureHFlush_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureHFlush_get", _wrap_CCameraIO_m_ExposureHFlush_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureVFlush_set", _wrap_CCameraIO_m_ExposureVFlush_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureVFlush_get", _wrap_CCameraIO_m_ExposureVFlush_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBIC_set", _wrap_CCameraIO_m_ExposureBIC_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBIC_get", _wrap_CCameraIO_m_ExposureBIC_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBIR_set", _wrap_CCameraIO_m_ExposureBIR_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureBIR_get", _wrap_CCameraIO_m_ExposureBIR_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureAIC_set", _wrap_CCameraIO_m_ExposureAIC_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureAIC_get", _wrap_CCameraIO_m_ExposureAIC_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureRemainingLines_set", _wrap_CCameraIO_m_ExposureRemainingLines_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureRemainingLines_get", _wrap_CCameraIO_m_ExposureRemainingLines_get, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureAIR_set", _wrap_CCameraIO_m_ExposureAIR_set, NULL},
    { SWIG_prefix "CCameraIO_m_ExposureAIR_get", _wrap_CCameraIO_m_ExposureAIR_get, NULL},
    { SWIG_prefix "CCameraIO_m_RegShadow_get", _wrap_CCameraIO_m_RegShadow_get, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutterBits_Mode_set", _wrap_CCameraIO_m_FastShutterBits_Mode_set, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutterBits_Mode_get", _wrap_CCameraIO_m_FastShutterBits_Mode_get, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutterBits_Test_set", _wrap_CCameraIO_m_FastShutterBits_Test_set, NULL},
    { SWIG_prefix "CCameraIO_m_FastShutterBits_Test_get", _wrap_CCameraIO_m_FastShutterBits_Test_get, NULL},
    { SWIG_prefix "CCameraIO_LoadLineCounter", _wrap_CCameraIO_LoadLineCounter, NULL},
    { SWIG_prefix "CCameraIO_LoadColumnLayout", _wrap_CCameraIO_LoadColumnLayout, NULL},
    { SWIG_prefix "CCameraIO_LoadTimerAndBinning", _wrap_CCameraIO_LoadTimerAndBinning, NULL},
    { SWIG_prefix "CCameraIO_StartFlushing", _wrap_CCameraIO_StartFlushing, NULL},
    { SWIG_prefix "CCameraIO_StopFlushing", _wrap_CCameraIO_StopFlushing, NULL},
    { SWIG_prefix "CCameraIO_InitDefaults", _wrap_CCameraIO_InitDefaults, NULL},
    { SWIG_prefix "CCameraIO", SwigObjectCmd, &_wrap_class_CCameraIO},
    {0, 0, 0}
};

static swig_var_info swig_variables[] = {
    { SWIG_prefix "Camera_Status_Idle", (void *) &_wrap_const_Camera_Status_Idle,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_Waiting", (void *) &_wrap_const_Camera_Status_Waiting,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_Exposing", (void *) &_wrap_const_Camera_Status_Exposing,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_Downloading", (void *) &_wrap_const_Camera_Status_Downloading,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_LineReady", (void *) &_wrap_const_Camera_Status_LineReady,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_ImageReady", (void *) &_wrap_const_Camera_Status_ImageReady,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Status_Flushing", (void *) &_wrap_const_Camera_Status_Flushing,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_Off", (void *) &_wrap_const_Camera_CoolerStatus_Off,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_RampingToSetPoint", (void *) &_wrap_const_Camera_CoolerStatus_RampingToSetPoint,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_Correcting", (void *) &_wrap_const_Camera_CoolerStatus_Correcting,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_RampingToAmbient", (void *) &_wrap_const_Camera_CoolerStatus_RampingToAmbient,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_AtAmbient", (void *) &_wrap_const_Camera_CoolerStatus_AtAmbient,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_AtMax", (void *) &_wrap_const_Camera_CoolerStatus_AtMax,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_AtMin", (void *) &_wrap_const_Camera_CoolerStatus_AtMin,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerStatus_AtSetPoint", (void *) &_wrap_const_Camera_CoolerStatus_AtSetPoint,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerMode_Off", (void *) &_wrap_const_Camera_CoolerMode_Off,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerMode_On", (void *) &_wrap_const_Camera_CoolerMode_On,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_CoolerMode_Shutdown", (void *) &_wrap_const_Camera_CoolerMode_Shutdown,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Interface_ISA", (void *) &_wrap_const_Camera_Interface_ISA,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Interface_PPI", (void *) &_wrap_const_Camera_Interface_PPI,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_Interface_PCI", (void *) &_wrap_const_Camera_Interface_PCI,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_SensorType_CCD", (void *) &_wrap_const_Camera_SensorType_CCD,swig_int_get,swig_readonly},
    { SWIG_prefix "Camera_SensorType_CMOS", (void *) &_wrap_const_Camera_SensorType_CMOS,swig_int_get,swig_readonly},
    { SWIG_prefix "MAXCOLUMNS", (void *) &_wrap_const_MAXCOLUMNS_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "MAXROWS", (void *) &_wrap_const_MAXROWS_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "MAXHBIN", (void *) &_wrap_const_MAXHBIN_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "MAXVBIN", (void *) &_wrap_const_MAXVBIN_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "NumWriteRegisters", (void *) &_wrap_const_NumWriteRegisters_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_Command", (void *) &_wrap_const_RegISA_Command_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_Command", (void *) &_wrap_const_Reg_Command_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TDIMode", (void *) &_wrap_const_RegBit_TDIMode_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_StartTimer", (void *) &_wrap_const_RegBit_StartTimer_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_ShutterOverride", (void *) &_wrap_const_RegBit_ShutterOverride_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_ResetSystem", (void *) &_wrap_const_RegBit_ResetSystem_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_FIFOCache", (void *) &_wrap_const_RegBit_FIFOCache_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TriggerEnable", (void *) &_wrap_const_RegBit_TriggerEnable_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_StopFlushing", (void *) &_wrap_const_RegBit_StopFlushing_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_ShutterEnable", (void *) &_wrap_const_RegBit_ShutterEnable_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_CoolerShutdown", (void *) &_wrap_const_RegBit_CoolerShutdown_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_DoneReading", (void *) &_wrap_const_RegBit_DoneReading_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TimerLoad", (void *) &_wrap_const_RegBit_TimerLoad_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_StartNextLine", (void *) &_wrap_const_RegBit_StartNextLine_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_StartFlushing", (void *) &_wrap_const_RegBit_StartFlushing_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_Focus", (void *) &_wrap_const_RegBit_Focus_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_CableLength", (void *) &_wrap_const_RegBit_CableLength_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_CoolerEnable", (void *) &_wrap_const_RegBit_CoolerEnable_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_Timer", (void *) &_wrap_const_RegISA_Timer_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_Timer", (void *) &_wrap_const_Reg_Timer_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_Timer", (void *) &_wrap_const_RegBitShift_Timer_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_Timer", (void *) &_wrap_const_RegBitMask_Timer_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_VBinning", (void *) &_wrap_const_RegISA_VBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_VBinning", (void *) &_wrap_const_Reg_VBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_Timer2", (void *) &_wrap_const_RegBitShift_Timer2_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_Timer2", (void *) &_wrap_const_RegBitMask_Timer2_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_VBinning", (void *) &_wrap_const_RegBitShift_VBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_VBinning", (void *) &_wrap_const_RegBitMask_VBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_AICCounter", (void *) &_wrap_const_RegISA_AICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_AICCounter", (void *) &_wrap_const_Reg_AICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_AICCounter", (void *) &_wrap_const_RegBitShift_AICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_AICCounter", (void *) &_wrap_const_RegBitMask_AICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_Test2", (void *) &_wrap_const_RegBitShift_Test2_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_Test2", (void *) &_wrap_const_RegBitMask_Test2_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_TempSetPoint", (void *) &_wrap_const_RegISA_TempSetPoint_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_TempSetPoint", (void *) &_wrap_const_Reg_TempSetPoint_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_TempSetPoint", (void *) &_wrap_const_RegBitShift_TempSetPoint_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_TempSetPoint", (void *) &_wrap_const_RegBitMask_TempSetPoint_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_PortControl", (void *) &_wrap_const_RegBitShift_PortControl_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_PortControl", (void *) &_wrap_const_RegBitMask_PortControl_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_PixelCounter", (void *) &_wrap_const_RegISA_PixelCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_PixelCounter", (void *) &_wrap_const_Reg_PixelCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_PixelCounter", (void *) &_wrap_const_RegBitShift_PixelCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_PixelCounter", (void *) &_wrap_const_RegBitMask_PixelCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_HBinning", (void *) &_wrap_const_RegBitShift_HBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_HBinning", (void *) &_wrap_const_RegBitMask_HBinning_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_LoopLock", (void *) &_wrap_const_RegBit_LoopLock_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_LineCounter", (void *) &_wrap_const_RegISA_LineCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_LineCounter", (void *) &_wrap_const_Reg_LineCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_LineCounter", (void *) &_wrap_const_RegBitShift_LineCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_LineCounter", (void *) &_wrap_const_RegBitMask_LineCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_Mode", (void *) &_wrap_const_RegBitShift_Mode_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_Mode", (void *) &_wrap_const_RegBitMask_Mode_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_BICCounter", (void *) &_wrap_const_RegISA_BICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_BICCounter", (void *) &_wrap_const_Reg_BICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_BICCounter", (void *) &_wrap_const_RegBitShift_BICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_BICCounter", (void *) &_wrap_const_RegBitMask_BICCounter_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_Test", (void *) &_wrap_const_RegBitShift_Test_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_Test", (void *) &_wrap_const_RegBitMask_Test_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_ImageData", (void *) &_wrap_const_RegISA_ImageData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_ImageData", (void *) &_wrap_const_Reg_ImageData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_ImageData", (void *) &_wrap_const_RegBitShift_ImageData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_ImageData", (void *) &_wrap_const_RegBitMask_ImageData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_TempData", (void *) &_wrap_const_RegISA_TempData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_TempData", (void *) &_wrap_const_Reg_TempData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitShift_TempData", (void *) &_wrap_const_RegBitShift_TempData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBitMask_TempData", (void *) &_wrap_const_RegBitMask_TempData_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_Status", (void *) &_wrap_const_RegISA_Status_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_Status", (void *) &_wrap_const_Reg_Status_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_Exposing", (void *) &_wrap_const_RegBit_Exposing_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_LineDone", (void *) &_wrap_const_RegBit_LineDone_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_CacheReadOK", (void *) &_wrap_const_RegBit_CacheReadOK_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TempAtMin", (void *) &_wrap_const_RegBit_TempAtMin_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TempAtMax", (void *) &_wrap_const_RegBit_TempAtMax_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_ShutdownComplete", (void *) &_wrap_const_RegBit_ShutdownComplete_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_TempAtSetPoint", (void *) &_wrap_const_RegBit_TempAtSetPoint_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_GotTrigger", (void *) &_wrap_const_RegBit_GotTrigger_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_FrameDone", (void *) &_wrap_const_RegBit_FrameDone_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegBit_LoopbackTest", (void *) &_wrap_const_RegBit_LoopbackTest_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "RegISA_CommandReadback", (void *) &_wrap_const_RegISA_CommandReadback_char,swig_p_char_get,swig_readonly},
    { SWIG_prefix "Reg_CommandReadback", (void *) &_wrap_const_Reg_CommandReadback_char,swig_p_char_get,swig_readonly},
    {0,0,0,0}
};

/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */

static swig_type_info _swigt__p_CCameraIO[] = {{"_p_CCameraIO", 0, "CCameraIO *"},{"_p_CCameraIO"},{0}};
static swig_type_info _swigt__p_unsigned_short[] = {{"_p_unsigned_short", 0, "unsigned short *"},{"_p_unsigned_short"},{0}};
static swig_type_info _swigt__p_short[] = {{"_p_short", 0, "short *"},{"_p_short"},{0}};

static swig_type_info *swig_types_initial[] = {
_swigt__p_CCameraIO, 
_swigt__p_unsigned_short, 
_swigt__p_short, 
0
};


/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */

SWIGEXPORT(int) Apogee_ppi_Init(Tcl_Interp *interp) {
    int i;
    if (interp == 0) return TCL_ERROR;
    for (i = 0; swig_types_initial[i]; i++) {
        swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]);
    }
    _wrap_const_MAXCOLUMNS_char = new char[32];
    sprintf(_wrap_const_MAXCOLUMNS_char,"%ld", (long) _wrap_const_MAXCOLUMNS);
    _wrap_const_MAXROWS_char = new char[32];
    sprintf(_wrap_const_MAXROWS_char,"%ld", (long) _wrap_const_MAXROWS);
    _wrap_const_MAXHBIN_char = new char[32];
    sprintf(_wrap_const_MAXHBIN_char,"%ld", (long) _wrap_const_MAXHBIN);
    _wrap_const_MAXVBIN_char = new char[32];
    sprintf(_wrap_const_MAXVBIN_char,"%ld", (long) _wrap_const_MAXVBIN);
    _wrap_const_NumWriteRegisters_char = new char[32];
    sprintf(_wrap_const_NumWriteRegisters_char,"%ld", (long) _wrap_const_NumWriteRegisters);
    _wrap_const_RegISA_Command_char = new char[32];
    sprintf(_wrap_const_RegISA_Command_char,"%ld", (long) _wrap_const_RegISA_Command);
    _wrap_const_Reg_Command_char = new char[32];
    sprintf(_wrap_const_Reg_Command_char,"%ld", (long) _wrap_const_Reg_Command);
    _wrap_const_RegBit_TDIMode_char = new char[32];
    sprintf(_wrap_const_RegBit_TDIMode_char,"%lu", (unsigned long) _wrap_const_RegBit_TDIMode);
    _wrap_const_RegBit_StartTimer_char = new char[32];
    sprintf(_wrap_const_RegBit_StartTimer_char,"%lu", (unsigned long) _wrap_const_RegBit_StartTimer);
    _wrap_const_RegBit_ShutterOverride_char = new char[32];
    sprintf(_wrap_const_RegBit_ShutterOverride_char,"%lu", (unsigned long) _wrap_const_RegBit_ShutterOverride);
    _wrap_const_RegBit_ResetSystem_char = new char[32];
    sprintf(_wrap_const_RegBit_ResetSystem_char,"%lu", (unsigned long) _wrap_const_RegBit_ResetSystem);
    _wrap_const_RegBit_FIFOCache_char = new char[32];
    sprintf(_wrap_const_RegBit_FIFOCache_char,"%lu", (unsigned long) _wrap_const_RegBit_FIFOCache);
    _wrap_const_RegBit_TriggerEnable_char = new char[32];
    sprintf(_wrap_const_RegBit_TriggerEnable_char,"%lu", (unsigned long) _wrap_const_RegBit_TriggerEnable);
    _wrap_const_RegBit_StopFlushing_char = new char[32];
    sprintf(_wrap_const_RegBit_StopFlushing_char,"%lu", (unsigned long) _wrap_const_RegBit_StopFlushing);
    _wrap_const_RegBit_ShutterEnable_char = new char[32];
    sprintf(_wrap_const_RegBit_ShutterEnable_char,"%lu", (unsigned long) _wrap_const_RegBit_ShutterEnable);
    _wrap_const_RegBit_CoolerShutdown_char = new char[32];
    sprintf(_wrap_const_RegBit_CoolerShutdown_char,"%lu", (unsigned long) _wrap_const_RegBit_CoolerShutdown);
    _wrap_const_RegBit_DoneReading_char = new char[32];
    sprintf(_wrap_const_RegBit_DoneReading_char,"%lu", (unsigned long) _wrap_const_RegBit_DoneReading);
    _wrap_const_RegBit_TimerLoad_char = new char[32];
    sprintf(_wrap_const_RegBit_TimerLoad_char,"%lu", (unsigned long) _wrap_const_RegBit_TimerLoad);
    _wrap_const_RegBit_StartNextLine_char = new char[32];
    sprintf(_wrap_const_RegBit_StartNextLine_char,"%lu", (unsigned long) _wrap_const_RegBit_StartNextLine);
    _wrap_const_RegBit_StartFlushing_char = new char[32];
    sprintf(_wrap_const_RegBit_StartFlushing_char,"%lu", (unsigned long) _wrap_const_RegBit_StartFlushing);
    _wrap_const_RegBit_Focus_char = new char[32];
    sprintf(_wrap_const_RegBit_Focus_char,"%lu", (unsigned long) _wrap_const_RegBit_Focus);
    _wrap_const_RegBit_CableLength_char = new char[32];
    sprintf(_wrap_const_RegBit_CableLength_char,"%lu", (unsigned long) _wrap_const_RegBit_CableLength);
    _wrap_const_RegBit_CoolerEnable_char = new char[32];
    sprintf(_wrap_const_RegBit_CoolerEnable_char,"%lu", (unsigned long) _wrap_const_RegBit_CoolerEnable);
    _wrap_const_RegISA_Timer_char = new char[32];
    sprintf(_wrap_const_RegISA_Timer_char,"%ld", (long) _wrap_const_RegISA_Timer);
    _wrap_const_Reg_Timer_char = new char[32];
    sprintf(_wrap_const_Reg_Timer_char,"%ld", (long) _wrap_const_Reg_Timer);
    _wrap_const_RegBitShift_Timer_char = new char[32];
    sprintf(_wrap_const_RegBitShift_Timer_char,"%lu", (unsigned long) _wrap_const_RegBitShift_Timer);
    _wrap_const_RegBitMask_Timer_char = new char[32];
    sprintf(_wrap_const_RegBitMask_Timer_char,"%lu", (unsigned long) _wrap_const_RegBitMask_Timer);
    _wrap_const_RegISA_VBinning_char = new char[32];
    sprintf(_wrap_const_RegISA_VBinning_char,"%ld", (long) _wrap_const_RegISA_VBinning);
    _wrap_const_Reg_VBinning_char = new char[32];
    sprintf(_wrap_const_Reg_VBinning_char,"%ld", (long) _wrap_const_Reg_VBinning);
    _wrap_const_RegBitShift_Timer2_char = new char[32];
    sprintf(_wrap_const_RegBitShift_Timer2_char,"%lu", (unsigned long) _wrap_const_RegBitShift_Timer2);
    _wrap_const_RegBitMask_Timer2_char = new char[32];
    sprintf(_wrap_const_RegBitMask_Timer2_char,"%lu", (unsigned long) _wrap_const_RegBitMask_Timer2);
    _wrap_const_RegBitShift_VBinning_char = new char[32];
    sprintf(_wrap_const_RegBitShift_VBinning_char,"%lu", (unsigned long) _wrap_const_RegBitShift_VBinning);
    _wrap_const_RegBitMask_VBinning_char = new char[32];
    sprintf(_wrap_const_RegBitMask_VBinning_char,"%lu", (unsigned long) _wrap_const_RegBitMask_VBinning);
    _wrap_const_RegISA_AICCounter_char = new char[32];
    sprintf(_wrap_const_RegISA_AICCounter_char,"%ld", (long) _wrap_const_RegISA_AICCounter);
    _wrap_const_Reg_AICCounter_char = new char[32];
    sprintf(_wrap_const_Reg_AICCounter_char,"%ld", (long) _wrap_const_Reg_AICCounter);
    _wrap_const_RegBitShift_AICCounter_char = new char[32];
    sprintf(_wrap_const_RegBitShift_AICCounter_char,"%lu", (unsigned long) _wrap_const_RegBitShift_AICCounter);
    _wrap_const_RegBitMask_AICCounter_char = new char[32];
    sprintf(_wrap_const_RegBitMask_AICCounter_char,"%lu", (unsigned long) _wrap_const_RegBitMask_AICCounter);
    _wrap_const_RegBitShift_Test2_char = new char[32];
    sprintf(_wrap_const_RegBitShift_Test2_char,"%lu", (unsigned long) _wrap_const_RegBitShift_Test2);
    _wrap_const_RegBitMask_Test2_char = new char[32];
    sprintf(_wrap_const_RegBitMask_Test2_char,"%lu", (unsigned long) _wrap_const_RegBitMask_Test2);
    _wrap_const_RegISA_TempSetPoint_char = new char[32];
    sprintf(_wrap_const_RegISA_TempSetPoint_char,"%ld", (long) _wrap_const_RegISA_TempSetPoint);
    _wrap_const_Reg_TempSetPoint_char = new char[32];
    sprintf(_wrap_const_Reg_TempSetPoint_char,"%ld", (long) _wrap_const_Reg_TempSetPoint);
    _wrap_const_RegBitShift_TempSetPoint_char = new char[32];
    sprintf(_wrap_const_RegBitShift_TempSetPoint_char,"%lu", (unsigned long) _wrap_const_RegBitShift_TempSetPoint);
    _wrap_const_RegBitMask_TempSetPoint_char = new char[32];
    sprintf(_wrap_const_RegBitMask_TempSetPoint_char,"%lu", (unsigned long) _wrap_const_RegBitMask_TempSetPoint);
    _wrap_const_RegBitShift_PortControl_char = new char[32];
    sprintf(_wrap_const_RegBitShift_PortControl_char,"%lu", (unsigned long) _wrap_const_RegBitShift_PortControl);
    _wrap_const_RegBitMask_PortControl_char = new char[32];
    sprintf(_wrap_const_RegBitMask_PortControl_char,"%lu", (unsigned long) _wrap_const_RegBitMask_PortControl);
    _wrap_const_RegISA_PixelCounter_char = new char[32];
    sprintf(_wrap_const_RegISA_PixelCounter_char,"%ld", (long) _wrap_const_RegISA_PixelCounter);
    _wrap_const_Reg_PixelCounter_char = new char[32];
    sprintf(_wrap_const_Reg_PixelCounter_char,"%ld", (long) _wrap_const_Reg_PixelCounter);
    _wrap_const_RegBitShift_PixelCounter_char = new char[32];
    sprintf(_wrap_const_RegBitShift_PixelCounter_char,"%lu", (unsigned long) _wrap_const_RegBitShift_PixelCounter);
    _wrap_const_RegBitMask_PixelCounter_char = new char[32];
    sprintf(_wrap_const_RegBitMask_PixelCounter_char,"%lu", (unsigned long) _wrap_const_RegBitMask_PixelCounter);
    _wrap_const_RegBitShift_HBinning_char = new char[32];
    sprintf(_wrap_const_RegBitShift_HBinning_char,"%lu", (unsigned long) _wrap_const_RegBitShift_HBinning);
    _wrap_const_RegBitMask_HBinning_char = new char[32];
    sprintf(_wrap_const_RegBitMask_HBinning_char,"%lu", (unsigned long) _wrap_const_RegBitMask_HBinning);
    _wrap_const_RegBit_LoopLock_char = new char[32];
    sprintf(_wrap_const_RegBit_LoopLock_char,"%lu", (unsigned long) _wrap_const_RegBit_LoopLock);
    _wrap_const_RegISA_LineCounter_char = new char[32];
    sprintf(_wrap_const_RegISA_LineCounter_char,"%ld", (long) _wrap_const_RegISA_LineCounter);
    _wrap_const_Reg_LineCounter_char = new char[32];
    sprintf(_wrap_const_Reg_LineCounter_char,"%ld", (long) _wrap_const_Reg_LineCounter);
    _wrap_const_RegBitShift_LineCounter_char = new char[32];
    sprintf(_wrap_const_RegBitShift_LineCounter_char,"%lu", (unsigned long) _wrap_const_RegBitShift_LineCounter);
    _wrap_const_RegBitMask_LineCounter_char = new char[32];
    sprintf(_wrap_const_RegBitMask_LineCounter_char,"%lu", (unsigned long) _wrap_const_RegBitMask_LineCounter);
    _wrap_const_RegBitShift_Mode_char = new char[32];
    sprintf(_wrap_const_RegBitShift_Mode_char,"%lu", (unsigned long) _wrap_const_RegBitShift_Mode);
    _wrap_const_RegBitMask_Mode_char = new char[32];
    sprintf(_wrap_const_RegBitMask_Mode_char,"%lu", (unsigned long) _wrap_const_RegBitMask_Mode);
    _wrap_const_RegISA_BICCounter_char = new char[32];
    sprintf(_wrap_const_RegISA_BICCounter_char,"%ld", (long) _wrap_const_RegISA_BICCounter);
    _wrap_const_Reg_BICCounter_char = new char[32];
    sprintf(_wrap_const_Reg_BICCounter_char,"%ld", (long) _wrap_const_Reg_BICCounter);
    _wrap_const_RegBitShift_BICCounter_char = new char[32];
    sprintf(_wrap_const_RegBitShift_BICCounter_char,"%lu", (unsigned long) _wrap_const_RegBitShift_BICCounter);
    _wrap_const_RegBitMask_BICCounter_char = new char[32];
    sprintf(_wrap_const_RegBitMask_BICCounter_char,"%lu", (unsigned long) _wrap_const_RegBitMask_BICCounter);
    _wrap_const_RegBitShift_Test_char = new char[32];
    sprintf(_wrap_const_RegBitShift_Test_char,"%lu", (unsigned long) _wrap_const_RegBitShift_Test);
    _wrap_const_RegBitMask_Test_char = new char[32];
    sprintf(_wrap_const_RegBitMask_Test_char,"%lu", (unsigned long) _wrap_const_RegBitMask_Test);
    _wrap_const_RegISA_ImageData_char = new char[32];
    sprintf(_wrap_const_RegISA_ImageData_char,"%ld", (long) _wrap_const_RegISA_ImageData);
    _wrap_const_Reg_ImageData_char = new char[32];
    sprintf(_wrap_const_Reg_ImageData_char,"%ld", (long) _wrap_const_Reg_ImageData);
    _wrap_const_RegBitShift_ImageData_char = new char[32];
    sprintf(_wrap_const_RegBitShift_ImageData_char,"%lu", (unsigned long) _wrap_const_RegBitShift_ImageData);
    _wrap_const_RegBitMask_ImageData_char = new char[32];
    sprintf(_wrap_const_RegBitMask_ImageData_char,"%lu", (unsigned long) _wrap_const_RegBitMask_ImageData);
    _wrap_const_RegISA_TempData_char = new char[32];
    sprintf(_wrap_const_RegISA_TempData_char,"%ld", (long) _wrap_const_RegISA_TempData);
    _wrap_const_Reg_TempData_char = new char[32];
    sprintf(_wrap_const_Reg_TempData_char,"%ld", (long) _wrap_const_Reg_TempData);
    _wrap_const_RegBitShift_TempData_char = new char[32];
    sprintf(_wrap_const_RegBitShift_TempData_char,"%lu", (unsigned long) _wrap_const_RegBitShift_TempData);
    _wrap_const_RegBitMask_TempData_char = new char[32];
    sprintf(_wrap_const_RegBitMask_TempData_char,"%lu", (unsigned long) _wrap_const_RegBitMask_TempData);
    _wrap_const_RegISA_Status_char = new char[32];
    sprintf(_wrap_const_RegISA_Status_char,"%ld", (long) _wrap_const_RegISA_Status);
    _wrap_const_Reg_Status_char = new char[32];
    sprintf(_wrap_const_Reg_Status_char,"%ld", (long) _wrap_const_Reg_Status);
    _wrap_const_RegBit_Exposing_char = new char[32];
    sprintf(_wrap_const_RegBit_Exposing_char,"%lu", (unsigned long) _wrap_const_RegBit_Exposing);
    _wrap_const_RegBit_LineDone_char = new char[32];
    sprintf(_wrap_const_RegBit_LineDone_char,"%lu", (unsigned long) _wrap_const_RegBit_LineDone);
    _wrap_const_RegBit_CacheReadOK_char = new char[32];
    sprintf(_wrap_const_RegBit_CacheReadOK_char,"%lu", (unsigned long) _wrap_const_RegBit_CacheReadOK);
    _wrap_const_RegBit_TempAtMin_char = new char[32];
    sprintf(_wrap_const_RegBit_TempAtMin_char,"%lu", (unsigned long) _wrap_const_RegBit_TempAtMin);
    _wrap_const_RegBit_TempAtMax_char = new char[32];
    sprintf(_wrap_const_RegBit_TempAtMax_char,"%lu", (unsigned long) _wrap_const_RegBit_TempAtMax);
    _wrap_const_RegBit_ShutdownComplete_char = new char[32];
    sprintf(_wrap_const_RegBit_ShutdownComplete_char,"%lu", (unsigned long) _wrap_const_RegBit_ShutdownComplete);
    _wrap_const_RegBit_TempAtSetPoint_char = new char[32];
    sprintf(_wrap_const_RegBit_TempAtSetPoint_char,"%lu", (unsigned long) _wrap_const_RegBit_TempAtSetPoint);
    _wrap_const_RegBit_GotTrigger_char = new char[32];
    sprintf(_wrap_const_RegBit_GotTrigger_char,"%lu", (unsigned long) _wrap_const_RegBit_GotTrigger);
    _wrap_const_RegBit_FrameDone_char = new char[32];
    sprintf(_wrap_const_RegBit_FrameDone_char,"%lu", (unsigned long) _wrap_const_RegBit_FrameDone);
    _wrap_const_RegBit_LoopbackTest_char = new char[32];
    sprintf(_wrap_const_RegBit_LoopbackTest_char,"%lu", (unsigned long) _wrap_const_RegBit_LoopbackTest);
    _wrap_const_RegISA_CommandReadback_char = new char[32];
    sprintf(_wrap_const_RegISA_CommandReadback_char,"%ld", (long) _wrap_const_RegISA_CommandReadback);
    _wrap_const_Reg_CommandReadback_char = new char[32];
    sprintf(_wrap_const_Reg_CommandReadback_char,"%ld", (long) _wrap_const_Reg_CommandReadback);
    for (i = 0; swig_commands[i].name; i++) {
        Tcl_CreateObjCommand(interp, (char *) swig_commands[i].name, swig_commands[i].wrapper, swig_commands[i].clientdata, NULL);
    }
    for (i = 0; swig_variables[i].name; i++) {
        Tcl_SetVar(interp, (char *) swig_variables[i].name, "", TCL_GLOBAL_ONLY);
        Tcl_TraceVar(interp, (char *) swig_variables[i].name, TCL_TRACE_READS | TCL_GLOBAL_ONLY, swig_variables[i].get, (ClientData) swig_variables[i].addr);
        Tcl_TraceVar(interp, (char *) swig_variables[i].name, TCL_TRACE_WRITES | TCL_GLOBAL_ONLY, swig_variables[i].set, (ClientData) swig_variables[i].addr);
    }
    return TCL_OK;
}

