--- /dev/null
+/* ----------------------------------------------------------------------------
+ * This file was automatically generated by SWIG (http://www.swig.org).
+ * Version 1.3.40
+ *
+ * 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.
+ * ----------------------------------------------------------------------------- */
+
+#define SWIGOCTAVE
+#define SWIG_name_d "highgui"
+#define SWIG_name highgui
+#define OCTAVE_API_VERSION_OPTION 0
+
+
+#ifdef __cplusplus
+/* SwigValueWrapper is described in swig.swg */
+template<typename T> class SwigValueWrapper {
+ struct SwigMovePointer {
+ T *ptr;
+ SwigMovePointer(T *p) : ptr(p) { }
+ ~SwigMovePointer() { delete ptr; }
+ SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
+ } pointer;
+ SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
+ SwigValueWrapper(const SwigValueWrapper<T>& rhs);
+public:
+ SwigValueWrapper() : pointer(0) { }
+ SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
+ operator T&() const { return *pointer.ptr; }
+ T *operator&() { return pointer.ptr; }
+};
+
+template <typename T> T SwigValueInit() {
+ return T();
+}
+#endif
+
+/* -----------------------------------------------------------------------------
+ * This section contains generic SWIG labels for method/variable
+ * declarations/attributes, and other compiler dependent labels.
+ * ----------------------------------------------------------------------------- */
+
+/* template workaround for compilers that cannot correctly implement the C++ standard */
+#ifndef SWIGTEMPLATEDISAMBIGUATOR
+# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
+# define SWIGTEMPLATEDISAMBIGUATOR template
+# elif defined(__HP_aCC)
+/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
+/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
+# define SWIGTEMPLATEDISAMBIGUATOR template
+# else
+# define SWIGTEMPLATEDISAMBIGUATOR
+# endif
+#endif
+
+/* inline attribute */
+#ifndef SWIGINLINE
+# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
+# define SWIGINLINE inline
+# else
+# define SWIGINLINE
+# endif
+#endif
+
+/* attribute recognised by some compilers to avoid 'unused' warnings */
+#ifndef SWIGUNUSED
+# if defined(__GNUC__)
+# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
+# define SWIGUNUSED __attribute__ ((__unused__))
+# else
+# define SWIGUNUSED
+# endif
+# elif defined(__ICC)
+# define SWIGUNUSED __attribute__ ((__unused__))
+# else
+# define SWIGUNUSED
+# endif
+#endif
+
+#ifndef SWIG_MSC_UNSUPPRESS_4505
+# if defined(_MSC_VER)
+# pragma warning(disable : 4505) /* unreferenced local function has been removed */
+# endif
+#endif
+
+#ifndef SWIGUNUSEDPARM
+# ifdef __cplusplus
+# define SWIGUNUSEDPARM(p)
+# else
+# define SWIGUNUSEDPARM(p) p SWIGUNUSED
+# endif
+#endif
+
+/* internal SWIG method */
+#ifndef SWIGINTERN
+# define SWIGINTERN static SWIGUNUSED
+#endif
+
+/* internal inline SWIG method */
+#ifndef SWIGINTERNINLINE
+# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
+#endif
+
+/* exporting methods */
+#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
+# ifndef GCC_HASCLASSVISIBILITY
+# define GCC_HASCLASSVISIBILITY
+# endif
+#endif
+
+#ifndef SWIGEXPORT
+# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
+# if defined(STATIC_LINKED)
+# define SWIGEXPORT
+# else
+# define SWIGEXPORT __declspec(dllexport)
+# endif
+# else
+# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
+# define SWIGEXPORT __attribute__ ((visibility("default")))
+# else
+# define SWIGEXPORT
+# endif
+# endif
+#endif
+
+/* calling conventions for Windows */
+#ifndef SWIGSTDCALL
+# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
+# define SWIGSTDCALL __stdcall
+# else
+# define SWIGSTDCALL
+# endif
+#endif
+
+/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
+#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
+# define _CRT_SECURE_NO_DEPRECATE
+#endif
+
+/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
+#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
+# define _SCL_SECURE_NO_DEPRECATE
+#endif
+
+
+
+#include <octave/oct.h>
+#include <octave/parse.h>
+#include <octave/ov-fcn-handle.h>
+#include <octave/Cell.h>
+#include <octave/oct-map.h>
+
+/* -----------------------------------------------------------------------------
+ * swigrun.swg
+ *
+ * This file contains generic C API SWIG runtime support for pointer
+ * type checking.
+ * ----------------------------------------------------------------------------- */
+
+/* This should only be incremented when either the layout of swig_type_info changes,
+ or for whatever reason, the runtime changes incompatibly */
+#define SWIG_RUNTIME_VERSION "4"
+
+/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
+#ifdef SWIG_TYPE_TABLE
+# define SWIG_QUOTE_STRING(x) #x
+# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
+# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
+#else
+# define SWIG_TYPE_TABLE_NAME
+#endif
+
+/*
+ You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
+ creating a static or dynamic library from the SWIG runtime code.
+ In 99.9% of the cases, SWIG just needs to declare them as 'static'.
+
+ But only do this if strictly necessary, ie, if you have problems
+ with your compiler or suchlike.
+*/
+
+#ifndef SWIGRUNTIME
+# define SWIGRUNTIME SWIGINTERN
+#endif
+
+#ifndef SWIGRUNTIMEINLINE
+# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
+#endif
+
+/* Generic buffer size */
+#ifndef SWIG_BUFFER_SIZE
+# define SWIG_BUFFER_SIZE 1024
+#endif
+
+/* Flags for pointer conversions */
+#define SWIG_POINTER_DISOWN 0x1
+#define SWIG_CAST_NEW_MEMORY 0x2
+
+/* Flags for new pointer objects */
+#define SWIG_POINTER_OWN 0x1
+
+
+/*
+ Flags/methods for returning states.
+
+ The SWIG conversion methods, as ConvertPtr, return and integer
+ that tells if the conversion was successful or not. And if not,
+ an error code can be returned (see swigerrors.swg for the codes).
+
+ Use the following macros/flags to set or process the returning
+ states.
+
+ In old versions of SWIG, code such as the following was usually written:
+
+ if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
+ // success code
+ } else {
+ //fail code
+ }
+
+ Now you can be more explicit:
+
+ int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
+ if (SWIG_IsOK(res)) {
+ // success code
+ } else {
+ // fail code
+ }
+
+ which is the same really, but now you can also do
+
+ Type *ptr;
+ int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
+ if (SWIG_IsOK(res)) {
+ // success code
+ if (SWIG_IsNewObj(res) {
+ ...
+ delete *ptr;
+ } else {
+ ...
+ }
+ } else {
+ // fail code
+ }
+
+ I.e., now SWIG_ConvertPtr can return new objects and you can
+ identify the case and take care of the deallocation. Of course that
+ also requires SWIG_ConvertPtr to return new result values, such as
+
+ int SWIG_ConvertPtr(obj, ptr,...) {
+ if (<obj is ok>) {
+ if (<need new object>) {
+ *ptr = <ptr to new allocated object>;
+ return SWIG_NEWOBJ;
+ } else {
+ *ptr = <ptr to old object>;
+ return SWIG_OLDOBJ;
+ }
+ } else {
+ return SWIG_BADOBJ;
+ }
+ }
+
+ Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
+ more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
+ SWIG errors code.
+
+ Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
+ allows to return the 'cast rank', for example, if you have this
+
+ int food(double)
+ int fooi(int);
+
+ and you call
+
+ food(1) // cast rank '1' (1 -> 1.0)
+ fooi(1) // cast rank '0'
+
+ just use the SWIG_AddCast()/SWIG_CheckState()
+*/
+
+#define SWIG_OK (0)
+#define SWIG_ERROR (-1)
+#define SWIG_IsOK(r) (r >= 0)
+#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
+
+/* The CastRankLimit says how many bits are used for the cast rank */
+#define SWIG_CASTRANKLIMIT (1 << 8)
+/* The NewMask denotes the object was created (using new/malloc) */
+#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
+/* The TmpMask is for in/out typemaps that use temporal objects */
+#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
+/* Simple returning values */
+#define SWIG_BADOBJ (SWIG_ERROR)
+#define SWIG_OLDOBJ (SWIG_OK)
+#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
+#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
+/* Check, add and del mask methods */
+#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
+#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
+#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
+#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
+#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
+#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
+
+/* Cast-Rank Mode */
+#if defined(SWIG_CASTRANK_MODE)
+# ifndef SWIG_TypeRank
+# define SWIG_TypeRank unsigned long
+# endif
+# ifndef SWIG_MAXCASTRANK /* Default cast allowed */
+# define SWIG_MAXCASTRANK (2)
+# endif
+# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
+# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
+SWIGINTERNINLINE int SWIG_AddCast(int r) {
+ return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
+}
+SWIGINTERNINLINE int SWIG_CheckState(int r) {
+ return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
+}
+#else /* no cast-rank mode */
+# define SWIG_AddCast
+# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
+#endif
+
+
+#include <string.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef void *(*swig_converter_func)(void *, int *);
+typedef struct swig_type_info *(*swig_dycast_func)(void **);
+
+/* Structure to store information on one type */
+typedef struct swig_type_info {
+ const char *name; /* mangled name of this type */
+ const char *str; /* human readable name of this type */
+ swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
+ struct swig_cast_info *cast; /* linked list of types that can cast into this type */
+ void *clientdata; /* language specific type data */
+ int owndata; /* flag if the structure owns the clientdata */
+} swig_type_info;
+
+/* Structure to store a type and conversion function used for casting */
+typedef struct swig_cast_info {
+ swig_type_info *type; /* pointer to type that is equivalent to this type */
+ swig_converter_func converter; /* function to cast the void pointers */
+ struct swig_cast_info *next; /* pointer to next cast in linked list */
+ struct swig_cast_info *prev; /* pointer to the previous cast */
+} swig_cast_info;
+
+/* Structure used to store module information
+ * Each module generates one structure like this, and the runtime collects
+ * all of these structures and stores them in a circularly linked list.*/
+typedef struct swig_module_info {
+ swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
+ size_t size; /* Number of types in this module */
+ struct swig_module_info *next; /* Pointer to next element in circularly linked list */
+ swig_type_info **type_initial; /* Array of initially generated type structures */
+ swig_cast_info **cast_initial; /* Array of initially generated casting structures */
+ void *clientdata; /* Language specific module data */
+} swig_module_info;
+
+/*
+ Compare two type names skipping the space characters, therefore
+ "char*" == "char *" and "Class<int>" == "Class<int >", etc.
+
+ Return 0 when the two name types are equivalent, as in
+ strncmp, but skipping ' '.
+*/
+SWIGRUNTIME int
+SWIG_TypeNameComp(const char *f1, const char *l1,
+ const char *f2, const char *l2) {
+ for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
+ while ((*f1 == ' ') && (f1 != l1)) ++f1;
+ while ((*f2 == ' ') && (f2 != l2)) ++f2;
+ if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
+ }
+ return (int)((l1 - f1) - (l2 - f2));
+}
+
+/*
+ Check type equivalence in a name list like <name1>|<name2>|...
+ Return 0 if not equal, 1 if equal
+*/
+SWIGRUNTIME int
+SWIG_TypeEquiv(const char *nb, const char *tb) {
+ int equiv = 0;
+ const char* te = tb + strlen(tb);
+ const char* ne = nb;
+ while (!equiv && *ne) {
+ for (nb = ne; *ne; ++ne) {
+ if (*ne == '|') break;
+ }
+ equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
+ if (*ne) ++ne;
+ }
+ return equiv;
+}
+
+/*
+ Check type equivalence in a name list like <name1>|<name2>|...
+ Return 0 if equal, -1 if nb < tb, 1 if nb > tb
+*/
+SWIGRUNTIME int
+SWIG_TypeCompare(const char *nb, const char *tb) {
+ int equiv = 0;
+ const char* te = tb + strlen(tb);
+ const char* ne = nb;
+ while (!equiv && *ne) {
+ for (nb = ne; *ne; ++ne) {
+ if (*ne == '|') break;
+ }
+ equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
+ if (*ne) ++ne;
+ }
+ return equiv;
+}
+
+
+/*
+ Check the typename
+*/
+SWIGRUNTIME swig_cast_info *
+SWIG_TypeCheck(const char *c, swig_type_info *ty) {
+ if (ty) {
+ swig_cast_info *iter = ty->cast;
+ while (iter) {
+ if (strcmp(iter->type->name, c) == 0) {
+ if (iter == ty->cast)
+ return iter;
+ /* Move iter to the top of the linked list */
+ iter->prev->next = iter->next;
+ if (iter->next)
+ iter->next->prev = iter->prev;
+ iter->next = ty->cast;
+ iter->prev = 0;
+ if (ty->cast) ty->cast->prev = iter;
+ ty->cast = iter;
+ return iter;
+ }
+ iter = iter->next;
+ }
+ }
+ return 0;
+}
+
+/*
+ Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
+*/
+SWIGRUNTIME swig_cast_info *
+SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
+ if (ty) {
+ swig_cast_info *iter = ty->cast;
+ while (iter) {
+ if (iter->type == from) {
+ if (iter == ty->cast)
+ return iter;
+ /* Move iter to the top of the linked list */
+ iter->prev->next = iter->next;
+ if (iter->next)
+ iter->next->prev = iter->prev;
+ iter->next = ty->cast;
+ iter->prev = 0;
+ if (ty->cast) ty->cast->prev = iter;
+ ty->cast = iter;
+ return iter;
+ }
+ iter = iter->next;
+ }
+ }
+ return 0;
+}
+
+/*
+ Cast a pointer up an inheritance hierarchy
+*/
+SWIGRUNTIMEINLINE void *
+SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
+ return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
+}
+
+/*
+ Dynamic pointer casting. Down an inheritance hierarchy
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
+ swig_type_info *lastty = ty;
+ if (!ty || !ty->dcast) return ty;
+ while (ty && (ty->dcast)) {
+ ty = (*ty->dcast)(ptr);
+ if (ty) lastty = ty;
+ }
+ return lastty;
+}
+
+/*
+ Return the name associated with this type
+*/
+SWIGRUNTIMEINLINE const char *
+SWIG_TypeName(const swig_type_info *ty) {
+ return ty->name;
+}
+
+/*
+ Return the pretty name associated with this type,
+ that is an unmangled type name in a form presentable to the user.
+*/
+SWIGRUNTIME const char *
+SWIG_TypePrettyName(const swig_type_info *type) {
+ /* The "str" field contains the equivalent pretty names of the
+ type, separated by vertical-bar characters. We choose
+ to print the last name, as it is often (?) the most
+ specific. */
+ if (!type) return NULL;
+ if (type->str != NULL) {
+ const char *last_name = type->str;
+ const char *s;
+ for (s = type->str; *s; s++)
+ if (*s == '|') last_name = s+1;
+ return last_name;
+ }
+ else
+ return type->name;
+}
+
+/*
+ Set the clientdata field for a type
+*/
+SWIGRUNTIME void
+SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
+ swig_cast_info *cast = ti->cast;
+ /* if (ti->clientdata == clientdata) return; */
+ ti->clientdata = clientdata;
+
+ while (cast) {
+ if (!cast->converter) {
+ swig_type_info *tc = cast->type;
+ if (!tc->clientdata) {
+ SWIG_TypeClientData(tc, clientdata);
+ }
+ }
+ cast = cast->next;
+ }
+}
+SWIGRUNTIME void
+SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
+ SWIG_TypeClientData(ti, clientdata);
+ ti->owndata = 1;
+}
+
+/*
+ Search for a swig_type_info structure only by mangled name
+ Search is a O(log #types)
+
+ We start searching at module start, and finish searching when start == end.
+ Note: if start == end at the beginning of the function, we go all the way around
+ the circular list.
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_MangledTypeQueryModule(swig_module_info *start,
+ swig_module_info *end,
+ const char *name) {
+ swig_module_info *iter = start;
+ do {
+ if (iter->size) {
+ register size_t l = 0;
+ register size_t r = iter->size - 1;
+ do {
+ /* since l+r >= 0, we can (>> 1) instead (/ 2) */
+ register size_t i = (l + r) >> 1;
+ const char *iname = iter->types[i]->name;
+ if (iname) {
+ register int compare = strcmp(name, iname);
+ if (compare == 0) {
+ return iter->types[i];
+ } else if (compare < 0) {
+ if (i) {
+ r = i - 1;
+ } else {
+ break;
+ }
+ } else if (compare > 0) {
+ l = i + 1;
+ }
+ } else {
+ break; /* should never happen */
+ }
+ } while (l <= r);
+ }
+ iter = iter->next;
+ } while (iter != end);
+ return 0;
+}
+
+/*
+ Search for a swig_type_info structure for either a mangled name or a human readable name.
+ It first searches the mangled names of the types, which is a O(log #types)
+ If a type is not found it then searches the human readable names, which is O(#types).
+
+ We start searching at module start, and finish searching when start == end.
+ Note: if start == end at the beginning of the function, we go all the way around
+ the circular list.
+*/
+SWIGRUNTIME swig_type_info *
+SWIG_TypeQueryModule(swig_module_info *start,
+ swig_module_info *end,
+ const char *name) {
+ /* STEP 1: Search the name field using binary search */
+ swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
+ if (ret) {
+ return ret;
+ } else {
+ /* STEP 2: If the type hasn't been found, do a complete search
+ of the str field (the human readable name) */
+ swig_module_info *iter = start;
+ do {
+ register size_t i = 0;
+ for (; i < iter->size; ++i) {
+ if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
+ return iter->types[i];
+ }
+ iter = iter->next;
+ } while (iter != end);
+ }
+
+ /* neither found a match */
+ return 0;
+}
+
+/*
+ Pack binary data into a string
+*/
+SWIGRUNTIME char *
+SWIG_PackData(char *c, void *ptr, size_t sz) {
+ static const char hex[17] = "0123456789abcdef";
+ register const unsigned char *u = (unsigned char *) ptr;
+ register const unsigned char *eu = u + sz;
+ for (; u != eu; ++u) {
+ register unsigned char uu = *u;
+ *(c++) = hex[(uu & 0xf0) >> 4];
+ *(c++) = hex[uu & 0xf];
+ }
+ return c;
+}
+
+/*
+ Unpack binary data from a string
+*/
+SWIGRUNTIME const char *
+SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
+ register unsigned char *u = (unsigned char *) ptr;
+ register const unsigned char *eu = u + sz;
+ for (; u != eu; ++u) {
+ register char d = *(c++);
+ register unsigned char uu;
+ if ((d >= '0') && (d <= '9'))
+ uu = ((d - '0') << 4);
+ else if ((d >= 'a') && (d <= 'f'))
+ uu = ((d - ('a'-10)) << 4);
+ else
+ return (char *) 0;
+ d = *(c++);
+ if ((d >= '0') && (d <= '9'))
+ uu |= (d - '0');
+ else if ((d >= 'a') && (d <= 'f'))
+ uu |= (d - ('a'-10));
+ else
+ return (char *) 0;
+ *u = uu;
+ }
+ return c;
+}
+
+/*
+ Pack 'void *' into a string buffer.
+*/
+SWIGRUNTIME char *
+SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
+ char *r = buff;
+ if ((2*sizeof(void *) + 2) > bsz) return 0;
+ *(r++) = '_';
+ r = SWIG_PackData(r,&ptr,sizeof(void *));
+ if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
+ strcpy(r,name);
+ return buff;
+}
+
+SWIGRUNTIME const char *
+SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
+ if (*c != '_') {
+ if (strcmp(c,"NULL") == 0) {
+ *ptr = (void *) 0;
+ return name;
+ } else {
+ return 0;
+ }
+ }
+ return SWIG_UnpackData(++c,ptr,sizeof(void *));
+}
+
+SWIGRUNTIME char *
+SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
+ char *r = buff;
+ size_t lname = (name ? strlen(name) : 0);
+ if ((2*sz + 2 + lname) > bsz) return 0;
+ *(r++) = '_';
+ r = SWIG_PackData(r,ptr,sz);
+ if (lname) {
+ strncpy(r,name,lname+1);
+ } else {
+ *r = 0;
+ }
+ return buff;
+}
+
+SWIGRUNTIME const char *
+SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
+ if (*c != '_') {
+ if (strcmp(c,"NULL") == 0) {
+ memset(ptr,0,sz);
+ return name;
+ } else {
+ return 0;
+ }
+ }
+ return SWIG_UnpackData(++c,ptr,sz);
+}
+
+#ifdef __cplusplus
+}
+#endif
+
+/* Errors in SWIG */
+#define SWIG_UnknownError -1
+#define SWIG_IOError -2
+#define SWIG_RuntimeError -3
+#define SWIG_IndexError -4
+#define SWIG_TypeError -5
+#define SWIG_DivisionByZero -6
+#define SWIG_OverflowError -7
+#define SWIG_SyntaxError -8
+#define SWIG_ValueError -9
+#define SWIG_SystemError -10
+#define SWIG_AttributeError -11
+#define SWIG_MemoryError -12
+#define SWIG_NullReferenceError -13
+
+
+
+
+#if OCTAVE_API_VERSION_OPTION>0
+#define USE_OCTAVE_API_VERSION OCTAVE_API_VERSION_OPTION
+#else
+
+#include <octave/version.h>
+#ifdef OCTAVE_API_VERSION_N
+#define USE_OCTAVE_API_VERSION OCTAVE_API_VERSION_N
+
+#else // Interim hack to distinguish between Octave 3.2 and earlier versions.
+
+#define ComplexLU __ignore
+#include <octave/CmplxLU.h>
+#undef ComplexLU
+#ifdef octave_Complex_LU_h
+#define USE_OCTAVE_API_VERSION 36
+#else
+#define USE_OCTAVE_API_VERSION 37
+#endif
+
+#endif
+
+#endif
+
+SWIGRUNTIME bool SWIG_check_num_args(const char *func_name, int num_args, int max_args, int min_args, int varargs) {
+ if (num_args > max_args && !varargs)
+ error("function %s takes at most %i arguments", func_name, max_args);
+ else if (num_args < min_args)
+ error("function %s requires at least %i arguments", func_name, min_args);
+ else
+ return true;
+ return false;
+}
+
+SWIGRUNTIME octave_value_list *SWIG_Octave_AppendOutput(octave_value_list *ovl, const octave_value &ov) {
+ ovl->append(ov);
+ return ovl;
+}
+
+SWIGRUNTIME octave_value SWIG_ErrorType(int code) {
+ switch (code) {
+ case SWIG_MemoryError:
+ return "SWIG_MemoryError";
+ case SWIG_IOError:
+ return "SWIG_IOError";
+ case SWIG_RuntimeError:
+ return "SWIG_RuntimeError";
+ case SWIG_IndexError:
+ return "SWIG_IndexError";
+ case SWIG_TypeError:
+ return "SWIG_TypeError";
+ case SWIG_DivisionByZero:
+ return "SWIG_DivisionByZero";
+ case SWIG_OverflowError:
+ return "SWIG_OverflowError";
+ case SWIG_SyntaxError:
+ return "SWIG_SyntaxError";
+ case SWIG_ValueError:
+ return "SWIG_ValueError";
+ case SWIG_SystemError:
+ return "SWIG_SystemError";
+ case SWIG_AttributeError:
+ return "SWIG_AttributeError";
+ }
+ return "SWIG unknown error";
+}
+
+SWIGRUNTIME octave_value SWIG_Error(int code, const char *msg) {
+ octave_value type(SWIG_ErrorType(code));
+ std::string r = msg;
+ r += " (" + type.string_value() + ")";
+ error(r.c_str());
+ return octave_value(r);
+}
+
+#define SWIG_fail goto fail
+
+#define SWIG_Octave_ConvertPtr(obj, pptr, type, flags) SWIG_Octave_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
+#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Octave_ConvertPtr(obj, pptr, type, flags)
+#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Octave_ConvertPtrAndOwn(obj, pptr, type, flags, own)
+#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Octave_ConvertPtr(obj, pptr, type, flags)
+#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Octave_NewPointerObj(ptr, type, flags)
+#define swig_owntype int
+
+#define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Octave_ConvertPacked(obj, ptr, sz, ty)
+#define SWIG_NewPackedObj(ptr, sz, type) SWIG_Octave_NewPackedObj(ptr, sz, type)
+
+#define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_ConvertPtr(obj, pptr, type, 0)
+#define SWIG_NewFunctionPtrObj(ptr, type) SWIG_NewPointerObj(ptr, type, 0)
+
+#define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Octave_ConvertPacked(obj, ptr, sz, ty)
+#define SWIG_NewMemberObj(ptr, sz, type) SWIG_Octave_NewPackedObj(ptr, sz, type)
+
+#define SWIG_GetModule(clientdata) SWIG_Octave_GetModule(clientdata)
+#define SWIG_SetModule(clientdata, pointer) SWIG_Octave_SetModule(clientdata,pointer);
+#define SWIG_MODULE_CLIENTDATA_TYPE void*
+
+#define Octave_Error_Occurred() 0
+#define SWIG_Octave_AddErrorMsg(msg) {;}
+
+SWIGRUNTIME swig_module_info *SWIG_Octave_GetModule(void *clientdata);
+SWIGRUNTIME void SWIG_Octave_SetModule(void *clientdata, swig_module_info *pointer);
+
+// For backward compatibility only
+#define SWIG_POINTER_EXCEPTION 0
+#define SWIG_arg_fail(arg) 0
+
+// Runtime API implementation
+
+#include <map>
+#include <vector>
+#include <string>
+
+typedef octave_value_list(*octave_func) (const octave_value_list &, int);
+class octave_swig_type;
+
+namespace Swig {
+ class Director;
+
+ SWIGRUNTIME void swig_register_director(octave_swig_type *self, void *ptr, Director *d);
+ SWIGRUNTIME void swig_director_destroyed(octave_swig_type *self, Director *d);
+ SWIGRUNTIME void swig_director_set_self(Director *d, octave_swig_type *self);
+
+ SWIGRUNTIME octave_base_value *swig_value_ref(octave_swig_type *ost);
+ SWIGRUNTIME octave_swig_type *swig_value_deref(octave_value ov);
+ SWIGRUNTIME octave_swig_type *swig_value_deref(const octave_base_value &ov);
+
+ typedef std::map < void *, Director * > rtdir_map;
+
+ SWIGINTERN rtdir_map* get_rtdir_map() {
+ static swig_module_info *module = 0;
+ if (!module)
+ module = SWIG_GetModule(0);
+ if (!module)
+ return 0;
+ if (!module->clientdata)
+ module->clientdata = new rtdir_map;
+ return (rtdir_map *) module->clientdata;
+ }
+
+ SWIGINTERNINLINE void set_rtdir(void *vptr, Director *d) {
+ rtdir_map* rm = get_rtdir_map();
+ if (rm)
+ (*rm)[vptr] = d;
+ }
+
+ SWIGINTERNINLINE void erase_rtdir(void *vptr) {
+ rtdir_map* rm = get_rtdir_map();
+ if (rm)
+ (*rm).erase(vptr);
+ }
+
+ SWIGINTERNINLINE Director *get_rtdir(void *vptr) {
+ rtdir_map* rm = get_rtdir_map();
+ if (!rm)
+ return 0;
+ rtdir_map::const_iterator pos = rm->find(vptr);
+ Director *rtdir = (pos != rm->end())? pos->second : 0;
+ return rtdir;
+ }
+}
+
+ struct swig_octave_member {
+ const char *name;
+ octave_func method;
+ octave_func get_method;
+ octave_func set_method;
+ int flags; // 1 static, 2 global
+ const char *doc;
+ bool is_static() const {
+ return flags &1;
+ } bool is_global() const {
+ return flags &2;
+ }
+ };
+
+ struct swig_octave_class {
+ const char *name;
+ swig_type_info **type;
+ int director;
+ octave_func constructor;
+ const char *constructor_doc;
+ octave_func destructor;
+ const swig_octave_member *members;
+ const char **base_names;
+ const swig_type_info **base;
+ };
+
+ // octave_swig_type plays the role of both the shadow class and the class
+ // representation within Octave, since there is no support for classes.
+ //
+ // These should really be decoupled, with the class support added to Octave
+ // and the shadow class given by an m-file script. That would dramatically
+ // reduce the runtime complexity, and be more in line w/ other modules.
+
+ class octave_swig_type:public octave_base_value {
+ struct cpp_ptr {
+ void *ptr;
+ bool destroyed;
+ cpp_ptr(void *_ptr):ptr(_ptr), destroyed(false) {
+ }};
+ typedef std::pair < const swig_type_info *, cpp_ptr > type_ptr_pair;
+
+ mutable swig_module_info *module;
+
+ const swig_type_info *construct_type; // type of special type object
+ std::vector < type_ptr_pair > types; // our c++ base classes
+ int own; // whether we call c++ destructors when we die
+
+ typedef std::pair < const swig_octave_member *, octave_value > member_value_pair;
+ typedef std::map < std::string, member_value_pair > member_map;
+ member_map members;
+ bool always_static;
+
+ const swig_octave_member *find_member(const swig_type_info *type, const std::string &name) {
+ if (!type->clientdata)
+ return 0;
+ swig_octave_class *c = (swig_octave_class *) type->clientdata;
+ const swig_octave_member *m;
+ for (m = c->members; m->name; ++m)
+ if (m->name == name)
+ return m;
+ for (int j = 0; c->base_names[j]; ++j) {
+ if (!c->base[j]) {
+ if (!module)
+ module = SWIG_GetModule(0);
+ assert(module);
+ c->base[j] = SWIG_MangledTypeQueryModule(module, module, c->base_names[j]);
+ }
+ if (!c->base[j])
+ return 0;
+ if ((m = find_member(c->base[j], name)))
+ return m;
+ }
+ return 0;
+ }
+
+ member_value_pair *find_member(const std::string &name, bool insert_if_not_found) {
+ member_map::iterator it = members.find(name);
+ if (it != members.end())
+ return &it->second;
+ const swig_octave_member *m;
+ for (unsigned int j = 0; j < types.size(); ++j)
+ if ((m = find_member(types[j].first, name)))
+ return &members.insert(std::make_pair(name, std::make_pair(m, octave_value()))).first->second;
+ if (!insert_if_not_found)
+ return 0;
+ return &members[name];
+ }
+
+ const swig_type_info *find_base(const std::string &name, const swig_type_info *base) {
+ if (!base) {
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ assert(types[j].first->clientdata);
+ swig_octave_class *cj = (swig_octave_class *) types[j].first->clientdata;
+ if (cj->name == name)
+ return types[j].first;
+ }
+ return 0;
+ }
+ assert(base->clientdata);
+ swig_octave_class *c = (swig_octave_class *) base->clientdata;
+ for (int j = 0; c->base_names[j]; ++j) {
+ if (!c->base[j]) {
+ if (!module)
+ module = SWIG_GetModule(0);
+ assert(module);
+ c->base[j] = SWIG_MangledTypeQueryModule(module, module, c->base_names[j]);
+ }
+ if (!c->base[j])
+ return 0;
+ assert(c->base[j]->clientdata);
+ swig_octave_class *cj = (swig_octave_class *) c->base[j]->clientdata;
+ if (cj->name == name)
+ return c->base[j];
+ }
+ return 0;
+ }
+
+ void load_members(const swig_octave_class* c,member_map& out) const {
+ for (const swig_octave_member *m = c->members; m->name; ++m) {
+ if (out.find(m->name) == out.end())
+ out.insert(std::make_pair(m->name, std::make_pair(m, octave_value())));
+ }
+ for (int j = 0; c->base_names[j]; ++j) {
+ if (!c->base[j]) {
+ if (!module)
+ module = SWIG_GetModule(0);
+ assert(module);
+ c->base[j] = SWIG_MangledTypeQueryModule(module, module, c->base_names[j]);
+ }
+ if (!c->base[j])
+ continue;
+ assert(c->base[j]->clientdata);
+ const swig_octave_class *cj =
+ (const swig_octave_class *) c->base[j]->clientdata;
+ load_members(cj,out);
+ }
+ }
+
+ void load_members(member_map& out) const {
+ out=members;
+ for (unsigned int j = 0; j < types.size(); ++j)
+ if (types[j].first->clientdata)
+ load_members((const swig_octave_class *) types[j].first->clientdata, out);
+ }
+
+ octave_value_list member_invoke(member_value_pair *m, const octave_value_list &args, int nargout) {
+ if (m->second.is_defined())
+ return m->second.subsref("(", std::list < octave_value_list > (1, args), nargout);
+ else if (m->first && m->first->method)
+ return m->first->method(args, nargout);
+ error("member not defined or not invocable");
+ return octave_value_list();
+ }
+
+ bool dispatch_unary_op(const std::string &symbol, octave_value &ret) {
+ member_value_pair *m = find_member(symbol, false);
+ if (!m || m->first->is_static() || m->first->is_global())
+ return false;
+ octave_value_list args;
+ args.append(as_value());
+ octave_value_list argout(member_invoke(m, args, 1));
+ if (argout.length() < 1)
+ return false;
+ ret = argout(0);
+ return true;
+ }
+
+ bool dispatch_binary_op(const std::string &symbol, const octave_base_value &rhs, octave_value &ret) {
+ member_value_pair *m = find_member(symbol, false);
+ if (!m || m->first->is_static() || m->first->is_global())
+ return false;
+ octave_value_list args;
+ args.append(as_value());
+ args.append(make_value_hack(rhs));
+ octave_value_list argout(member_invoke(m, args, 1));
+ if (argout.length() < 1)
+ return false;
+ ret = argout(0);
+ return true;
+ }
+
+ bool dispatch_index_op(const std::string &symbol, const octave_value_list &rhs, octave_value_list &ret) {
+ member_value_pair *m = find_member(symbol, false);
+ if (!m || m->first->is_static() || m->first->is_global())
+ return false;
+ octave_value_list args;
+ args.append(as_value());
+ args.append(rhs);
+ octave_value_list argout(member_invoke(m, args, 1));
+ if (argout.length() >= 1)
+ ret = argout(0);
+ return true;
+ }
+
+ octave_value_list member_deref(member_value_pair *m, const octave_value_list &args) {
+ if (m->second.is_defined())
+ return m->second;
+ else if (m->first) {
+ if (m->first->get_method)
+ return m->first->get_method(args, 1);
+ else if (m->first->method)
+ return octave_value(new octave_builtin(m->first->method));
+ }
+ error("undefined member");
+ return octave_value_list();
+ }
+
+ static octave_value make_value_hack(const octave_base_value &x) {
+ ((octave_swig_type &) x).count++;
+ return octave_value((octave_base_value *) &x);
+ }
+
+ octave_swig_type(const octave_swig_type &x);
+ octave_swig_type &operator=(const octave_swig_type &rhs);
+ public:
+
+ octave_swig_type(void *_ptr = 0, const swig_type_info *_type = 0, int _own = 0,
+ bool _always_static = false)
+ : module(0), construct_type(_ptr ? 0 : _type), own(_own),
+ always_static(_always_static) {
+ if (_type || _ptr)
+ types.push_back(std::make_pair(_type, _ptr));
+ if (_ptr) {
+ Swig::Director *d = Swig::get_rtdir(_ptr);
+ if (d)
+ Swig::swig_director_set_self(d, this);
+ }
+ }
+
+ ~octave_swig_type() {
+ if (own) {
+ ++count;
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ if (!types[j].first || !types[j].first->clientdata)
+ continue;
+ swig_octave_class *c = (swig_octave_class *) types[j].first->clientdata;
+ if (c->destructor && !types[j].second.destroyed && types[j].second.ptr) {
+ c->destructor(as_value(), 0);
+ }
+ }
+ }
+ for (unsigned int j = 0; j < types.size(); ++j)
+ Swig::erase_rtdir(types[j].second.ptr);
+ }
+
+ octave_value as_value() {
+ ++count;
+ return Swig::swig_value_ref(this);
+ }
+
+ void incref() {
+ ++count;
+ }
+
+ void decref() {
+ if (!--count)
+ delete this;
+ }
+
+ long swig_this() const {
+ if (!types.size())
+ return (long) this;
+ return (long) types[0].second.ptr;
+ }
+ const char* help_text() const {
+ if (!types.size())
+ return 0;
+ if (!types[0].first->clientdata)
+ return 0;
+ swig_octave_class *c = (swig_octave_class *) types[0].first->clientdata;
+ return c->constructor_doc;
+ }
+
+ std::string swig_type_name() const {
+ // * need some way to manually name subclasses.
+ // * eg optional first arg to subclass(), or named_subclass()
+ std::string ret;
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ if (j)
+ ret += "_";
+ if (types[j].first->clientdata) {
+ swig_octave_class *c = (swig_octave_class *) types[j].first->clientdata;
+ ret += c->name;
+ } else
+ ret += types[j].first->name;
+ }
+ return ret;
+ }
+
+ void merge(octave_swig_type &rhs) {
+ rhs.own = 0;
+ for (unsigned int j = 0; j < rhs.types.size(); ++j) {
+ assert(!rhs.types[j].second.destroyed);
+ Swig::Director *d = Swig::get_rtdir(rhs.types[j].second.ptr);
+ if (d)
+ Swig::swig_director_set_self(d, this);
+ }
+ types.insert(types.end(), rhs.types.begin(), rhs.types.end());
+ members.insert(rhs.members.begin(), rhs.members.end());
+ rhs.types.clear();
+ rhs.members.clear();
+ }
+
+ void install_global() {
+ for (member_map::const_iterator it = members.begin(); it != members.end(); ++it) {
+ if (it->second.first && it->second.first->method)
+ install_builtin_function(it->second.first->method, it->first,
+ it->second.first->doc?it->second.first->doc:std::string());
+ else if (it->second.second.is_defined()) {
+#if USE_OCTAVE_API_VERSION<37
+ link_to_global_variable(curr_sym_tab->lookup(it->first, true));
+#else
+ symbol_table::varref(it->first);
+ symbol_table::mark_global(it->first);
+#endif
+ set_global_value(it->first, it->second.second);
+
+#if USE_OCTAVE_API_VERSION<37
+ octave_swig_type *ost = Swig::swig_value_deref(it->second.second);
+ if (ost) {
+ const char* h = ost->help_text();
+ if (h) {
+ symbol_record *sr = global_sym_tab->lookup (it->first, true);
+ sr->document(h);
+ }
+ }
+#endif
+ }
+ }
+ }
+
+ void *cast(swig_type_info *type, int *_own, int flags) {
+ if (_own)
+ *_own = own;
+ if (flags &SWIG_POINTER_DISOWN)
+ own = 0;
+ if (!type && types.size())
+ return types[0].second.ptr;
+ for (unsigned int j = 0; j < types.size(); ++j)
+ if (type == types[j].first)
+ return types[j].second.ptr;
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ swig_cast_info *tc = SWIG_TypeCheck(types[j].first->name, type);
+ if (!tc)
+ continue;
+ int newmemory = 0;
+ void *vptr = SWIG_TypeCast(tc, types[j].second.ptr, &newmemory);
+ assert(!newmemory); // newmemory handling not yet implemented
+ return vptr;
+ }
+ return 0;
+ }
+
+ bool is_owned() const {
+ return own;
+ }
+
+ void director_destroyed(Swig::Director *d) {
+ bool found = false;
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ Swig::Director *dj = Swig::get_rtdir(types[j].second.ptr);
+ if (dj == d) {
+ types[j].second.destroyed = true;
+ found = true;
+ }
+ }
+ assert(found);
+ }
+
+ void assign(const std::string &name, const octave_value &ov) {
+ members[name] = std::make_pair((const swig_octave_member *) 0, ov);
+ }
+
+ void assign(const std::string &name, const swig_octave_member *m) {
+ members[name] = std::make_pair(m, octave_value());
+ }
+
+ octave_base_value *clone() const {
+ // pass-by-value is probably not desired, and is harder;
+ // requires calling copy constructors of contained types etc.
+ assert(0);
+ *(int *) 0 = 0;
+ return 0;
+ }
+
+ octave_base_value *empty_clone() const {
+ return new octave_swig_type();
+ }
+
+ bool is_defined() const {
+ return true;
+ }
+
+ virtual bool is_map() const {
+ return true;
+ }
+
+ virtual octave_value subsref(const std::string &ops, const std::list < octave_value_list > &idx) {
+ octave_value_list ovl = subsref(ops, idx, 1);
+ return ovl.length()? ovl(0) : octave_value();
+ }
+
+ virtual octave_value_list subsref(const std::string &ops, const std::list < octave_value_list > &idx, int nargout) {
+ assert(ops.size() > 0);
+ assert(ops.size() == idx.size());
+
+ std::list < octave_value_list >::const_iterator idx_it = idx.begin();
+ int skip = 0;
+ octave_value_list sub_ovl;
+
+ // constructor invocation
+ if (ops[skip] == '(' && construct_type) {
+ assert(construct_type->clientdata);
+ swig_octave_class *c = (swig_octave_class *) construct_type->clientdata;
+ if (!c->constructor) {
+ error("cannot create instance");
+ return octave_value_list();
+ }
+ octave_value_list args;
+ if (c->director)
+ args.append(Swig::swig_value_ref(new octave_swig_type(this, 0, 0)));
+ args.append(*idx_it++);
+ ++skip;
+ sub_ovl = c->constructor(args, nargout);
+ }
+ // member dereference or invocation
+ else if (ops[skip] == '.') {
+ std::string subname;
+ const swig_type_info *base = 0; // eg, a.base.base_cpp_mem
+ for (;;) {
+ octave_value_list subname_ovl(*idx_it++);
+ ++skip;
+ assert(subname_ovl.length() == 1 && subname_ovl(0).is_string());
+ subname = subname_ovl(0).string_value();
+
+ const swig_type_info *next_base = find_base(subname, base);
+ if (!next_base || skip >= (int) ops.size() || ops[skip] != '.')
+ break;
+ base = next_base;
+ }
+
+ member_value_pair tmp, *m = &tmp;
+ if (!base || !(m->first = find_member(base, subname)))
+ m = find_member(subname, false);
+ if (!m) {
+ error("member not found");
+ return octave_value_list();
+ }
+
+ octave_value_list args;
+ if (!always_static &&
+ (!m->first || (!m->first->is_static() && !m->first->is_global())))
+ args.append(as_value());
+ if (skip < (int) ops.size() && ops[skip] == '(' &&
+ ((m->first && m->first->method) || m->second.is_function() ||
+ m->second.is_function_handle())) {
+ args.append(*idx_it++);
+ ++skip;
+ sub_ovl = member_invoke(m, args, nargout);
+ } else {
+ sub_ovl = member_deref(m, args);
+ }
+ }
+ // index operator
+ else {
+ if (ops[skip] == '(' || ops[skip] == '{') {
+ const char *op_name = ops[skip] == '(' ? "__paren__" : "__brace__";
+ octave_value_list args;
+ args.append(*idx_it++);
+ ++skip;
+ if (!dispatch_index_op(op_name, args, sub_ovl)) {
+ error("error evaluating index operator");
+ return octave_value_list();
+ }
+ } else {
+ error("unsupported subsref");
+ return octave_value_list();
+ }
+ }
+
+ if (skip >= (int) ops.size())
+ return sub_ovl;
+ if (sub_ovl.length() < 1) {
+ error("bad subs ref");
+ return octave_value_list();
+ }
+ return sub_ovl(0).next_subsref(nargout, ops, idx, skip);
+ }
+
+ octave_value subsasgn(const std::string &ops, const std::list < octave_value_list > &idx, const octave_value &rhs) {
+ assert(ops.size() > 0);
+ assert(ops.size() == idx.size());
+
+ std::list < octave_value_list >::const_iterator idx_it = idx.begin();
+ int skip = 0;
+
+ if (ops.size() > 1) {
+ std::list < octave_value_list >::const_iterator last = idx.end();
+ --last;
+ std::list < octave_value_list > next_idx(idx.begin(), last);
+ octave_value next_ov = subsref(ops.substr(0, ops.size() - 1), next_idx);
+ next_ov.subsasgn(ops.substr(ops.size() - 1), std::list < octave_value_list > (1, *last), rhs);
+ }
+
+ else if (ops[skip] == '(' || ops[skip] == '{') {
+ const char *op_name = ops[skip] == '(' ? "__paren_asgn__" : "__brace_asgn__";
+ member_value_pair *m = find_member(op_name, false);
+ if (m) {
+ octave_value_list args;
+ args.append(as_value());
+ args.append(*idx_it);
+ args.append(rhs);
+ member_invoke(m, args, 1);
+ } else
+ error("%s member not found", op_name);
+ }
+
+ else if (ops[skip] == '.') {
+ octave_value_list subname_ovl(*idx_it++);
+ ++skip;
+ assert(subname_ovl.length() == 1 &&subname_ovl(0).is_string());
+ std::string subname = subname_ovl(0).string_value();
+
+ member_value_pair *m = find_member(subname, true);
+ if (!m->first || !m->first->set_method) {
+ m->first = 0;
+ m->second = rhs;
+ } else if (m->first->set_method) {
+ octave_value_list args;
+ if (!m->first->is_static() && !m->first->is_global())
+ args.append(as_value());
+ args.append(rhs);
+ m->first->set_method(args, 1);
+ } else
+ error("member not assignable");
+ } else
+ error("unsupported subsasgn");
+
+ return as_value();
+ }
+
+ virtual bool is_string() const {
+ octave_swig_type *nc_this = const_cast < octave_swig_type *>(this);
+ return !!nc_this->find_member("__str__", false);
+ }
+
+ virtual std::string string_value(bool force = false) const {
+ octave_swig_type *nc_this = const_cast < octave_swig_type *>(this);
+ member_value_pair *m = nc_this->find_member("__str__", false);
+ if (!m) {
+ error("__str__ method not defined");
+ return std::string();
+ }
+ octave_value_list outarg = nc_this->member_invoke(m, octave_value_list(nc_this->as_value()), 1);
+ if (outarg.length() < 1 || !outarg(0).is_string()) {
+ error("__str__ method did not return a string");
+ return std::string();
+ }
+ return outarg(0).string_value();
+ }
+
+ virtual Octave_map map_value() const {
+ return Octave_map();
+ }
+
+ virtual string_vector map_keys() const {
+ member_map tmp;
+ load_members(tmp);
+
+ string_vector keys(tmp.size());
+ int k = 0;
+ for (member_map::iterator it = tmp.begin(); it != tmp.end(); ++it)
+ keys(k++) = it->first;
+
+ return keys;
+ }
+
+ virtual bool save_ascii (std::ostream& os) {
+ return true;
+ }
+
+ virtual bool load_ascii (std::istream& is) {
+ return true;
+ }
+
+ virtual bool save_binary (std::ostream& os, bool& save_as_floats) {
+ return true;
+ }
+
+ virtual bool load_binary (std::istream& is, bool swap,
+ oct_mach_info::float_format fmt) {
+ return true;
+ }
+
+#if defined (HAVE_HDF5)
+ virtual bool
+ save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats) {
+ return true;
+ }
+
+ virtual bool
+ load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug) {
+ return true;
+ }
+#endif
+
+ virtual octave_value convert_to_str(bool pad = false, bool force = false, char type = '"') const {
+ return string_value();
+ }
+
+ virtual octave_value convert_to_str_internal(bool pad, bool force, char type) const {
+ return string_value();
+ }
+
+ static bool dispatch_global_op(const std::string &symbol, const octave_value_list &args, octave_value &ret) {
+ // we assume that "op_"-prefixed functions are installed in global namespace
+ // (rather than any module namespace).
+
+ octave_value fcn = get_global_value(symbol, true);
+ if (!fcn.is_function() && !fcn.is_function_handle())
+ return false;
+ ret = fcn.subsref("(", std::list < octave_value_list > (1, args));
+ return true;
+ }
+
+ static octave_value dispatch_unary_op(const octave_base_value &x, const char *op_name) {
+ octave_swig_type *ost = Swig::swig_value_deref(x);
+ assert(ost);
+
+ octave_value ret;
+ if (ost->dispatch_unary_op(std::string("__") + op_name + std::string("__"), ret))
+ return ret;
+ std::string symbol = "op_" + ost->swig_type_name() + "_" + op_name;
+ octave_value_list args;
+ args.append(make_value_hack(x));
+ if (dispatch_global_op(symbol, args, ret))
+ return ret;
+
+ error("could not dispatch unary operator");
+ return octave_value();
+ }
+
+ static octave_value dispatch_binary_op(const octave_base_value &lhs, const octave_base_value &rhs, const char *op_name) {
+ octave_swig_type *lhs_ost = Swig::swig_value_deref(lhs);
+ octave_swig_type *rhs_ost = Swig::swig_value_deref(rhs);
+
+ octave_value ret;
+ if (lhs_ost && lhs_ost->dispatch_binary_op(std::string("__") + op_name + std::string("__"), rhs, ret))
+ return ret;
+
+ std::string symbol;
+ octave_value_list args;
+ args.append(make_value_hack(lhs));
+ args.append(make_value_hack(rhs));
+
+ symbol = "op_";
+ symbol += lhs_ost ? lhs_ost->swig_type_name() : lhs.type_name();
+ symbol += "_";
+ symbol += op_name;
+ symbol += "_";
+ symbol += rhs_ost ? rhs_ost->swig_type_name() : rhs.type_name();
+ if (dispatch_global_op(symbol, args, ret))
+ return ret;
+
+ symbol = "op_";
+ symbol += lhs_ost ? lhs_ost->swig_type_name() : lhs.type_name();
+ symbol += "_";
+ symbol += op_name;
+ symbol += "_";
+ symbol += "any";
+ if (dispatch_global_op(symbol, args, ret))
+ return ret;
+
+ symbol = "op_";
+ symbol += "any";
+ symbol += "_";
+ symbol += op_name;
+ symbol += "_";
+ symbol += rhs_ost ? rhs_ost->swig_type_name() : rhs.type_name();
+ if (dispatch_global_op(symbol, args, ret))
+ return ret;
+
+ error("could not dispatch binary operator");
+ return octave_value();
+ }
+
+ void print(std::ostream &os, bool pr_as_read_syntax = false) const {
+ if (is_string()) {
+ os << string_value();
+ return;
+ }
+
+ member_map tmp;
+ load_members(tmp);
+
+ os << "{" << std::endl;
+ for (unsigned int j = 0; j < types.size(); ++j) {
+ if (types[j].first->clientdata) {
+ const swig_octave_class *c = (const swig_octave_class *) types[j].first->clientdata;
+ os << " " << c->name << ", ptr = " << types[j].second.ptr << std::endl;
+ } else {
+ os << " " << types[j].first->name << ", ptr = " << types[j].second.ptr << std::endl;
+ }
+ }
+ for (member_map::const_iterator it = tmp.begin(); it != tmp.end(); ++it) {
+ if (it->second.first) {
+ const char *objtype = it->second.first->method ? "method" : "variable";
+ const char *modifier = (it->second.first->flags &1) ? "static " : (it->second.first->flags &2) ? "global " : "";
+ os << " " << it->second.first->name << " (" << modifier << objtype << ")" << std::endl;
+ assert(it->second.first->name == it->first);
+ } else {
+ os << " " << it->first << std::endl;
+ }
+ }
+ os << "}" << std::endl;
+ }
+ };
+
+ // Octave tries hard to preserve pass-by-value semantics. Eg, assignments
+ // will call clone() via make_unique() if there is more than one outstanding
+ // reference to the lhs, and forces the clone's reference count to 1
+ // (so you can't just increment your own count and return this).
+ //
+ // One way to fix this (without modifying Octave) is to add a level of
+ // indirection such that clone copies ref-counted pointer and we keep
+ // pass-by-ref semantics (which are more natural/expected for C++ bindings).
+ //
+ // Supporting both pass-by-{ref,value} and toggling via %feature/option
+ // might be nice.
+
+ class octave_swig_ref:public octave_base_value {
+ octave_swig_type *ptr;
+ public:
+ octave_swig_ref(octave_swig_type *_ptr = 0)
+ :ptr(_ptr) { }
+
+ ~octave_swig_ref()
+ { if (ptr) ptr->decref(); }
+
+ octave_swig_type *get_ptr() const
+ { return ptr; }
+
+ octave_base_value *clone() const
+ { if (ptr) ptr->incref(); return new octave_swig_ref(ptr); }
+
+ octave_base_value *empty_clone() const
+ { return new octave_swig_ref(0); }
+
+ bool is_defined() const
+ { return ptr->is_defined(); }
+
+ virtual bool is_map() const
+ { return ptr->is_map(); }
+
+ virtual octave_value subsref(const std::string &ops, const std::list < octave_value_list > &idx)
+ { return ptr->subsref(ops, idx); }
+
+ virtual octave_value_list subsref(const std::string &ops, const std::list < octave_value_list > &idx, int nargout)
+ { return ptr->subsref(ops, idx, nargout); }
+
+ octave_value subsasgn(const std::string &ops, const std::list < octave_value_list > &idx, const octave_value &rhs)
+ { return ptr->subsasgn(ops, idx, rhs); }
+
+ virtual bool is_string() const
+ { return ptr->is_string(); }
+
+ virtual std::string string_value(bool force = false) const
+ { return ptr->string_value(force); }
+
+ virtual Octave_map map_value() const
+ { return ptr->map_value(); }
+
+ virtual string_vector map_keys() const
+ { return ptr->map_keys(); }
+
+ virtual bool save_ascii (std::ostream& os)
+ { return ptr->save_ascii(os); }
+
+ virtual bool load_ascii (std::istream& is)
+ { return ptr->load_ascii(is); }
+
+ virtual bool save_binary (std::ostream& os, bool& save_as_floats)
+ { return ptr->save_binary(os, save_as_floats); }
+
+ virtual bool load_binary (std::istream& is, bool swap,
+ oct_mach_info::float_format fmt)
+ { return ptr->load_binary(is, swap, fmt); }
+
+#if defined (HAVE_HDF5)
+ virtual bool
+ save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats)
+ { return ptr->save_hdf5(loc_id, name, save_as_floats); }
+
+ virtual bool
+ load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug)
+ { return ptr->load_hdf5(loc_id, name, have_h5giterate_bug); }
+#endif
+
+ virtual octave_value convert_to_str(bool pad = false, bool force = false, char type = '"') const
+ { return ptr->convert_to_str(pad, force, type); }
+
+ virtual octave_value convert_to_str_internal(bool pad, bool force, char type) const
+ { return ptr->convert_to_str_internal(pad, force, type); }
+
+ void print(std::ostream &os, bool pr_as_read_syntax = false) const
+ { return ptr->print(os, pr_as_read_syntax); }
+
+ private:
+ DECLARE_OCTAVE_ALLOCATOR;
+ DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA;
+ };
+ DEFINE_OCTAVE_ALLOCATOR(octave_swig_ref);
+ DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA(octave_swig_ref, "swig_ref", "swig_ref");
+
+ class octave_swig_packed:public octave_base_value {
+ swig_type_info *type;
+ std::vector < char > buf;
+ public:
+
+ octave_swig_packed(swig_type_info *_type = 0, const void *_buf = 0, size_t _buf_len = 0)
+ : type(_type), buf((const char*)_buf, (const char*)_buf + _buf_len) {
+ }
+
+ bool copy(swig_type_info *outtype, void *ptr, size_t sz) const {
+ if (outtype && outtype != type)
+ return false;
+ assert(sz <= buf.size());
+ std::copy(buf.begin(), buf.begin()+sz, (char*)ptr);
+ return true;
+ }
+
+ octave_base_value *clone() const {
+ return new octave_swig_packed(*this);
+ }
+
+ octave_base_value *empty_clone() const {
+ return new octave_swig_packed();
+ }
+
+ bool is_defined() const {
+ return true;
+ }
+
+ void print(std::ostream &os, bool pr_as_read_syntax = false) const {
+ os << "swig packed type: name = " << (type ? type->name : std::string()) << ", len = " << buf.size() << std::endl;
+ }
+
+
+ virtual bool save_ascii (std::ostream& os) {
+ return true;
+ }
+
+ virtual bool load_ascii (std::istream& is) {
+ return true;
+ }
+
+ virtual bool save_binary (std::ostream& os, bool& save_as_floats) {
+ return true;
+ }
+
+ virtual bool load_binary (std::istream& is, bool swap,
+ oct_mach_info::float_format fmt) {
+ return true;
+ }
+
+#if defined (HAVE_HDF5)
+ virtual bool
+ save_hdf5 (hid_t loc_id, const char *name, bool save_as_floats) {
+ return true;
+ }
+
+ virtual bool
+ load_hdf5 (hid_t loc_id, const char *name, bool have_h5giterate_bug) {
+ return true;
+ }
+#endif
+
+ private:
+ DECLARE_OCTAVE_ALLOCATOR;
+ DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA;
+ };
+ DEFINE_OCTAVE_ALLOCATOR(octave_swig_packed);
+ DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA(octave_swig_packed, "swig_packed", "swig_packed");
+
+ static octave_value_list octave_set_immutable(const octave_value_list &args, int nargout) {
+ error("attempt to set immutable member variable");
+ return octave_value_list();
+ }
+
+ struct octave_value_ref {
+ const octave_value_list &ovl;
+ int j;
+
+ octave_value_ref(const octave_value_list &_ovl, int _j)
+ :ovl(_ovl), j(_j) { }
+
+ operator octave_value() const {
+ return ovl(j);
+ }
+
+ octave_value operator*() const {
+ return ovl(j);
+ }
+ };
+
+ octave_value_list swig_subclass(const octave_value_list &args, int nargout) {
+ octave_swig_type *top = new octave_swig_type;
+ for (int j = 0; j < args.length(); ++j) {
+ if (args(j).type_id() == octave_swig_ref::static_type_id()) {
+ octave_swig_ref *osr = static_cast < octave_swig_ref *>(args(j).internal_rep());
+ octave_swig_type *ost = osr->get_ptr();
+ if (!ost->is_owned()) {
+ error("cannot subclass object not constructed on octave side");
+ return octave_value_list();
+ }
+ top->merge(*ost);
+ } else if (args(j).is_function_handle()) {
+ top->assign(args(j).fcn_handle_value()->fcn_name(), args(j));
+ } else if (args(j).is_string()) {
+ if (j + 1 >= args.length()) {
+ error("member assignments must be of string,value form");
+ return octave_value_list();
+ }
+ top->assign(args(j).string_value(), args(j + 1));
+ ++j;
+ } else {
+ error("invalid arguments to subclass");
+ return octave_value_list();
+ }
+ }
+ return octave_value(Swig::swig_value_ref(top));
+ }
+
+ octave_value_list swig_type(const octave_value_list &args, int nargout) {
+ if (args.length() != 1) {
+ error("swig_typeinfo must be called with only a single object");
+ return octave_value_list();
+ }
+ octave_swig_type *ost = Swig::swig_value_deref(args(0));
+ if (!ost) {
+ error("object is not a swig_ref");
+ return octave_value_list();
+ }
+ return octave_value(ost->swig_type_name());
+ }
+
+ octave_value_list swig_typequery(const octave_value_list &args, int nargout) {
+ if (args.length() != 1 || !args(0).is_string()) {
+ error("swig_typeinfo must be called with single string argument");
+ return octave_value_list();
+ }
+ swig_module_info *module = SWIG_GetModule(0);
+ swig_type_info *type = SWIG_TypeQueryModule(module, module, args(0).string_value().c_str());
+ if (!type)
+ return octave_value("<unknown>");
+ return octave_value(type->name);
+ }
+
+ octave_value_list swig_this(const octave_value_list &args, int nargout) {
+ if (args.length() != 1) {
+ error("swig_typeinfo must be called with only a single object");
+ return octave_value_list();
+ }
+ if (args(0).is_matrix_type() && args(0).rows() == 0 && args(0).columns() == 0)
+ return octave_value(octave_uint64(0));
+ octave_swig_type *ost = Swig::swig_value_deref(args(0));
+ if (!ost) {
+ error("object is not a swig_ref");
+ return octave_value_list();
+ }
+ return octave_value(octave_uint64((unsigned long long) ost->swig_this()));
+ }
+
+#define SWIG_DIRECTORS
+
+namespace Swig {
+ class Director {
+ octave_swig_type *self;
+ bool disowned;
+
+ Director(const Director &x);
+ Director &operator=(const Director &rhs);
+ public:
+
+ Director(void *vptr):self(0), disowned(false) {
+ set_rtdir(vptr, this);
+ }
+
+ ~Director() {
+ swig_director_destroyed(self, this);
+ if (disowned)
+ self->decref();
+ }
+
+ void swig_set_self(octave_swig_type *new_self) {
+ assert(!disowned);
+ self = new_self;
+ }
+
+ octave_swig_type *swig_get_self() const {
+ return self;
+ }
+
+ void swig_disown() {
+ if (disowned)
+ return;
+ disowned = true;
+ self->incref();
+ }
+ };
+
+ struct DirectorTypeMismatchException {
+ static void raise(const char *msg) {
+ // ... todo
+ throw(DirectorTypeMismatchException());
+ }
+
+ static void raise(const octave_value &ov, const char *msg) {
+ // ... todo
+ raise(msg);
+ }
+ };
+ struct DirectorPureVirtualException {
+ static void raise(const char *msg) {
+ // ... todo
+ throw(DirectorPureVirtualException());
+ }
+
+ static void raise(const octave_value &ov, const char *msg) {
+ // ... todo
+ raise(msg);
+ }
+ };
+
+}
+
+ SWIGRUNTIME void swig_acquire_ownership(void *vptr) {
+ // assert(0);
+ // ... todo
+ }
+
+ SWIGRUNTIME void swig_acquire_ownership_array(void *vptr) {
+ // assert(0);
+ // ... todo
+ }
+
+ SWIGRUNTIME void swig_acquire_ownership_obj(void *vptr, int own) {
+ // assert(0);
+ // ... todo
+ }
+
+ namespace Swig {
+ SWIGRUNTIME void swig_director_destroyed(octave_swig_type *self, Director *d) {
+ self->director_destroyed(d);
+ }
+
+ SWIGRUNTIME void swig_director_set_self(Director *d, octave_swig_type *self) {
+ d->swig_set_self(self);
+ }
+
+ SWIGRUNTIME octave_base_value *swig_value_ref(octave_swig_type *ost) {
+ return new octave_swig_ref(ost);
+ }
+
+ SWIGRUNTIME octave_swig_type *swig_value_deref(octave_value ov) {
+ if (ov.is_cell() && ov.rows() == 1 && ov.columns() == 1)
+ ov = ov.cell_value()(0);
+ return swig_value_deref(*ov.internal_rep());
+ }
+
+ SWIGRUNTIME octave_swig_type *swig_value_deref(const octave_base_value &ov) {
+ if (ov.type_id() != octave_swig_ref::static_type_id())
+ return 0;
+ const octave_swig_ref *osr = static_cast < const octave_swig_ref *>(&ov);
+ return osr->get_ptr();
+ }
+
+ }
+
+#define swig_unary_op(name) \
+SWIGRUNTIME octave_value swig_unary_op_##name(const octave_base_value &x) { \
+ return octave_swig_type::dispatch_unary_op(x,#name); \
+}
+#define swig_binary_op(name) \
+SWIGRUNTIME octave_value swig_binary_op_##name(const octave_base_value&lhs,const octave_base_value &rhs) { \
+ return octave_swig_type::dispatch_binary_op(lhs,rhs,#name); \
+}
+#define swigreg_unary_op(name) \
+if (!octave_value_typeinfo::lookup_unary_op(octave_value::op_##name,tid)) \
+octave_value_typeinfo::register_unary_op(octave_value::op_##name,tid,swig_unary_op_##name);
+#define swigreg_binary_op(name) \
+if (!octave_value_typeinfo::lookup_binary_op(octave_value::op_##name,tid1,tid2)) \
+octave_value_typeinfo::register_binary_op(octave_value::op_##name,tid1,tid2,swig_binary_op_##name);
+
+ swig_unary_op(not);
+ swig_unary_op(uplus);
+ swig_unary_op(uminus);
+ swig_unary_op(transpose);
+ swig_unary_op(hermitian);
+ swig_unary_op(incr);
+ swig_unary_op(decr);
+
+ swig_binary_op(add);
+ swig_binary_op(sub);
+ swig_binary_op(mul);
+ swig_binary_op(div);
+ swig_binary_op(pow);
+ swig_binary_op(ldiv);
+ swig_binary_op(lshift);
+ swig_binary_op(rshift);
+ swig_binary_op(lt);
+ swig_binary_op(le);
+ swig_binary_op(eq);
+ swig_binary_op(ge);
+ swig_binary_op(gt);
+ swig_binary_op(ne);
+ swig_binary_op(el_mul);
+ swig_binary_op(el_div);
+ swig_binary_op(el_pow);
+ swig_binary_op(el_ldiv);
+ swig_binary_op(el_and);
+ swig_binary_op(el_or);
+
+ SWIGRUNTIME void SWIG_InstallUnaryOps(int tid) {
+ swigreg_unary_op(not);
+ swigreg_unary_op(uplus);
+ swigreg_unary_op(uminus);
+ swigreg_unary_op(transpose);
+ swigreg_unary_op(hermitian);
+ swigreg_unary_op(incr);
+ swigreg_unary_op(decr);
+ }
+ SWIGRUNTIME void SWIG_InstallBinaryOps(int tid1, int tid2) {
+ swigreg_binary_op(add);
+ swigreg_binary_op(sub);
+ swigreg_binary_op(mul);
+ swigreg_binary_op(div);
+ swigreg_binary_op(pow);
+ swigreg_binary_op(ldiv);
+ swigreg_binary_op(lshift);
+ swigreg_binary_op(rshift);
+ swigreg_binary_op(lt);
+ swigreg_binary_op(le);
+ swigreg_binary_op(eq);
+ swigreg_binary_op(ge);
+ swigreg_binary_op(gt);
+ swigreg_binary_op(ne);
+ swigreg_binary_op(el_mul);
+ swigreg_binary_op(el_div);
+ swigreg_binary_op(el_pow);
+ swigreg_binary_op(el_ldiv);
+ swigreg_binary_op(el_and);
+ swigreg_binary_op(el_or);
+ }
+ SWIGRUNTIME void SWIG_InstallOps(int tid) {
+ // here we assume that tid are conseq integers increasing from zero, and
+ // that our tid is the last one. might be better to have explicit string
+ // list of types we should bind to, and use lookup_type to resolve their tid.
+
+ SWIG_InstallUnaryOps(tid);
+ SWIG_InstallBinaryOps(tid, tid);
+ for (int j = 0; j < tid; ++j) {
+ SWIG_InstallBinaryOps(j, tid);
+ SWIG_InstallBinaryOps(tid, j);
+ }
+ }
+
+SWIGRUNTIME octave_value SWIG_Octave_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
+ int own = (flags &SWIG_POINTER_OWN) ? SWIG_POINTER_OWN : 0;
+
+ Swig::Director *d = Swig::get_rtdir(ptr);
+ if (d && d->swig_get_self())
+ return d->swig_get_self()->as_value();
+ return Swig::swig_value_ref(new octave_swig_type(ptr, type, own));
+}
+
+SWIGRUNTIME int SWIG_Octave_ConvertPtrAndOwn(octave_value ov, void **ptr, swig_type_info *type, int flags, int *own) {
+ if (ov.is_cell() && ov.rows() == 1 && ov.columns() == 1)
+ ov = ov.cell_value()(0);
+ if (!ov.is_defined() ||
+ (ov.is_matrix_type() && ov.rows() == 0 && ov.columns() == 0) ) {
+ if (ptr)
+ *ptr = 0;
+ return SWIG_OK;
+ }
+ if (ov.type_id() != octave_swig_ref::static_type_id())
+ return SWIG_ERROR;
+ octave_swig_ref *osr = static_cast < octave_swig_ref *>(ov.internal_rep());
+ octave_swig_type *ost = osr->get_ptr();
+ void *vptr = ost->cast(type, own, flags);
+ if (!vptr)
+ return SWIG_ERROR;
+ if (ptr)
+ *ptr = vptr;
+ return SWIG_OK;
+}
+
+SWIGRUNTIME octave_value SWIG_Octave_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
+ return new octave_swig_packed(type, (char *) ptr, sz);
+}
+
+SWIGRUNTIME int SWIG_Octave_ConvertPacked(const octave_value &ov, void *ptr, size_t sz, swig_type_info *type) {
+ if (!ov.is_defined())
+ return SWIG_ERROR;
+ if (ov.type_id() != octave_swig_packed::static_type_id())
+ return SWIG_ERROR;
+ octave_swig_packed *ost = static_cast < octave_swig_packed *>(ov.internal_rep());
+ return ost->copy(type, (char *) ptr, sz) ? SWIG_OK : SWIG_ERROR;
+}
+
+void SWIG_Octave_SetConstant(octave_swig_type *module_ns, const std::string &name, const octave_value &ov) {
+ module_ns->assign(name, ov);
+}
+
+SWIGRUNTIME swig_module_info *SWIG_Octave_GetModule(void *clientdata) {
+ octave_value ov = get_global_value("__SWIG_MODULE__" SWIG_TYPE_TABLE_NAME SWIG_RUNTIME_VERSION, true);
+ if (!ov.is_defined() ||
+ ov.type_id() != octave_swig_packed::static_type_id())
+ return 0;
+ const octave_swig_packed* osp =
+ static_cast < const octave_swig_packed *> (ov.internal_rep());
+ swig_module_info *pointer = 0;
+ osp->copy(0, &pointer, sizeof(swig_module_info *));
+ return pointer;
+}
+
+SWIGRUNTIME void SWIG_Octave_SetModule(void *clientdata, swig_module_info *pointer) {
+ octave_value ov = new octave_swig_packed(0, &pointer, sizeof(swig_module_info *));
+ const char *module_var = "__SWIG_MODULE__" SWIG_TYPE_TABLE_NAME SWIG_RUNTIME_VERSION;
+#if USE_OCTAVE_API_VERSION<37
+ link_to_global_variable(curr_sym_tab->lookup(module_var, true));
+#else
+ symbol_table::varref(module_var);
+ symbol_table::mark_global(module_var);
+#endif
+ set_global_value(module_var, ov);
+}
+
+
+
+#define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
+
+#define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
+
+
+
+ #define SWIG_exception(code, msg) do { SWIG_Error(code, msg); SWIG_fail;; } while(0)
+
+
+/* -------- TYPES TABLE (BEGIN) -------- */
+
+#define SWIGTYPE_p_Cv32suf swig_types[0]
+#define SWIGTYPE_p_Cv64suf swig_types[1]
+#define SWIGTYPE_p_CvAttrList swig_types[2]
+#define SWIGTYPE_p_CvAvgComp swig_types[3]
+#define SWIGTYPE_p_CvBox2D swig_types[4]
+#define SWIGTYPE_p_CvCapture swig_types[5]
+#define SWIGTYPE_p_CvChain swig_types[6]
+#define SWIGTYPE_p_CvChainPtReader swig_types[7]
+#define SWIGTYPE_p_CvConDensation swig_types[8]
+#define SWIGTYPE_p_CvConnectedComp swig_types[9]
+#define SWIGTYPE_p_CvContour swig_types[10]
+#define SWIGTYPE_p_CvContourTree swig_types[11]
+#define SWIGTYPE_p_CvConvexityDefect swig_types[12]
+#define SWIGTYPE_p_CvFileNode swig_types[13]
+#define SWIGTYPE_p_CvFileStorage swig_types[14]
+#define SWIGTYPE_p_CvFilter swig_types[15]
+#define SWIGTYPE_p_CvFont swig_types[16]
+#define SWIGTYPE_p_CvGenericHash swig_types[17]
+#define SWIGTYPE_p_CvGraph swig_types[18]
+#define SWIGTYPE_p_CvGraphEdge swig_types[19]
+#define SWIGTYPE_p_CvGraphScanner swig_types[20]
+#define SWIGTYPE_p_CvGraphVtx swig_types[21]
+#define SWIGTYPE_p_CvGraphVtx2D swig_types[22]
+#define SWIGTYPE_p_CvHaarClassifier swig_types[23]
+#define SWIGTYPE_p_CvHaarClassifierCascade swig_types[24]
+#define SWIGTYPE_p_CvHaarFeature swig_types[25]
+#define SWIGTYPE_p_CvHaarStageClassifier swig_types[26]
+#define SWIGTYPE_p_CvHidHaarClassifierCascade swig_types[27]
+#define SWIGTYPE_p_CvHistogram swig_types[28]
+#define SWIGTYPE_p_CvHuMoments swig_types[29]
+#define SWIGTYPE_p_CvKalman swig_types[30]
+#define SWIGTYPE_p_CvLineIterator swig_types[31]
+#define SWIGTYPE_p_CvMSERParams swig_types[32]
+#define SWIGTYPE_p_CvMat swig_types[33]
+#define SWIGTYPE_p_CvMatND swig_types[34]
+#define SWIGTYPE_p_CvMatrix3 swig_types[35]
+#define SWIGTYPE_p_CvMemBlock swig_types[36]
+#define SWIGTYPE_p_CvMemStorage swig_types[37]
+#define SWIGTYPE_p_CvMemStoragePos swig_types[38]
+#define SWIGTYPE_p_CvModuleInfo swig_types[39]
+#define SWIGTYPE_p_CvMoments swig_types[40]
+#define SWIGTYPE_p_CvNArrayIterator swig_types[41]
+#define SWIGTYPE_p_CvNextEdgeType swig_types[42]
+#define SWIGTYPE_p_CvPOSITObject swig_types[43]
+#define SWIGTYPE_p_CvPluginFuncInfo swig_types[44]
+#define SWIGTYPE_p_CvPoint swig_types[45]
+#define SWIGTYPE_p_CvPoint2D32f swig_types[46]
+#define SWIGTYPE_p_CvPoint2D64f swig_types[47]
+#define SWIGTYPE_p_CvPoint3D32f swig_types[48]
+#define SWIGTYPE_p_CvPoint3D64f swig_types[49]
+#define SWIGTYPE_p_CvQuadEdge2D swig_types[50]
+#define SWIGTYPE_p_CvRNG_Wrapper swig_types[51]
+#define SWIGTYPE_p_CvRect swig_types[52]
+#define SWIGTYPE_p_CvSURFParams swig_types[53]
+#define SWIGTYPE_p_CvSURFPoint swig_types[54]
+#define SWIGTYPE_p_CvScalar swig_types[55]
+#define SWIGTYPE_p_CvSeq swig_types[56]
+#define SWIGTYPE_p_CvSeqBlock swig_types[57]
+#define SWIGTYPE_p_CvSeqReader swig_types[58]
+#define SWIGTYPE_p_CvSeqWriter swig_types[59]
+#define SWIGTYPE_p_CvSet swig_types[60]
+#define SWIGTYPE_p_CvSetElem swig_types[61]
+#define SWIGTYPE_p_CvSize swig_types[62]
+#define SWIGTYPE_p_CvSize2D32f swig_types[63]
+#define SWIGTYPE_p_CvSlice swig_types[64]
+#define SWIGTYPE_p_CvSparseMat swig_types[65]
+#define SWIGTYPE_p_CvSparseMatIterator swig_types[66]
+#define SWIGTYPE_p_CvSparseNode swig_types[67]
+#define SWIGTYPE_p_CvStarDetectorParams swig_types[68]
+#define SWIGTYPE_p_CvStarKeypoint swig_types[69]
+#define SWIGTYPE_p_CvStereoBMState swig_types[70]
+#define SWIGTYPE_p_CvStereoGCState swig_types[71]
+#define SWIGTYPE_p_CvString swig_types[72]
+#define SWIGTYPE_p_CvStringHashNode swig_types[73]
+#define SWIGTYPE_p_CvSubdiv2D swig_types[74]
+#define SWIGTYPE_p_CvSubdiv2DEdge_Wrapper swig_types[75]
+#define SWIGTYPE_p_CvSubdiv2DPoint swig_types[76]
+#define SWIGTYPE_p_CvSubdiv2DPointLocation swig_types[77]
+#define SWIGTYPE_p_CvTermCriteria swig_types[78]
+#define SWIGTYPE_p_CvTreeNodeIterator swig_types[79]
+#define SWIGTYPE_p_CvTypeInfo swig_types[80]
+#define SWIGTYPE_p_CvTypedSeqT_CvConnectedComp_t swig_types[81]
+#define SWIGTYPE_p_CvTypedSeqT_CvPoint2D32f_t swig_types[82]
+#define SWIGTYPE_p_CvTypedSeqT_CvPoint_t swig_types[83]
+#define SWIGTYPE_p_CvTypedSeqT_CvQuadEdge2D_t swig_types[84]
+#define SWIGTYPE_p_CvTypedSeqT_CvRect_t swig_types[85]
+#define SWIGTYPE_p_CvTypedSeqT_CvSeq_p_t swig_types[86]
+#define SWIGTYPE_p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t swig_types[87]
+#define SWIGTYPE_p_CvTypedSeqT_CvTupleT_float_2_t_t swig_types[88]
+#define SWIGTYPE_p_CvTypedSeqT_CvTupleT_float_3_t_t swig_types[89]
+#define SWIGTYPE_p_CvVideoWriter swig_types[90]
+#define SWIGTYPE_p_CvvImage swig_types[91]
+#define SWIGTYPE_p__IplConvKernel swig_types[92]
+#define SWIGTYPE_p__IplConvKernelFP swig_types[93]
+#define SWIGTYPE_p__IplImage swig_types[94]
+#define SWIGTYPE_p__IplROI swig_types[95]
+#define SWIGTYPE_p__IplTileInfo swig_types[96]
+#define SWIGTYPE_p_allocator_type swig_types[97]
+#define SWIGTYPE_p_char swig_types[98]
+#define SWIGTYPE_p_difference_type swig_types[99]
+#define SWIGTYPE_p_f_int__void swig_types[100]
+#define SWIGTYPE_p_f_int_int_int_int_p_void__void swig_types[101]
+#define SWIGTYPE_p_f_int_p_void__void swig_types[102]
+#define SWIGTYPE_p_int swig_types[103]
+#define SWIGTYPE_p_int64_t swig_types[104]
+#define SWIGTYPE_p_octave_value swig_types[105]
+#define SWIGTYPE_p_p_CvCapture swig_types[106]
+#define SWIGTYPE_p_p_CvVideoWriter swig_types[107]
+#define SWIGTYPE_p_p_char swig_types[108]
+#define SWIGTYPE_p_signed_char swig_types[109]
+#define SWIGTYPE_p_size_t swig_types[110]
+#define SWIGTYPE_p_size_type swig_types[111]
+#define SWIGTYPE_p_uint64_t swig_types[112]
+#define SWIGTYPE_p_unsigned_char swig_types[113]
+#define SWIGTYPE_p_unsigned_short swig_types[114]
+#define SWIGTYPE_p_value_type swig_types[115]
+#define SWIGTYPE_p_void swig_types[116]
+static swig_type_info *swig_types[118];
+static swig_module_info swig_module = {swig_types, 117, 0, 0, 0, 0};
+#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
+#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
+
+/* -------- TYPES TABLE (END) -------- */
+
+
+#define SWIGVERSION 0x010340
+#define SWIG_VERSION SWIGVERSION
+
+
+#define SWIG_as_voidptr(a) (void *)((const void *)(a))
+#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),(void**)(a))
+
+
+#include <stdexcept>
+
+
+#include <cxtypes.h>
+#include <cv.h>
+#include <highgui.h>
+#include "octhelpers.h"
+#include "octcvseq.hpp"
+
+
+
+
+ static inline bool OctSwigObject_Check(const octave_value& ov) {
+ return ov.type_id()==octave_swig_ref::static_type_id();
+ }
+
+ static CvArr * OctObject_to_CvArr(octave_value obj, bool * freearg);
+ static CvArr * OctSequence_to_CvArr( octave_value obj );
+
+ // convert a octave sequence/array/list object into a c-array
+#define OctObject_AsArrayImpl(func, ctype, ptype) \
+ int func(octave_value obj, ctype * array, int len){ \
+ void * mat_vptr=NULL; \
+ void * im_vptr=NULL; \
+ if(OctNumber_Check(obj)){ \
+ memset( array, 0, sizeof(ctype)*len ); \
+ array[0] = OctObject_As##ptype( obj ); \
+ } \
+ else if(OctList_Check(obj) || OctTuple_Check(obj)){ \
+ int seqsize = OctSequence_Size(obj); \
+ for(int i=0; i<len && i<seqsize; i++){ \
+ if(i<seqsize){ \
+ array[i] = OctObject_As##ptype( OctSequence_GetItem(obj, i) ); \
+ } \
+ else{ \
+ array[i] = 0; \
+ } \
+ } \
+ } \
+ else if( SWIG_ConvertPtr(obj, &mat_vptr, SWIGTYPE_p_CvMat, 0)!=-1 || \
+ SWIG_ConvertPtr(obj, &im_vptr, SWIGTYPE_p__IplImage, 0)!=-1) \
+ { \
+ CvMat * mat = (CvMat *) mat_vptr; \
+ CvMat stub; \
+ if(im_vptr) mat = cvGetMat(im_vptr, &stub); \
+ if( mat->rows!=1 && mat->cols!=1 ){ \
+ error("OctObject_As*Array: CvArr must be row or column vector" ); \
+ return -1; \
+ } \
+ if( mat->rows==1 && mat->cols==1 ){ \
+ CvScalar val; \
+ if( len!=CV_MAT_CN(mat->type) ){ \
+ error("OctObject_As*Array: CvArr channels != length" ); \
+ return -1; \
+ } \
+ val = cvGet1D(mat, 0); \
+ for(int i=0; i<len; i++){ \
+ array[i] = (ctype) val.val[i]; \
+ } \
+ } \
+ else{ \
+ mat = cvReshape(mat, &stub, -1, mat->rows*mat->cols); \
+ if( mat->rows != len ){ \
+ error("OctObject_As*Array: CvArr rows or cols must equal length" ); \
+ return -1; \
+ } \
+ for(int i=0; i<len; i++){ \
+ CvScalar val = cvGet1D(mat, i); \
+ array[i] = (ctype) val.val[0]; \
+ } \
+ } \
+ } \
+ else{ \
+ error("OctObject_As*Array: Expected a number, sequence or CvArr" ); \
+ return -1; \
+ } \
+ return 0; \
+ }
+
+ OctObject_AsArrayImpl( OctObject_AsFloatArray, float, Double );
+ OctObject_AsArrayImpl( OctObject_AsDoubleArray, double, Double );
+ OctObject_AsArrayImpl( OctObject_AsLongArray, int, Long );
+
+ static CvPoint OctObject_to_CvPoint(octave_value obj){
+ CvPoint val;
+ CvPoint *ptr;
+ CvPoint2D32f * ptr2D32f;
+ CvScalar * scalar;
+
+ if( SWIG_ConvertPtr(obj, (void**)&ptr, SWIGTYPE_p_CvPoint, 0) != -1) {
+ return *ptr;
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&ptr2D32f, SWIGTYPE_p_CvPoint2D32f, 0) != -1) {
+ return cvPointFrom32f( *ptr2D32f );
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&scalar, SWIGTYPE_p_CvScalar, 0) != -1) {
+ return cvPointFrom32f(cvPoint2D32f( scalar->val[0], scalar->val[1] ));
+ }
+ if(OctObject_AsLongArray(obj, (int *) &val, 2) != -1){
+ return val;
+ }
+
+ error("could not convert to CvPoint");
+ return cvPoint(0,0);
+ }
+
+ static CvPoint2D32f OctObject_to_CvPoint2D32f(octave_value obj){
+ CvPoint2D32f val;
+ CvPoint2D32f *ptr2D32f;
+ CvPoint *ptr;
+ CvScalar * scalar;
+ if( SWIG_ConvertPtr(obj, (void**)&ptr2D32f, SWIGTYPE_p_CvPoint2D32f, 0) != -1) {
+ return *ptr2D32f;
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&ptr, SWIGTYPE_p_CvPoint, 0) != -1) {
+ return cvPointTo32f(*ptr);
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&scalar, SWIGTYPE_p_CvScalar, 0) != -1) {
+ return cvPoint2D32f( scalar->val[0], scalar->val[1] );
+ }
+ if(OctObject_AsFloatArray(obj, (float *) &val, 2) != -1){
+ return val;
+ }
+ error("could not convert to CvPoint2D32f");
+ return cvPoint2D32f(0,0);
+ }
+
+ static CvScalar OctObject_to_CvScalar(octave_value obj){
+ CvScalar val;
+ CvScalar * ptr;
+ CvPoint2D32f *ptr2D32f;
+ CvPoint *pt_ptr;
+ void * vptr;
+ if( SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvScalar, 0 ) != -1)
+ {
+ ptr = (CvScalar *) vptr;
+ return *ptr;
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&ptr2D32f, SWIGTYPE_p_CvPoint2D32f, 0) != -1) {
+ return cvScalar(ptr2D32f->x, ptr2D32f->y);
+ }
+ if( SWIG_ConvertPtr(obj, (void**)&pt_ptr, SWIGTYPE_p_CvPoint, 0) != -1) {
+ return cvScalar(pt_ptr->x, pt_ptr->y);
+ }
+ if(OctObject_AsDoubleArray(obj, val.val, 4)!=-1){
+ return val;
+ }
+ return cvScalar(-1,-1,-1,-1);
+ }
+
+ // if octave sequence type, convert to CvMat or CvMatND
+ static CvArr * OctObject_to_CvArr(octave_value obj, bool * freearg){
+ CvArr * cvarr;
+ *freearg = false;
+
+ // check if OpenCV type
+ if ( OctSwigObject_Check(obj) ){
+ SWIG_ConvertPtr(obj, &cvarr, 0, SWIG_POINTER_EXCEPTION);
+ }
+ else if (OctList_Check(obj) || OctTuple_Check(obj)){
+ cvarr = OctSequence_to_CvArr( obj );
+ *freearg = (cvarr != NULL);
+ }
+ else if (OctLong_Check(obj) && OctLong_AsLong(obj)==0){
+ return NULL;
+ }
+ else {
+ SWIG_ConvertPtr(obj, (void**)&cvarr, 0, SWIG_POINTER_EXCEPTION);
+ }
+ return cvarr;
+ }
+
+ static int OctObject_GetElemType(octave_value obj){
+ void *vptr;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvPoint, 0) != -1) return CV_32SC2;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvSize, 0) != -1) return CV_32SC2;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvRect, 0) != -1) return CV_32SC4;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvSize2D32f, 0) != -1) return CV_32FC2;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvPoint2D32f, 0) != -1) return CV_32FC2;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvPoint3D32f, 0) != -1) return CV_32FC3;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvPoint2D64f, 0) != -1) return CV_64FC2;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvPoint3D64f, 0) != -1) return CV_64FC3;
+ if(SWIG_ConvertPtr(obj, &vptr, SWIGTYPE_p_CvScalar, 0) != -1) return CV_64FC4;
+ if(OctTuple_Check(obj) || OctList_Check(obj)) return CV_MAKE_TYPE(CV_32F, OctSequence_Size( obj ));
+ if(OctLong_Check(obj)) return CV_32S;
+ return CV_32F;
+ }
+
+ // Would like this to convert Octave lists to CvMat
+ // Also lists of CvPoints, CvScalars, CvMats? etc
+ static CvArr * OctSequence_to_CvArr( octave_value obj ){
+ int dims[CV_MAX_DIM] = {1,1,1};
+ int ndim=0;
+ int cvtype;
+ octave_value item;
+
+ // figure out dimensions
+ for(item = obj;
+ (OctTuple_Check(item) || OctList_Check(item));
+ item = OctSequence_GetItem(item, 0))
+ {
+ dims[ndim] = OctSequence_Size( item );
+ ndim++;
+ }
+
+ if(ndim==0){
+ error("Cannot convert an empty octave object to a CvArr");
+ return NULL;
+ }
+
+ cvtype = OctObject_GetElemType(item);
+ // collapse last dim into NCH if we found a single channel, but the last dim is <=3
+ if(CV_MAT_CN(cvtype)==1 && dims[ndim-1]>1 && dims[ndim-1]<4){
+ cvtype=CV_MAKE_TYPE(cvtype, dims[ndim-1]);
+ dims[ndim-1]=1;
+ ndim--;
+ }
+
+ if(cvtype==-1){
+ error("Could not determine OpenCV element type of Octave sequence");
+ return NULL;
+ }
+
+ // CvMat
+ if(ndim<=2){
+ CvMat *m = cvCreateMat(dims[0], dims[1], cvtype);
+ for(int i=0; i<dims[0]; i++){
+ octave_value rowobj = OctSequence_GetItem(obj, i);
+ if( dims[1] > 1 ){
+ // double check size
+ assert((OctTuple_Check(rowobj) || OctList_Check(rowobj)) &&
+ OctSequence_Size(rowobj) == dims[1]);
+
+ for(int j=0; j<dims[1]; j++){
+ octave_value colobj = OctSequence_GetItem(rowobj, j);
+ cvSet2D( m, i, j, OctObject_to_CvScalar( colobj ) );
+ }
+ }
+ else{
+ cvSet1D(m, i, OctObject_to_CvScalar( rowobj ) );
+ }
+ }
+ return (CvArr *) m;
+ }
+
+ // CvMatND
+ error("Cannot convert Octave Object to CvArr -- ndim > 3");
+ return NULL;
+ }
+
+
+ // Wrapper class
+ class CvRNG_Wrapper {
+ private:
+ CvRNG m_val;
+ public:
+ CvRNG_Wrapper( const CvRNG & val ) :
+ m_val(val)
+ {
+ }
+ CvRNG * ptr() { return &m_val; }
+ CvRNG & ref() { return m_val; }
+ bool operator==(const CvRNG_Wrapper & x){
+ return m_val==x.m_val;
+ }
+ bool operator!=(const CvRNG_Wrapper & x){
+ return m_val!=x.m_val;
+ }
+ };
+
+
+SWIGINTERNINLINE octave_value
+ SWIG_From_bool (bool value)
+{
+ return octave_value(value);
+}
+
+
+ // Wrapper class
+ class CvSubdiv2DEdge_Wrapper {
+ private:
+ CvSubdiv2DEdge m_val;
+ public:
+ CvSubdiv2DEdge_Wrapper( const CvSubdiv2DEdge & val ) :
+ m_val(val)
+ {
+ }
+ CvSubdiv2DEdge * ptr() { return &m_val; }
+ CvSubdiv2DEdge & ref() { return m_val; }
+ bool operator==(const CvSubdiv2DEdge_Wrapper & x){
+ return m_val==x.m_val;
+ }
+ bool operator!=(const CvSubdiv2DEdge_Wrapper & x){
+ return m_val!=x.m_val;
+ }
+ };
+
+
+ SWIGINTERN int SWIG_AsVal_unsigned_SS_long (const octave_value& ov, unsigned long* val)
+ {
+ if (!ov.is_scalar_type())
+ return SWIG_TypeError;
+ if (ov.is_complex_scalar())
+ return SWIG_TypeError;
+ if (ov.is_double_type()||ov.is_single_type()) {
+ double v=ov.double_value();
+ if (v<0)
+ return SWIG_OverflowError;
+ if (v!=floor(v))
+ return SWIG_TypeError;
+ }
+ if (ov.is_int8_type()||ov.is_int16_type()||
+ ov.is_int32_type()) {
+ long v=ov.long_value();
+ if (v<0)
+ return SWIG_OverflowError;
+ }
+ if (ov.is_int64_type()) {
+ long long v=ov.int64_scalar_value().value();
+ if (v<0)
+ return SWIG_OverflowError;
+ }
+ if (val)
+ *val = ov.ulong_value();
+ return SWIG_OK;
+ }
+
+
+SWIGINTERNINLINE int
+SWIG_AsVal_size_t (octave_value obj, size_t *val)
+{
+ unsigned long v;
+ int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0);
+ if (SWIG_IsOK(res) && val) *val = (size_t)(v);
+ return res;
+}
+
+
+ // This encapsulates the octave callback and user_data for mouse callback
+ struct OctCvMouseCBData {
+ octave_value oct_func;
+ octave_value user_data;
+ };
+ // This encapsulates the octave callback and user_data for mouse callback
+ // C helper function which is responsible for calling
+ // the Octave real trackbar callback function
+ static void icvOctOnMouse (int event, int x, int y,
+ int flags, OctCvMouseCBData * param) {
+ octave_value oct_func(param->oct_func);
+ if (!oct_func.is_function() && !oct_func.is_function_handle())
+ return;
+
+ octave_value_list args;
+ args.append(octave_value(event));
+ args.append(octave_value(x));
+ args.append(octave_value(y));
+ args.append(octave_value(flags));
+ args.append(param->user_data);
+ oct_func.subsref ("(", std::list<octave_value_list>(1, args), 0);
+ }
+
+
+ void cvSetMouseCallbackOct( const char* window_name, octave_value on_mouse, octave_value param = octave_value() ){
+ OctCvMouseCBData * oct_callback = new OctCvMouseCBData;
+ oct_callback->oct_func = on_mouse;
+ oct_callback->user_data = param;
+ cvSetMouseCallback( window_name, (CvMouseCallback) icvOctOnMouse, (void *) oct_callback );
+ }
+
+
+SWIGINTERN int
+SWIG_AsCharPtrAndSize(octave_value ov, char** cptr, size_t* psize, int *alloc)
+{
+ if (ov.is_cell() && ov.rows() == 1 && ov.columns() == 1)
+ ov = ov.cell_value()(0);
+ if (!ov.is_string())
+ return SWIG_TypeError;
+
+ std::string str=ov.string_value();
+ size_t len=str.size();
+ char* cstr=(char*)str.c_str();
+ if (alloc) {
+ *cptr = (char*)(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
+ *alloc = SWIG_NEWOBJ;
+ } else if (cptr)
+ *cptr = cstr;
+ if (psize)
+ *psize = len + 1;
+ return SWIG_OK;
+}
+
+
+
+
+
+ // C helper function which is responsible for calling
+ // the Octave real trackbar callback function
+ static void icvOctOnTrackbar( octave_value oct_cb_func, int pos) {
+ if (!oct_cb_func.is_function() && !oct_cb_func.is_function_handle())
+ return;
+
+ octave_value_list args;
+ args.append(octave_value(pos));
+ oct_cb_func.subsref ("(", std::list<octave_value_list>(1, args), 0);
+ }
+
+#define ICV_OCT_MAX_CB 10
+
+ struct OctCvTrackbar {
+ CvTrackbarCallback cv_func;
+ octave_value oct_func;
+ octave_value oct_pos;
+ };
+
+ static int my_trackbar_cb_size=0;
+ extern OctCvTrackbar my_trackbar_cb_funcs[ICV_OCT_MAX_CB];
+
+
+static void icvOctTrackbarCB0(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[0].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB1(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[1].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB2(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[2].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB3(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[3].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB4(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[4].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB5(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[5].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB6(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[6].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB7(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[7].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB8(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[8].oct_func, pos);
+}
+
+
+static void icvOctTrackbarCB9(int pos){
+ icvOctOnTrackbar(my_trackbar_cb_funcs[9].oct_func, pos);
+}
+
+
+ OctCvTrackbar my_trackbar_cb_funcs[ICV_OCT_MAX_CB] = {
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB0, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB1, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB2, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB3, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB4, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB5, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB6, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB7, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB8, octave_value(), octave_value() }
+/*@SWIG@*/,
+ /*@SWIG:highgui.i,129,%ICV_OCT_CB_TAB_ENTRY@*/
+{(CvTrackbarCallback) icvOctTrackbarCB9, octave_value(), octave_value() }
+/*@SWIG@*/
+ };
+
+
+#include "highgui.h"
+
+
+namespace swig {
+ struct stop_iteration {
+ };
+
+ struct OctSwigIterator {
+ private:
+ octave_value _seq;
+
+ protected:
+ OctSwigIterator(octave_value seq) : _seq(seq)
+ {
+ }
+
+ public:
+ virtual ~OctSwigIterator() {}
+
+ virtual octave_value value() const = 0;
+
+ virtual OctSwigIterator *incr(size_t n = 1) = 0;
+
+ virtual OctSwigIterator *decr(size_t n = 1)
+ {
+ throw stop_iteration();
+ }
+
+ virtual ptrdiff_t distance(const OctSwigIterator &x) const
+ {
+ throw std::invalid_argument("operation not supported");
+ }
+
+ virtual bool equal (const OctSwigIterator &x) const
+ {
+ throw std::invalid_argument("operation not supported");
+ }
+
+ virtual OctSwigIterator *copy() const = 0;
+
+ octave_value next()
+ {
+ octave_value obj = value();
+ incr();
+ return obj;
+ }
+
+ octave_value previous()
+ {
+ decr();
+ return value();
+ }
+
+ OctSwigIterator *advance(ptrdiff_t n)
+ {
+ return (n > 0) ? incr(n) : decr(-n);
+ }
+
+ bool operator == (const OctSwigIterator& x) const
+ {
+ return equal(x);
+ }
+
+ bool operator != (const OctSwigIterator& x) const
+ {
+ return ! operator==(x);
+ }
+
+ OctSwigIterator* operator ++ () {
+ incr();
+ return this;
+ }
+
+ OctSwigIterator* operator -- () {
+ decr();
+ return this;
+ }
+
+ OctSwigIterator* operator + (ptrdiff_t n) const
+ {
+ return copy()->advance(n);
+ }
+
+ OctSwigIterator* operator - (ptrdiff_t n) const
+ {
+ return copy()->advance(-n);
+ }
+
+ ptrdiff_t operator - (const OctSwigIterator& x) const
+ {
+ return x.distance(*this);
+ }
+
+ static swig_type_info* descriptor() {
+ static int init = 0;
+ static swig_type_info* desc = 0;
+ if (!init) {
+ desc = SWIG_TypeQuery("swig::OctSwigIterator *");
+ init = 1;
+ }
+ return desc;
+ }
+ };
+}
+
+
+namespace swig {
+ template <class Type>
+ struct noconst_traits {
+ typedef Type noconst_type;
+ };
+
+ template <class Type>
+ struct noconst_traits<const Type> {
+ typedef Type noconst_type;
+ };
+
+ /*
+ type categories
+ */
+ struct pointer_category { };
+ struct value_category { };
+
+ /*
+ General traits that provides type_name and type_info
+ */
+ template <class Type> struct traits { };
+
+ template <class Type>
+ inline const char* type_name() {
+ return traits<typename noconst_traits<Type >::noconst_type >::type_name();
+ }
+
+ template <class Type>
+ struct traits_info {
+ static swig_type_info *type_query(std::string name) {
+ name += " *";
+ return SWIG_TypeQuery(name.c_str());
+ }
+ static swig_type_info *type_info() {
+ static swig_type_info *info = type_query(type_name<Type>());
+ return info;
+ }
+ };
+
+ template <class Type>
+ inline swig_type_info *type_info() {
+ return traits_info<Type>::type_info();
+ }
+
+ /*
+ Partial specialization for pointers
+ */
+ template <class Type> struct traits <Type *> {
+ typedef pointer_category category;
+ static std::string make_ptr_name(const char* name) {
+ std::string ptrname = name;
+ ptrname += " *";
+ return ptrname;
+ }
+ static const char* type_name() {
+ static std::string name = make_ptr_name(swig::type_name<Type>());
+ return name.c_str();
+ }
+ };
+
+ template <class Type, class Category>
+ struct traits_as { };
+
+ template <class Type, class Category>
+ struct traits_check { };
+
+}
+
+
+namespace swig {
+// Traits that provides the from method
+ template <class Type> struct traits_from_ptr {
+ static octave_value from(Type *val, int owner = 0) {
+ return SWIG_NewPointerObj(val, type_info<Type>(), owner);
+ }
+ };
+
+ template <class Type> struct traits_from {
+ static octave_value from(const Type& val) {
+ return traits_from_ptr<Type>::from(new Type(val), 1);
+ }
+ };
+
+ template <class Type> struct traits_from<Type *> {
+ static octave_value from(Type* val) {
+ return traits_from_ptr<Type>::from(val, 0);
+ }
+ };
+
+ template <class Type> struct traits_from<const Type *> {
+ static octave_value from(const Type* val) {
+ return traits_from_ptr<Type>::from(const_cast<Type*>(val), 0);
+ }
+ };
+
+
+ template <class Type>
+ inline octave_value from(const Type& val) {
+ return traits_from<Type>::from(val);
+ }
+
+ template <class Type>
+ inline octave_value from_ptr(Type* val, int owner) {
+ return traits_from_ptr<Type>::from(val, owner);
+ }
+
+ // Traits that provides the asval/as/check method
+ template <class Type>
+ struct traits_asptr {
+ static int asptr(const octave_value& obj, Type **val) {
+ Type *p;
+ int res = SWIG_ConvertPtr(obj, (void**)&p, type_info<Type>(), 0);
+ if (SWIG_IsOK(res)) {
+ if (val) *val = p;
+ }
+ return res;
+ }
+ };
+
+ template <class Type>
+ inline int asptr(const octave_value& obj, Type **vptr) {
+ return traits_asptr<Type>::asptr(obj, vptr);
+ }
+
+ template <class Type>
+ struct traits_asval {
+ static int asval(const octave_value& obj, Type *val) {
+ if (val) {
+ Type *p = 0;
+ int res = traits_asptr<Type>::asptr(obj, &p);
+ if (!SWIG_IsOK(res)) return res;
+ if (p) {
+ typedef typename noconst_traits<Type>::noconst_type noconst_type;
+ *(const_cast<noconst_type*>(val)) = *p;
+ if (SWIG_IsNewObj(res)){
+ delete p;
+ res = SWIG_DelNewMask(res);
+ }
+ return res;
+ } else {
+ return SWIG_ERROR;
+ }
+ } else {
+ return traits_asptr<Type>::asptr(obj, (Type **)(0));
+ }
+ }
+ };
+
+ template <class Type> struct traits_asval<Type*> {
+ static int asval(const octave_value& obj, Type **val) {
+ if (val) {
+ typedef typename noconst_traits<Type>::noconst_type noconst_type;
+ noconst_type *p = 0;
+ int res = traits_asptr<noconst_type>::asptr(obj, &p);
+ if (SWIG_IsOK(res)) {
+ *(const_cast<noconst_type**>(val)) = p;
+ }
+ return res;
+ } else {
+ return traits_asptr<Type>::asptr(obj, (Type **)(0));
+ }
+ }
+ };
+
+ template <class Type>
+ inline int asval(const octave_value& obj, Type *val) {
+ return traits_asval<Type>::asval(obj, val);
+ }
+
+ template <class Type>
+ struct traits_as<Type, value_category> {
+ static Type as(const octave_value& obj, bool throw_error) {
+ Type v;
+ int res = asval(obj, &v);
+ if (!obj.is_defined() || !SWIG_IsOK(res)) {
+ if (!Octave_Error_Occurred()) {
+ SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
+ }
+ if (throw_error) throw std::invalid_argument("bad type");
+ }
+ return v;
+ }
+ };
+
+ template <class Type>
+ struct traits_as<Type, pointer_category> {
+ static Type as(const octave_value& obj, bool throw_error) {
+ Type *v = 0;
+ int res = traits_asptr<Type>::asptr(obj, &v);
+ if (SWIG_IsOK(res) && v) {
+ if (SWIG_IsNewObj(res)) {
+ Type r(*v);
+ delete v;
+ return r;
+ } else {
+ return *v;
+ }
+ } else {
+ // Uninitialized return value, no Type() constructor required.
+ static Type *v_def = (Type*) malloc(sizeof(Type));
+ if (!Octave_Error_Occurred()) {
+ SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
+ }
+ if (throw_error) throw std::invalid_argument("bad type");
+ memset(v_def,0,sizeof(Type));
+ return *v_def;
+ }
+ }
+ };
+
+ template <class Type>
+ struct traits_as<Type*, pointer_category> {
+ static Type* as(const octave_value& obj, bool throw_error) {
+ Type *v = 0;
+ int res = traits_asptr<Type>::asptr(obj, &v);
+ if (SWIG_IsOK(res)) {
+ return v;
+ } else {
+ if (!Octave_Error_Occurred()) {
+ SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
+ }
+ if (throw_error) throw std::invalid_argument("bad type");
+ return 0;
+ }
+ }
+ };
+
+ template <class Type>
+ inline Type as(const octave_value& obj, bool te = false) {
+ return traits_as<Type, typename traits<Type>::category>::as(obj, te);
+ }
+
+ template <class Type>
+ struct traits_check<Type, value_category> {
+ static bool check(const octave_value& obj) {
+ int res = asval(obj, (Type *)(0));
+ return SWIG_IsOK(res) ? true : false;
+ }
+ };
+
+ template <class Type>
+ struct traits_check<Type, pointer_category> {
+ static bool check(const octave_value& obj) {
+ int res = asptr(obj, (Type **)(0));
+ return SWIG_IsOK(res) ? true : false;
+ }
+ };
+
+ template <class Type>
+ inline bool check(const octave_value& obj) {
+ return traits_check<Type, typename traits<Type>::category>::check(obj);
+ }
+}
+
+
+#include <functional>
+
+namespace std {
+ template <>
+ struct less <octave_value>: public binary_function<octave_value, octave_value, bool>
+ {
+ bool
+ operator()(const octave_value& v, const octave_value& w) const
+ {
+ octave_value res = do_binary_op(octave_value::op_le,v,w);
+ return res.is_true();
+ }
+ };
+}
+
+namespace swig {
+ inline size_t
+ check_index(ptrdiff_t i, size_t size, bool insert = false) {
+ if ( i < 0 ) {
+ if ((size_t) (-i) <= size)
+ return (size_t) (i + size);
+ } else if ( (size_t) i < size ) {
+ return (size_t) i;
+ } else if (insert && ((size_t) i == size)) {
+ return size;
+ }
+
+ throw std::out_of_range("index out of range");
+ }
+
+ inline size_t
+ slice_index(ptrdiff_t i, size_t size) {
+ if ( i < 0 ) {
+ if ((size_t) (-i) <= size) {
+ return (size_t) (i + size);
+ } else {
+ throw std::out_of_range("index out of range");
+ }
+ } else {
+ return ( (size_t) i < size ) ? ((size_t) i) : size;
+ }
+ }
+
+ template <class Sequence, class Difference>
+ inline typename Sequence::iterator
+ getpos(Sequence* self, Difference i) {
+ typename Sequence::iterator pos = self->begin();
+ std::advance(pos, check_index(i,self->size()));
+ return pos;
+ }
+
+ template <class Sequence, class Difference>
+ inline typename Sequence::const_iterator
+ cgetpos(const Sequence* self, Difference i) {
+ typename Sequence::const_iterator pos = self->begin();
+ std::advance(pos, check_index(i,self->size()));
+ return pos;
+ }
+
+ template <class Sequence, class Difference>
+ inline Sequence*
+ getslice(const Sequence* self, Difference i, Difference j) {
+ typename Sequence::size_type size = self->size();
+ typename Sequence::size_type ii = swig::check_index(i, size);
+ typename Sequence::size_type jj = swig::slice_index(j, size);
+
+ if (jj > ii) {
+ typename Sequence::const_iterator vb = self->begin();
+ typename Sequence::const_iterator ve = self->begin();
+ std::advance(vb,ii);
+ std::advance(ve,jj);
+ return new Sequence(vb, ve);
+ } else {
+ return new Sequence();
+ }
+ }
+
+ template <class Sequence, class Difference, class InputSeq>
+ inline void
+ setslice(Sequence* self, Difference i, Difference j, const InputSeq& v) {
+ typename Sequence::size_type size = self->size();
+ typename Sequence::size_type ii = swig::check_index(i, size, true);
+ typename Sequence::size_type jj = swig::slice_index(j, size);
+ if (jj < ii) jj = ii;
+ size_t ssize = jj - ii;
+ if (ssize <= v.size()) {
+ typename Sequence::iterator sb = self->begin();
+ typename InputSeq::const_iterator vmid = v.begin();
+ std::advance(sb,ii);
+ std::advance(vmid, jj - ii);
+ self->insert(std::copy(v.begin(), vmid, sb), vmid, v.end());
+ } else {
+ typename Sequence::iterator sb = self->begin();
+ typename Sequence::iterator se = self->begin();
+ std::advance(sb,ii);
+ std::advance(se,jj);
+ self->erase(sb,se);
+ self->insert(sb, v.begin(), v.end());
+ }
+ }
+
+ template <class Sequence, class Difference>
+ inline void
+ delslice(Sequence* self, Difference i, Difference j) {
+ typename Sequence::size_type size = self->size();
+ typename Sequence::size_type ii = swig::check_index(i, size, true);
+ typename Sequence::size_type jj = swig::slice_index(j, size);
+ if (jj > ii) {
+ typename Sequence::iterator sb = self->begin();
+ typename Sequence::iterator se = self->begin();
+ std::advance(sb,ii);
+ std::advance(se,jj);
+ self->erase(sb,se);
+ }
+ }
+}
+
+
+#if defined(__SUNPRO_CC) && defined(_RWSTD_VER)
+# if !defined(SWIG_NO_STD_NOITERATOR_TRAITS_STL)
+# define SWIG_STD_NOITERATOR_TRAITS_STL
+# endif
+#endif
+
+#if !defined(SWIG_STD_NOITERATOR_TRAITS_STL)
+#include <iterator>
+#else
+namespace std {
+ template <class Iterator>
+ struct iterator_traits {
+ typedef ptrdiff_t difference_type;
+ typedef typename Iterator::value_type value_type;
+ };
+
+ template <class Iterator, class Category,class T, class Reference, class Pointer, class Distance>
+ struct iterator_traits<__reverse_bi_iterator<Iterator,Category,T,Reference,Pointer,Distance> > {
+ typedef Distance difference_type;
+ typedef T value_type;
+ };
+
+ template <class T>
+ struct iterator_traits<T*> {
+ typedef T value_type;
+ typedef ptrdiff_t difference_type;
+ };
+
+ template<typename _InputIterator>
+ inline typename iterator_traits<_InputIterator>::difference_type
+ distance(_InputIterator __first, _InputIterator __last)
+ {
+ typename iterator_traits<_InputIterator>::difference_type __n = 0;
+ while (__first != __last) {
+ ++__first; ++__n;
+ }
+ return __n;
+ }
+}
+#endif
+
+
+namespace swig {
+ template<typename OutIterator>
+ class OctSwigIterator_T : public OctSwigIterator
+ {
+ public:
+ typedef OutIterator out_iterator;
+ typedef typename std::iterator_traits<out_iterator>::value_type value_type;
+ typedef OctSwigIterator_T<out_iterator> self_type;
+
+ OctSwigIterator_T(out_iterator curr, octave_value seq)
+ : OctSwigIterator(seq), current(curr)
+ {
+ }
+
+ const out_iterator& get_current() const
+ {
+ return current;
+ }
+
+
+ bool equal (const OctSwigIterator &iter) const
+ {
+ const self_type *iters = dynamic_cast<const self_type *>(&iter);
+ if (iters) {
+ return (current == iters->get_current());
+ } else {
+ throw std::invalid_argument("bad iterator type");
+ }
+ }
+
+ ptrdiff_t distance(const OctSwigIterator &iter) const
+ {
+ const self_type *iters = dynamic_cast<const self_type *>(&iter);
+ if (iters) {
+ return std::distance(current, iters->get_current());
+ } else {
+ throw std::invalid_argument("bad iterator type");
+ }
+ }
+
+ protected:
+ out_iterator current;
+ };
+
+ template <class ValueType>
+ struct from_oper
+ {
+ typedef const ValueType& argument_type;
+ typedef octave_value result_type;
+ result_type operator()(argument_type v) const
+ {
+ return swig::from(v);
+ }
+ };
+
+ template<typename OutIterator,
+ typename ValueType = typename std::iterator_traits<OutIterator>::value_type,
+ typename FromOper = from_oper<ValueType> >
+ class OctSwigIteratorOpen_T : public OctSwigIterator_T<OutIterator>
+ {
+ public:
+ FromOper from;
+ typedef OutIterator out_iterator;
+ typedef ValueType value_type;
+ typedef OctSwigIterator_T<out_iterator> base;
+ typedef OctSwigIteratorOpen_T<OutIterator, ValueType, FromOper> self_type;
+
+ OctSwigIteratorOpen_T(out_iterator curr, octave_value seq)
+ : OctSwigIterator_T<OutIterator>(curr, seq)
+ {
+ }
+
+ octave_value value() const {
+ return from(static_cast<const value_type&>(*(base::current)));
+ }
+
+ OctSwigIterator *copy() const
+ {
+ return new self_type(*this);
+ }
+
+ OctSwigIterator *incr(size_t n = 1)
+ {
+ while (n--) {
+ ++base::current;
+ }
+ return this;
+ }
+
+ OctSwigIterator *decr(size_t n = 1)
+ {
+ while (n--) {
+ --base::current;
+ }
+ return this;
+ }
+ };
+
+ template<typename OutIterator,
+ typename ValueType = typename std::iterator_traits<OutIterator>::value_type,
+ typename FromOper = from_oper<ValueType> >
+ class OctSwigIteratorClosed_T : public OctSwigIterator_T<OutIterator>
+ {
+ public:
+ FromOper from;
+ typedef OutIterator out_iterator;
+ typedef ValueType value_type;
+ typedef OctSwigIterator_T<out_iterator> base;
+ typedef OctSwigIteratorClosed_T<OutIterator, ValueType, FromOper> self_type;
+
+ OctSwigIteratorClosed_T(out_iterator curr, out_iterator first, out_iterator last, octave_value seq)
+ : OctSwigIterator_T<OutIterator>(curr, seq), begin(first), end(last)
+ {
+ }
+
+ octave_value value() const {
+ if (base::current == end) {
+ throw stop_iteration();
+ } else {
+ return from(static_cast<const value_type&>(*(base::current)));
+ }
+ }
+
+ OctSwigIterator *copy() const
+ {
+ return new self_type(*this);
+ }
+
+ OctSwigIterator *incr(size_t n = 1)
+ {
+ while (n--) {
+ if (base::current == end) {
+ throw stop_iteration();
+ } else {
+ ++base::current;
+ }
+ }
+ return this;
+ }
+
+ OctSwigIterator *decr(size_t n = 1)
+ {
+ while (n--) {
+ if (base::current == begin) {
+ throw stop_iteration();
+ } else {
+ --base::current;
+ }
+ }
+ return this;
+ }
+
+ private:
+ out_iterator begin;
+ out_iterator end;
+ };
+
+ template<typename OutIter>
+ inline OctSwigIterator*
+ make_output_iterator(const OutIter& current, const OutIter& begin,const OutIter& end, octave_value seq = octave_value())
+ {
+ return new OctSwigIteratorClosed_T<OutIter>(current, begin, end, seq);
+ }
+
+ template<typename OutIter>
+ inline OctSwigIterator*
+ make_output_iterator(const OutIter& current, octave_value seq = octave_value())
+ {
+ return new OctSwigIteratorOpen_T<OutIter>(current, seq);
+ }
+}
+
+
+namespace swig
+{
+ template <class T>
+ struct OctSequence_Ref // * octave can't support these, because of how assignment works
+ {
+ OctSequence_Ref(const octave_value& seq, int index)
+ : _seq(seq), _index(index)
+ {
+ }
+
+ operator T () const
+ {
+ // swig::SwigVar_PyObject item = OctSequence_GetItem(_seq, _index);
+ octave_value item; // * todo
+ try {
+ return swig::as<T>(item, true);
+ } catch (std::exception& e) {
+ char msg[1024];
+ sprintf(msg, "in sequence element %d ", _index);
+ if (!Octave_Error_Occurred()) {
+ SWIG_Error(SWIG_TypeError, swig::type_name<T>());
+ }
+ SWIG_Octave_AddErrorMsg(msg);
+ SWIG_Octave_AddErrorMsg(e.what());
+ throw;
+ }
+ }
+
+ OctSequence_Ref& operator=(const T& v)
+ {
+ // OctSequence_SetItem(_seq, _index, swig::from<T>(v));
+ // * todo
+ return *this;
+ }
+
+ private:
+ octave_value _seq;
+ int _index;
+ };
+
+ template <class T>
+ struct OctSequence_ArrowProxy
+ {
+ OctSequence_ArrowProxy(const T& x): m_value(x) {}
+ const T* operator->() const { return &m_value; }
+ operator const T*() const { return &m_value; }
+ T m_value;
+ };
+
+ template <class T, class Reference >
+ struct OctSequence_InputIterator
+ {
+ typedef OctSequence_InputIterator<T, Reference > self;
+
+ typedef std::random_access_iterator_tag iterator_category;
+ typedef Reference reference;
+ typedef T value_type;
+ typedef T* pointer;
+ typedef int difference_type;
+
+ OctSequence_InputIterator()
+ {
+ }
+
+ OctSequence_InputIterator(const octave_value& seq, int index)
+ : _seq(seq), _index(index)
+ {
+ }
+
+ reference operator*() const
+ {
+ return reference(_seq, _index);
+ }
+
+ OctSequence_ArrowProxy<T>
+ operator->() const {
+ return OctSequence_ArrowProxy<T>(operator*());
+ }
+
+ bool operator==(const self& ri) const
+ {
+ return (_index == ri._index);
+ }
+
+ bool operator!=(const self& ri) const
+ {
+ return !(operator==(ri));
+ }
+
+ self& operator ++ ()
+ {
+ ++_index;
+ return *this;
+ }
+
+ self& operator -- ()
+ {
+ --_index;
+ return *this;
+ }
+
+ self& operator += (difference_type n)
+ {
+ _index += n;
+ return *this;
+ }
+
+ self operator +(difference_type n) const
+ {
+ return self(_seq, _index + n);
+ }
+
+ self& operator -= (difference_type n)
+ {
+ _index -= n;
+ return *this;
+ }
+
+ self operator -(difference_type n) const
+ {
+ return self(_seq, _index - n);
+ }
+
+ difference_type operator - (const self& ri) const
+ {
+ return _index - ri._index;
+ }
+
+ bool operator < (const self& ri) const
+ {
+ return _index < ri._index;
+ }
+
+ reference
+ operator[](difference_type n) const
+ {
+ return reference(_seq, _index + n);
+ }
+
+ private:
+ octave_value _seq;
+ difference_type _index;
+ };
+
+ template <class T>
+ struct OctSequence_Cont
+ {
+ typedef OctSequence_Ref<T> reference;
+ typedef const OctSequence_Ref<T> const_reference;
+ typedef T value_type;
+ typedef T* pointer;
+ typedef int difference_type;
+ typedef int size_type;
+ typedef const pointer const_pointer;
+ typedef OctSequence_InputIterator<T, reference> iterator;
+ typedef OctSequence_InputIterator<T, const_reference> const_iterator;
+
+ OctSequence_Cont(const octave_value& seq) : _seq(seq)
+ {
+ // * assert that we have map type etc.
+ /*
+ if (!OctSequence_Check(seq)) {
+ throw std::invalid_argument("a sequence is expected");
+ }
+ _seq = seq;
+ Py_INCREF(_seq);
+ */
+ }
+
+ ~OctSequence_Cont()
+ {
+ }
+
+ size_type size() const
+ {
+ // return static_cast<size_type>(OctSequence_Size(_seq));
+ return 0; // * todo
+ }
+
+ bool empty() const
+ {
+ return size() == 0;
+ }
+
+ iterator begin()
+ {
+ return iterator(_seq, 0);
+ }
+
+ const_iterator begin() const
+ {
+ return const_iterator(_seq, 0);
+ }
+
+ iterator end()
+ {
+ return iterator(_seq, size());
+ }
+
+ const_iterator end() const
+ {
+ return const_iterator(_seq, size());
+ }
+
+ reference operator[](difference_type n)
+ {
+ return reference(_seq, n);
+ }
+
+ const_reference operator[](difference_type n) const
+ {
+ return const_reference(_seq, n);
+ }
+
+ bool check(bool set_err = true) const
+ {
+ int s = size();
+ for (int i = 0; i < s; ++i) {
+ // swig::SwigVar_PyObject item = OctSequence_GetItem(_seq, i);
+ octave_value item; // * todo
+ if (!swig::check<value_type>(item)) {
+ if (set_err) {
+ char msg[1024];
+ sprintf(msg, "in sequence element %d", i);
+ SWIG_Error(SWIG_RuntimeError, msg);
+ }
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private:
+ octave_value _seq;
+ };
+
+}
+
+
+CvMat * cvLoadImageMat(const char* filename, int iscolor=CV_LOAD_IMAGE_COLOR ){
+ return cvLoadImageM(filename, iscolor);
+}
+
+
+#include <limits.h>
+#if !defined(SWIG_NO_LLONG_MAX)
+# if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
+# define LLONG_MAX __LONG_LONG_MAX__
+# define LLONG_MIN (-LLONG_MAX - 1LL)
+# define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
+# endif
+#endif
+
+
+ SWIGINTERN int SWIG_AsVal_long (const octave_value& ov, long* val)
+ {
+ if (!ov.is_scalar_type())
+ return SWIG_TypeError;
+ if (ov.is_complex_scalar())
+ return SWIG_TypeError;
+ if (ov.is_double_type()||ov.is_single_type()) {
+ double v=ov.double_value();
+ if (v!=floor(v))
+ return SWIG_TypeError;
+ }
+ if (val)
+ *val = ov.long_value();
+ return SWIG_OK;
+ }
+
+
+SWIGINTERN int
+SWIG_AsVal_int (octave_value obj, int *val)
+{
+ long v;
+ int res = SWIG_AsVal_long (obj, &v);
+ if (SWIG_IsOK(res)) {
+ if ((v < INT_MIN || v > INT_MAX)) {
+ return SWIG_OverflowError;
+ } else {
+ if (val) *val = (int)(v);
+ }
+ }
+ return res;
+}
+
+
+CvMat * cvRetrieveFrame__CvMat( CvCapture* capture ){
+ IplImage * im = cvRetrieveFrame(capture);
+ if(im){
+ CvMat * mat = (CvMat *)cvAlloc(sizeof(CvMat));
+ mat = cvGetMat(im, mat);
+ return mat;
+ }
+ return false;
+}
+
+
+CvMat * cvQueryFrame__CvMat( CvCapture * capture ){
+ IplImage * im = cvQueryFrame(capture);
+ if(im){
+ CvMat * mat = (CvMat *)cvAlloc(sizeof(CvMat));
+ mat = cvGetMat(im, mat);
+ return mat;
+ }
+ return false;
+}
+
+
+ SWIGINTERNINLINE octave_value SWIG_From_long (long value)
+ {
+ return octave_value(value);
+ }
+
+
+SWIGINTERNINLINE octave_value
+SWIG_From_int (int value)
+{
+ return SWIG_From_long (value);
+}
+
+
+SWIGINTERN swig_type_info*
+SWIG_pchar_descriptor(void)
+{
+ static int init = 0;
+ static swig_type_info* info = 0;
+ if (!init) {
+ info = SWIG_TypeQuery("_p_char");
+ init = 1;
+ }
+ return info;
+}
+
+
+SWIGINTERNINLINE octave_value
+SWIG_FromCharPtrAndSize(const char* carray, size_t size)
+{
+ return std::string(carray,carray+size);
+}
+
+
+SWIGINTERNINLINE octave_value
+SWIG_FromCharPtr(const char *cptr)
+{
+ return SWIG_FromCharPtrAndSize(cptr, (cptr ? strlen(cptr) : 0));
+}
+
+
+ SWIGINTERNINLINE octave_value SWIG_From_double (double value)
+ {
+ return octave_value(value);
+ }
+
+
+ SWIGINTERN int SWIG_AsVal_double (const octave_value& ov, double* val)
+ {
+ if (!ov.is_scalar_type())
+ return SWIG_TypeError;
+ if (ov.is_complex_scalar())
+ return SWIG_TypeError;
+ if (val)
+ *val = ov.double_value();
+ return SWIG_OK;
+ }
+
+
+SWIGINTERN int
+SWIG_AsCharArray(octave_value obj, char *val, size_t size)
+{
+ char* cptr = 0; size_t csize = 0; int alloc = SWIG_OLDOBJ;
+ int res = SWIG_AsCharPtrAndSize(obj, &cptr, &csize, &alloc);
+ if (SWIG_IsOK(res)) {
+ if ((csize == size + 1) && cptr && !(cptr[csize-1])) --csize;
+ if (csize <= size) {
+ if (val) {
+ if (csize) memcpy(val, cptr, csize*sizeof(char));
+ if (csize < size) memset(val + csize, 0, (size - csize)*sizeof(char));
+ }
+ if (alloc == SWIG_NEWOBJ) {
+ delete[] cptr;
+ res = SWIG_DelNewMask(res);
+ }
+ return res;
+ }
+ if (alloc == SWIG_NEWOBJ) delete[] cptr;
+ }
+ return SWIG_TypeError;
+}
+
+
+SWIGINTERN int
+SWIG_AsVal_char (octave_value obj, char *val)
+{
+ int res = SWIG_AsCharArray(obj, val, 1);
+ if (!SWIG_IsOK(res)) {
+ long v;
+ res = SWIG_AddCast(SWIG_AsVal_long (obj, &v));
+ if (SWIG_IsOK(res)) {
+ if ((CHAR_MIN <= v) && (v <= CHAR_MAX)) {
+ if (val) *val = (char)(v);
+ } else {
+ res = SWIG_OverflowError;
+ }
+ }
+ }
+ return res;
+}
+
+SWIGINTERN void delete_CvCapture(CvCapture *self){ CvCapture * dummy = self; cvReleaseCapture (& dummy); }
+SWIGINTERN void delete_CvVideoWriter(CvVideoWriter *self){ CvVideoWriter * dummy = self; cvReleaseVideoWriter (& dummy); }
+
+
+class ndim_iterator {
+ int nd;
+ int dims[CV_MAX_DIM];
+ int step[CV_MAX_DIM];
+ int curr[CV_MAX_DIM];
+ uchar* _data;
+ int _type;
+ bool done;
+ public:
+ ndim_iterator() {}
+ ndim_iterator(CvMat* m) {
+ int c = CV_MAT_CN(m->type);
+ int elem_size = CV_ELEM_SIZE1(m->type);
+ nd = c == 1 ? 2 : 3;
+ dims[0] = m->rows;
+ dims[1] = m->cols;
+ dims[2] = c;
+ step[0] = m->step;
+ step[1] = c * elem_size;
+ step[2] = elem_size;
+ curr[0] = curr[1] = curr[2] = 0;
+ _data = m->data.ptr;
+ _type = m->type;
+ done = false;
+ }
+ ndim_iterator(CvMatND* m) {
+ int c = CV_MAT_CN(m->type);
+ int elem_size = CV_ELEM_SIZE1(m->type);
+ nd = m->dims + (c == 1 ? 0 : 1);
+ for (int j = 0; j < m->dims; ++j) {
+ dims[j] = m->dim[j].size;
+ step[j] = m->dim[j].step;
+ curr[j] = 0;
+ }
+ if (c > 1) {
+ dims[m->dims] = c;
+ step[m->dims] = elem_size;
+ curr[m->dims] = 0;
+ }
+ _data = m->data.ptr;
+ _type = m->type;
+ done = false;
+ }
+ ndim_iterator(IplImage* img) {
+ nd = img->nChannels == 1 ? 2 : 3;
+ dims[0] = img->height;
+ dims[1] = img->width;
+ dims[2] = img->nChannels;
+
+ switch (img->depth) {
+ case IPL_DEPTH_8U: _type = CV_8U; break;
+ case IPL_DEPTH_8S: _type = CV_8S; break;
+ case IPL_DEPTH_16U: _type = CV_16U; break;
+ case IPL_DEPTH_16S: _type = CV_16S; break;
+ case IPL_DEPTH_32S: _type = CV_32S; break;
+ case IPL_DEPTH_32F: _type = CV_32F; break;
+ case IPL_DEPTH_1U: _type = CV_64F; break;
+ default:
+ error("unsupported image depth");
+ return;
+ }
+
+ int elem_size = CV_ELEM_SIZE1(_type);
+ step[0] = img->widthStep;
+ step[1] = img->nChannels * elem_size;
+ step[2] = elem_size;
+ curr[0] = curr[1] = curr[2] = 0;
+ _data = (uchar*)img->imageData;
+ done = false;
+ }
+ ndim_iterator(NDArray& nda) {
+ dim_vector d(nda.dims());
+ nd = d.length();
+ int last_step = sizeof(double);
+ for (int j = 0; j < d.length(); ++j) {
+ dims[j] = d(j);
+ step[j] = last_step;
+ last_step *= dims[j];
+ curr[j] = 0;
+ }
+ _data = (uchar*)const_cast<double*>(nda.data());
+ _type = CV_64F;
+ done = false;
+ }
+
+ operator bool () const {
+ return !done;
+ }
+ uchar* data() {
+ return _data;
+ }
+ int type() const {
+ return _type;
+ }
+ ndim_iterator& operator++ () {
+ int curr_dim = 0;
+ for (;;) {
+ _data += step[curr_dim];
+ if (++curr[curr_dim] < dims[curr_dim])
+ break;
+ curr[curr_dim] = 0;
+ _data -= step[curr_dim] * dims[curr_dim];
+ ++curr_dim;
+ if (curr_dim == nd) {
+ done = true;
+ break;
+ }
+ }
+ return *this;
+ }
+};
+
+template <class T1, class T2>
+ void transpose_copy_typed(ndim_iterator src_it, ndim_iterator dst_it,
+ double scale) {
+ assert(sizeof(T1) == CV_ELEM_SIZE1(src_it.type()));
+ assert(sizeof(T2) == CV_ELEM_SIZE1(dst_it.type()));
+ if (scale == 1) {
+ while (src_it) {
+ *(T2*)dst_it.data() = (T2)*(T1*)src_it.data();
+ ++src_it;
+ ++dst_it;
+ }
+ } else {
+ while (src_it) {
+ *(T2*)dst_it.data() = (T2)(scale * (*(T1*)src_it.data()));
+ ++src_it;
+ ++dst_it;
+ }
+ }
+}
+
+template <class T1>
+void transpose_copy2(ndim_iterator src_it, ndim_iterator dst_it,
+ double scale) {
+ switch (CV_MAT_DEPTH(dst_it.type())) {
+ case CV_8U: transpose_copy_typed<T1,unsigned char>(src_it,dst_it,scale); break;
+ case CV_8S: transpose_copy_typed<T1,signed char>(src_it,dst_it,scale); break;
+ case CV_16U: transpose_copy_typed<T1,unsigned short>(src_it,dst_it,scale); break;
+ case CV_16S: transpose_copy_typed<T1,signed short>(src_it,dst_it,scale); break;
+ case CV_32S: transpose_copy_typed<T1,signed int>(src_it,dst_it,scale); break;
+ case CV_32F: transpose_copy_typed<T1,float>(src_it,dst_it,scale); break;
+ case CV_64F: transpose_copy_typed<T1,double>(src_it,dst_it,scale); break;
+ default:
+ error("unsupported dest array type (supported types are CV_8U, CV_8S, "
+ "CV_16U, CV_16S, CV_32S, CV_32F, CV_64F)");
+ }
+}
+
+void transpose_copy(ndim_iterator src_it, ndim_iterator dst_it,
+ double scale = 1) {
+ switch (CV_MAT_DEPTH(src_it.type())) {
+ case CV_8U: transpose_copy2<unsigned char>(src_it,dst_it,scale); break;
+ case CV_8S: transpose_copy2<signed char>(src_it,dst_it,scale); break;
+ case CV_16U: transpose_copy2<unsigned short>(src_it,dst_it,scale); break;
+ case CV_16S: transpose_copy2<signed short>(src_it,dst_it,scale); break;
+ case CV_32S: transpose_copy2<signed int>(src_it,dst_it,scale); break;
+ case CV_32F: transpose_copy2<float>(src_it,dst_it,scale); break;
+ case CV_64F: transpose_copy2<double>(src_it,dst_it,scale); break;
+ default:
+ error("unsupported source array type (supported types are CV_8U, CV_8S, "
+ "CV_16U, CV_16S, CV_32S, CV_32F, CV_64F)");
+ }
+}
+
+octave_value cv2mat(CvArr* arr) {
+ dim_vector d;
+ NDArray nda;
+
+ if (CV_IS_MAT(arr)) {
+ // m x n x c
+ CvMat* m = (CvMat*)arr;
+
+ int c = CV_MAT_CN(m->type);
+ if (c == 1) {
+ d.resize(2);
+ d(0) = m->rows;
+ d(1) = m->cols;
+ } else {
+ d.resize(3);
+ d(0) = m->rows;
+ d(1) = m->cols;
+ d(2) = c;
+ }
+
+ nda = NDArray(d);
+ transpose_copy(m, nda);
+ }
+ else if (CV_IS_MATND(arr)) {
+ // m1 x m2 x ... x mn x c
+ CvMatND* m = (CvMatND*)arr;
+
+ int c = CV_MAT_CN(m->type);
+ if (c == 1) {
+ d.resize(m->dims);
+ for (int j = 0; j < m->dims; ++j)
+ d(j) = m->dim[j].size;
+ } else {
+ d.resize(m->dims + 1);
+ for (int j = 0; j < m->dims; ++j)
+ d(j) = m->dim[j].size;
+ d(m->dims) = c;
+ }
+
+ nda = NDArray(d);
+ transpose_copy(m, nda);
+ }
+ else if (CV_IS_IMAGE(arr)) {
+ // m x n x c
+ IplImage* img = (IplImage*)arr;
+
+ if (img->nChannels == 1) {
+ d.resize(2);
+ d(0) = img->height;
+ d(1) = img->width;
+ } else {
+ d.resize(3);
+ d(0) = img->height;
+ d(1) = img->width;
+ d(2) = img->nChannels;
+ }
+
+ nda = NDArray(d);
+ transpose_copy(img, nda);
+ }
+ else {
+ error("unsupported array type (supported types are CvMat, CvMatND, IplImage)");
+ return octave_value();
+ }
+
+ return nda;
+}
+
+octave_value mat2cv(const octave_value& ov, int type) {
+ NDArray nda(ov.array_value());
+ if (error_state)
+ return 0;
+
+ dim_vector d = ov.dims();
+ assert(d.length() > 0);
+
+ int nd = d.length();
+ int last_dim = d(d.length() - 1);
+ int c = CV_MAT_CN(type);
+ if (c != 1 && c != last_dim) {
+ error("last dimension and channel must agree, or channel must equal one");
+ return 0;
+ }
+ if (c > 1)
+ --nd;
+
+ if (nd == 2) {
+ CvMat *m = cvCreateMat(d(0), d(1), type);
+ transpose_copy(nda, m);
+ return SWIG_NewPointerObj(m, SWIGTYPE_p_CvMat, SWIG_POINTER_OWN);
+ }
+ else {
+ int tmp[CV_MAX_DIM];
+ for (int j = 0; j < nd; ++j)
+ tmp[j] = d(j);
+ CvMatND *m = cvCreateMatND(nd, tmp, type);
+ transpose_copy(nda, m);
+ return SWIG_NewPointerObj(m, SWIGTYPE_p_CvMatND, SWIG_POINTER_OWN);
+ }
+}
+
+octave_value cv2im(CvArr* arr) {
+ if (!CV_IS_IMAGE(arr) && !CV_IS_MAT(arr)) {
+ error("input is not an OpenCV image or 2D matrix");
+ return octave_value();
+ }
+
+ dim_vector d;
+ NDArray nda;
+
+ if (CV_IS_MAT(arr)) {
+ // m x n x c
+ CvMat* m = (CvMat*)arr;
+
+ int c = CV_MAT_CN(m->type);
+ if (c == 1) {
+ d.resize(2);
+ d(0) = m->rows;
+ d(1) = m->cols;
+ } else {
+ d.resize(3);
+ d(0) = m->rows;
+ d(1) = m->cols;
+ d(2) = c;
+ }
+
+ nda = NDArray(d);
+ transpose_copy(m, nda, 1/256.0);
+ }
+ else if (CV_IS_IMAGE(arr)) {
+ // m x n x c
+ IplImage* img = (IplImage*)arr;
+
+ if (img->nChannels == 1) {
+ d.resize(2);
+ d(0) = img->height;
+ d(1) = img->width;
+ } else {
+ d.resize(3);
+ d(0) = img->height;
+ d(1) = img->width;
+ d(2) = img->nChannels;
+ }
+
+ nda = NDArray(d);
+ transpose_copy(img, nda, 1/256.0);
+ }
+
+ return nda;
+}
+
+CvMat* im2cv(const octave_value& ov, int depth) {
+ NDArray nda(ov.array_value());
+ if (error_state)
+ return 0;
+
+ dim_vector d = ov.dims();
+ assert(d.length() > 0);
+
+ if (d.length() != 2 && d.length() != 3 &&
+ !(d.length() == 3 && d(2) <= 4)) {
+ error("input must be m x n or m x n x c matrix, where 1<=c<=4");
+ return 0;
+ }
+
+ int channels = d.length() == 2 ? 1 : d(2);
+ int type = CV_MAKETYPE(depth, channels);
+
+ CvMat *m = cvCreateMat(d(0), d(1), type);
+ transpose_copy(nda, m, 256);
+
+ return m;
+}
+
+
+const char* _wrap_CV_FOURCC_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = CV_FOURCC (@var{c1}, @var{c2}, @var{c3}, @var{c4})\n\
+@var{c1} is of type char. @var{c2} is of type char. @var{c3} is of type char. @var{c4} is of type char. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvRetrieveFrame__Deprecated_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvRetrieveFrame (@var{capture}, @var{streamIdx} = 0)\n\
+@var{capture} is of type CvCapture. @var{streamIdx} is of type int. @var{retval} is of type . \n\
+@end deftypefn";
+const char* _wrap_cvQueryFrame__Deprecated_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvQueryFrame (@var{capture})\n\
+@var{capture} is of type CvCapture. @var{retval} is of type . \n\
+@end deftypefn";
+const char* _wrap_CvvImage_GetImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = GetImage (@var{self})\n\
+@var{self} is of type CvvImage. @var{retval} is of type . \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Width_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Width (@var{self})\n\
+@var{self} is of type CvvImage. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvSetMouseCallbackOld_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvSetMouseCallback (@var{window_name}, @var{on_mouse}, @var{param} = nil)\n\
+@var{window_name} is of type char. @var{on_mouse} is of type CvMouseCallback. @var{param} is of type void. \n\
+@end deftypefn";
+const char* _wrap_cvDestroyAllWindows_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvDestroyAllWindows ()\n\
+\n\
+@end deftypefn";
+const char* _wrap_cvDecodeImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvDecodeImage (@var{buf}, @var{iscolor} = 1)\n\
+@var{buf} is of type CvMat. @var{iscolor} is of type int. @var{retval} is of type . \n\
+@end deftypefn";
+const char* _wrap_cvSaveImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvSaveImage (@var{filename}, @var{image}, @var{params} = 0)\n\
+@var{filename} is of type char. @var{image} is of type CvArr. @var{params} is of type int. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvGetWindowHandle_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGetWindowHandle (@var{name})\n\
+@var{name} is of type char. @var{retval} is of type void. \n\
+@end deftypefn";
+const char* _wrap_cvEncodeImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvEncodeImage (@var{ext}, @var{image}, @var{params} = 0)\n\
+@var{ext} is of type char. @var{image} is of type CvArr. @var{params} is of type int. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Fill_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} Fill (@var{self}, @var{color})\n\
+@var{self} is of type CvvImage. @var{color} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvNamedWindow_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvNamedWindow (@var{name}, @var{flags} = 1)\n\
+@var{name} is of type char. @var{flags} is of type int. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_mat2cv_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{m1} = mat2cv (@var{m2}, @var{type})\n\
+Convert the Octave array @var{m2} into either a CvMat or a CvMatND of type\n\
+@var{type}.\n\
+@var{type} is one of CV_8UC(n), CV_8SC(n), CV_16UC(n), CV_16SC(n), CV_32SC(n), \n\
+CV_32FC(n), CV_64FC(n), where n indicates channel and is between 1 and 4.\n\
+If the dimension of @var{m2} is equal to 2 (not counting channels),\n\
+a CvMat is returned. Otherwise, a CvMatND is returned.\n\
+@end deftypefn\n\
+";
+const char* _wrap_CvvImage_Load_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Load (@var{self}, @var{filename})\n\
+@var{self} is of type CvvImage. @var{filename} is of type char. @var{retval} is of type bool. \n\
+@end deftypefn";
+const char* _wrap_cvConvertImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvConvertImage (@var{src}, @var{dst}, @var{flags} = 0)\n\
+@var{src} is of type CvArr. @var{dst} is of type CvArr. @var{flags} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvInitSystem_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvInitSystem (@var{argc}, @var{argv})\n\
+@var{argc} is of type int. @var{argv} is of type char. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Save_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Save (@var{self}, @var{filename})\n\
+@var{self} is of type CvvImage. @var{filename} is of type char. @var{retval} is of type bool. \n\
+@end deftypefn";
+const char* _wrap_cvLoadImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvLoadImageMat (@var{filename})\n\
+@var{filename} is of type char. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_CopyOf_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CopyOf (@var{self}, @var{img})\n\
+@var{self} is of type CvvImage. @var{img} is of type . \n\
+@end deftypefn";
+const char* _wrap_cvLoadImageM_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvLoadImageM (@var{filename}, @var{iscolor} = 1)\n\
+@var{filename} is of type char. @var{iscolor} is of type int. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_new_CvvImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = CvvImage ()\n\
+@var{retval} is of type CvvImage. \n\
+@end deftypefn";
+const char* _wrap_delete_CvvImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CvvImage (@var{self})\n\
+@var{self} is of type CvvImage. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Bpp_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Bpp (@var{self})\n\
+@var{self} is of type CvvImage. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvCreateTrackbar2_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvCreateTrackbar2 (@var{trackbar_name}, @var{window_name}, @var{value}, @var{count}, @var{on_change}, @var{userdata} = 0)\n\
+@var{trackbar_name} is of type char. @var{window_name} is of type char. @var{value} is of type int. @var{count} is of type int. @var{on_change} is of type CvTrackbarCallback2. @var{userdata} is of type void. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvCreateVideoWriter_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvCreateVideoWriter (@var{filename}, @var{fourcc}, @var{fps}, @var{frame_size}, @var{is_color} = 1)\n\
+@var{filename} is of type char. @var{fourcc} is of type int. @var{fps} is of type double. @var{frame_size} is of type CvSize. @var{is_color} is of type int. @var{retval} is of type CvVideoWriter. \n\
+@end deftypefn";
+const char* _wrap_cvReleaseVideoWriter_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvReleaseVideoWriter (@var{writer})\n\
+@var{writer} is of type CvVideoWriter. \n\
+@end deftypefn";
+const char* _wrap_delete_CvVideoWriter_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CvVideoWriter (@var{self})\n\
+@var{self} is of type CvVideoWriter. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Show_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} Show (@var{self}, @var{window})\n\
+@var{self} is of type CvvImage. @var{window} is of type char. \n\
+@end deftypefn";
+const char* _wrap_cvDestroyWindow_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvDestroyWindow (@var{name})\n\
+@var{name} is of type char. \n\
+@end deftypefn";
+const char* _wrap_cvMoveWindow_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvMoveWindow (@var{name}, @var{x}, @var{y})\n\
+@var{name} is of type char. @var{x} is of type int. @var{y} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvResizeWindow_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvResizeWindow (@var{name}, @var{width}, @var{height})\n\
+@var{name} is of type char. @var{width} is of type int. @var{height} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvGetCaptureDomain_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGetCaptureDomain (@var{capture})\n\
+@var{capture} is of type CvCapture. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvGetWindowName_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGetWindowName (@var{window_handle})\n\
+@var{window_handle} is of type void. @var{retval} is of type char. \n\
+@end deftypefn";
+const char* _wrap_cvStartWindowThread_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvStartWindowThread ()\n\
+@var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvWaitKey_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvWaitKey (@var{delay} = 0)\n\
+@var{delay} is of type int. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvSetTrackbarPos_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvSetTrackbarPos (@var{trackbar_name}, @var{window_name}, @var{pos})\n\
+@var{trackbar_name} is of type char. @var{window_name} is of type char. @var{pos} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvGetTrackbarPos_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGetTrackbarPos (@var{trackbar_name}, @var{window_name})\n\
+@var{trackbar_name} is of type char. @var{window_name} is of type char. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cv2mat_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{m1} = cv2mat (@var{m2})\n\
+Convert the CvMat, CvMatND, or IplImage @var{m2} into an Octave real matrix @var{m1}.\n\
+The dimensions @var{m1} are those of @var{m2}, plus an addition dimension \n\
+if @var{m2} has more than one channel.\n\
+@end deftypefn\n\
+";
+const char* _wrap_cvQueryFrame_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvQueryFrame__CvMat (@var{capture})\n\
+@var{capture} is of type CvCapture. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_cvShowImage_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvShowImage (@var{name}, @var{image})\n\
+@var{name} is of type char. @var{image} is of type CvArr. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Height_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Height (@var{self})\n\
+@var{self} is of type CvvImage. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvDecodeImageM_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvDecodeImageM (@var{buf}, @var{iscolor} = 1)\n\
+@var{buf} is of type CvMat. @var{iscolor} is of type int. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_cvGetCaptureProperty_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGetCaptureProperty (@var{capture}, @var{property_id})\n\
+@var{capture} is of type CvCapture. @var{property_id} is of type int. @var{retval} is of type double. \n\
+@end deftypefn";
+const char* _wrap_cvSetCaptureProperty_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvSetCaptureProperty (@var{capture}, @var{property_id}, @var{value})\n\
+@var{capture} is of type CvCapture. @var{property_id} is of type int. @var{value} is of type double. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_LoadRect_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = LoadRect (@var{self}, @var{filename}, @var{desired_color}, @var{r})\n\
+@var{self} is of type CvvImage. @var{filename} is of type char. @var{desired_color} is of type int. @var{r} is of type CvRect. @var{retval} is of type bool. \n\
+@end deftypefn";
+const char* _wrap_im2cv_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{I} = im2cv (@var{im}, @var{depth})\n\
+Convert the Octave image @var{im} into the OpenCV image @var{I} of depth\n\
+@var{depth}.\n\
+@var{im} is a real matrix of dimension height x width or \n\
+height x width x channels, with values within the interval [0,1].\n\
+@var{depth} must be one of 0, 1, 2, 3, 4, 5, 6.\n\
+@end deftypefn\n\
+";
+const char* _wrap_cvRetrieveFrame_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvRetrieveFrame__CvMat (@var{capture})\n\
+@var{capture} is of type CvCapture. @var{retval} is of type CvMat. \n\
+@end deftypefn";
+const char* _wrap_cvCreateTrackbar_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvCreateTrackbar (@var{trackbar_name}, @var{window_name}, @var{value}, @var{count}, @var{on_change})\n\
+@var{trackbar_name} is of type char. @var{window_name} is of type char. @var{value} is of type int. @var{count} is of type int. @var{on_change} is of type CvTrackbarCallback. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvWriteFrame_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvWriteFrame (@var{writer}, @var{image})\n\
+@var{writer} is of type CvVideoWriter. @var{image} is of type . @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvCreateFileCapture_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvCreateFileCapture (@var{filename})\n\
+@var{filename} is of type char. @var{retval} is of type CvCapture. \n\
+@end deftypefn";
+const char* _wrap_cvCreateCameraCapture_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvCreateCameraCapture (@var{index})\n\
+@var{index} is of type int. @var{retval} is of type CvCapture. \n\
+@end deftypefn";
+const char* _wrap_cvGrabFrame_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = cvGrabFrame (@var{capture})\n\
+@var{capture} is of type CvCapture. @var{retval} is of type int. \n\
+@end deftypefn";
+const char* _wrap_cvReleaseCapture_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} cvReleaseCapture (@var{capture})\n\
+@var{capture} is of type CvCapture. \n\
+@end deftypefn";
+const char* _wrap_delete_CvCapture_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CvCapture (@var{self})\n\
+@var{self} is of type CvCapture. \n\
+@end deftypefn";
+const char* _wrap_cv2im_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{im} = cv2im (@var{I})\n\
+Convert the OpenCV image or 2D matrix @var{I} into an Octave image @var{im}.\n\
+@var{im} is a real matrix of dimension height x width or \n\
+height x width x channels, with values within the interval [0,1]).\n\
+@end deftypefn\n\
+";
+const char* _wrap_delete_CvRNG_Wrapper_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CvRNG_Wrapper::~CvRNG_Wrapper (@var{self})\n\
+@var{self} is of type CvRNG_Wrapper. \n\
+@end deftypefn";
+const char* _wrap_delete_CvSubdiv2DEdge_Wrapper_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} CvSubdiv2DEdge_Wrapper::~CvSubdiv2DEdge_Wrapper (@var{self})\n\
+@var{self} is of type CvSubdiv2DEdge_Wrapper. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Create_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} @var{retval} = Create (@var{self}, @var{width}, @var{height}, @var{bits_per_pixel})\n\
+@var{self} is of type CvvImage. @var{width} is of type int. @var{height} is of type int. @var{bits_per_pixel} is of type int. @var{retval} is of type bool. \n\
+@end deftypefn";
+const char* _wrap_CvvImage_Destroy_texinfo = "-*- texinfo -*-\n\
+@deftypefn {Loadable Function} Destroy (@var{self})\n\
+@var{self} is of type CvvImage. \n\
+@end deftypefn";
+
+static octave_value_list _wrap_new_CvRNG_Wrapper (const octave_value_list& args, int nargout) {
+ CvRNG *arg1 = 0 ;
+ void *argp1 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvRNG_Wrapper *result = 0 ;
+
+ if (!SWIG_check_num_args("new_CvRNG_Wrapper",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1, SWIGTYPE_p_uint64_t, 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_CvRNG_Wrapper" "', argument " "1"" of type '" "CvRNG const &""'");
+ }
+ if (!argp1) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_CvRNG_Wrapper" "', argument " "1"" of type '" "CvRNG const &""'");
+ }
+ arg1 = (CvRNG *)(argp1);
+ result = (CvRNG_Wrapper *)new CvRNG_Wrapper((CvRNG const &)*arg1);
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvRNG_Wrapper, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvRNG_Wrapper_ptr (const octave_value_list& args, int nargout) {
+ CvRNG_Wrapper *arg1 = (CvRNG_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvRNG *result = 0 ;
+
+ if (!SWIG_check_num_args("CvRNG_Wrapper_ptr",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvRNG_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvRNG_Wrapper_ptr" "', argument " "1"" of type '" "CvRNG_Wrapper *""'");
+ }
+ arg1 = (CvRNG_Wrapper *)(argp1);
+ result = (CvRNG *)(arg1)->ptr();
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_uint64_t, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvRNG_Wrapper_ref (const octave_value_list& args, int nargout) {
+ CvRNG_Wrapper *arg1 = (CvRNG_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvRNG *result = 0 ;
+
+ if (!SWIG_check_num_args("CvRNG_Wrapper_ref",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvRNG_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvRNG_Wrapper_ref" "', argument " "1"" of type '" "CvRNG_Wrapper *""'");
+ }
+ arg1 = (CvRNG_Wrapper *)(argp1);
+ result = (CvRNG *) &(arg1)->ref();
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_uint64_t, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvRNG_Wrapper___eq__ (const octave_value_list& args, int nargout) {
+ CvRNG_Wrapper *arg1 = (CvRNG_Wrapper *) 0 ;
+ CvRNG_Wrapper *arg2 = 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 ;
+ int res2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvRNG_Wrapper___eq__",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvRNG_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvRNG_Wrapper___eq__" "', argument " "1"" of type '" "CvRNG_Wrapper *""'");
+ }
+ arg1 = (CvRNG_Wrapper *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvRNG_Wrapper, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvRNG_Wrapper___eq__" "', argument " "2"" of type '" "CvRNG_Wrapper const &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvRNG_Wrapper___eq__" "', argument " "2"" of type '" "CvRNG_Wrapper const &""'");
+ }
+ arg2 = (CvRNG_Wrapper *)(argp2);
+ result = (bool)(arg1)->operator ==((CvRNG_Wrapper const &)*arg2);
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvRNG_Wrapper___ne__ (const octave_value_list& args, int nargout) {
+ CvRNG_Wrapper *arg1 = (CvRNG_Wrapper *) 0 ;
+ CvRNG_Wrapper *arg2 = 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 ;
+ int res2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvRNG_Wrapper___ne__",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvRNG_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvRNG_Wrapper___ne__" "', argument " "1"" of type '" "CvRNG_Wrapper *""'");
+ }
+ arg1 = (CvRNG_Wrapper *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvRNG_Wrapper, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvRNG_Wrapper___ne__" "', argument " "2"" of type '" "CvRNG_Wrapper const &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvRNG_Wrapper___ne__" "', argument " "2"" of type '" "CvRNG_Wrapper const &""'");
+ }
+ arg2 = (CvRNG_Wrapper *)(argp2);
+ result = (bool)(arg1)->operator !=((CvRNG_Wrapper const &)*arg2);
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_delete_CvRNG_Wrapper (const octave_value_list& args, int nargout) {
+ CvRNG_Wrapper *arg1 = (CvRNG_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("delete_CvRNG_Wrapper",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvRNG_Wrapper, SWIG_POINTER_DISOWN | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CvRNG_Wrapper" "', argument " "1"" of type '" "CvRNG_Wrapper *""'");
+ }
+ arg1 = (CvRNG_Wrapper *)(argp1);
+ {
+ try {
+ delete arg1;
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static swig_octave_member swig_CvRNG_Wrapper_members[] = {
+{"ptr",_wrap_CvRNG_Wrapper_ptr,0,0,0,0},
+{"ref",_wrap_CvRNG_Wrapper_ref,0,0,0,0},
+{"__eq__",_wrap_CvRNG_Wrapper___eq__,0,0,0,0},
+{"__ne__",_wrap_CvRNG_Wrapper___ne__,0,0,0,0},
+{0,0,0,0}
+};
+static const char *swig_CvRNG_Wrapper_base_names[] = {0};
+static const swig_type_info *swig_CvRNG_Wrapper_base[] = {0};
+static swig_octave_class _wrap_class_CvRNG_Wrapper = {"CvRNG_Wrapper", &SWIGTYPE_p_CvRNG_Wrapper,0,_wrap_new_CvRNG_Wrapper,0,_wrap_delete_CvRNG_Wrapper,swig_CvRNG_Wrapper_members,swig_CvRNG_Wrapper_base_names,swig_CvRNG_Wrapper_base };
+
+static octave_value_list _wrap_new_CvSubdiv2DEdge_Wrapper (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge *arg1 = 0 ;
+ CvSubdiv2DEdge temp1 ;
+ size_t val1 ;
+ int ecode1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvSubdiv2DEdge_Wrapper *result = 0 ;
+
+ if (!SWIG_check_num_args("new_CvSubdiv2DEdge_Wrapper",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ ecode1 = SWIG_AsVal_size_t(args(0), &val1);
+ if (!SWIG_IsOK(ecode1)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_CvSubdiv2DEdge_Wrapper" "', argument " "1"" of type '" "CvSubdiv2DEdge""'");
+ }
+ temp1 = (CvSubdiv2DEdge)(val1);
+ arg1 = &temp1;
+ result = (CvSubdiv2DEdge_Wrapper *)new CvSubdiv2DEdge_Wrapper((CvSubdiv2DEdge const &)*arg1);
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvSubdiv2DEdge_Wrapper_ptr (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge_Wrapper *arg1 = (CvSubdiv2DEdge_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvSubdiv2DEdge *result = 0 ;
+
+ if (!SWIG_check_num_args("CvSubdiv2DEdge_Wrapper_ptr",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvSubdiv2DEdge_Wrapper_ptr" "', argument " "1"" of type '" "CvSubdiv2DEdge_Wrapper *""'");
+ }
+ arg1 = (CvSubdiv2DEdge_Wrapper *)(argp1);
+ result = (CvSubdiv2DEdge *)(arg1)->ptr();
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_size_t, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvSubdiv2DEdge_Wrapper_ref (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge_Wrapper *arg1 = (CvSubdiv2DEdge_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvSubdiv2DEdge *result = 0 ;
+
+ if (!SWIG_check_num_args("CvSubdiv2DEdge_Wrapper_ref",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvSubdiv2DEdge_Wrapper_ref" "', argument " "1"" of type '" "CvSubdiv2DEdge_Wrapper *""'");
+ }
+ arg1 = (CvSubdiv2DEdge_Wrapper *)(argp1);
+ result = (CvSubdiv2DEdge *) &(arg1)->ref();
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_size_t, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvSubdiv2DEdge_Wrapper___eq__ (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge_Wrapper *arg1 = (CvSubdiv2DEdge_Wrapper *) 0 ;
+ CvSubdiv2DEdge_Wrapper *arg2 = 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 ;
+ int res2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvSubdiv2DEdge_Wrapper___eq__",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvSubdiv2DEdge_Wrapper___eq__" "', argument " "1"" of type '" "CvSubdiv2DEdge_Wrapper *""'");
+ }
+ arg1 = (CvSubdiv2DEdge_Wrapper *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvSubdiv2DEdge_Wrapper___eq__" "', argument " "2"" of type '" "CvSubdiv2DEdge_Wrapper const &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvSubdiv2DEdge_Wrapper___eq__" "', argument " "2"" of type '" "CvSubdiv2DEdge_Wrapper const &""'");
+ }
+ arg2 = (CvSubdiv2DEdge_Wrapper *)(argp2);
+ result = (bool)(arg1)->operator ==((CvSubdiv2DEdge_Wrapper const &)*arg2);
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvSubdiv2DEdge_Wrapper___ne__ (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge_Wrapper *arg1 = (CvSubdiv2DEdge_Wrapper *) 0 ;
+ CvSubdiv2DEdge_Wrapper *arg2 = 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 ;
+ int res2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvSubdiv2DEdge_Wrapper___ne__",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvSubdiv2DEdge_Wrapper___ne__" "', argument " "1"" of type '" "CvSubdiv2DEdge_Wrapper *""'");
+ }
+ arg1 = (CvSubdiv2DEdge_Wrapper *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvSubdiv2DEdge_Wrapper___ne__" "', argument " "2"" of type '" "CvSubdiv2DEdge_Wrapper const &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvSubdiv2DEdge_Wrapper___ne__" "', argument " "2"" of type '" "CvSubdiv2DEdge_Wrapper const &""'");
+ }
+ arg2 = (CvSubdiv2DEdge_Wrapper *)(argp2);
+ result = (bool)(arg1)->operator !=((CvSubdiv2DEdge_Wrapper const &)*arg2);
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_delete_CvSubdiv2DEdge_Wrapper (const octave_value_list& args, int nargout) {
+ CvSubdiv2DEdge_Wrapper *arg1 = (CvSubdiv2DEdge_Wrapper *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("delete_CvSubdiv2DEdge_Wrapper",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvSubdiv2DEdge_Wrapper, SWIG_POINTER_DISOWN | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CvSubdiv2DEdge_Wrapper" "', argument " "1"" of type '" "CvSubdiv2DEdge_Wrapper *""'");
+ }
+ arg1 = (CvSubdiv2DEdge_Wrapper *)(argp1);
+ {
+ try {
+ delete arg1;
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static swig_octave_member swig_CvSubdiv2DEdge_Wrapper_members[] = {
+{"ptr",_wrap_CvSubdiv2DEdge_Wrapper_ptr,0,0,0,0},
+{"ref",_wrap_CvSubdiv2DEdge_Wrapper_ref,0,0,0,0},
+{"__eq__",_wrap_CvSubdiv2DEdge_Wrapper___eq__,0,0,0,0},
+{"__ne__",_wrap_CvSubdiv2DEdge_Wrapper___ne__,0,0,0,0},
+{0,0,0,0}
+};
+static const char *swig_CvSubdiv2DEdge_Wrapper_base_names[] = {0};
+static const swig_type_info *swig_CvSubdiv2DEdge_Wrapper_base[] = {0};
+static swig_octave_class _wrap_class_CvSubdiv2DEdge_Wrapper = {"CvSubdiv2DEdge_Wrapper", &SWIGTYPE_p_CvSubdiv2DEdge_Wrapper,0,_wrap_new_CvSubdiv2DEdge_Wrapper,0,_wrap_delete_CvSubdiv2DEdge_Wrapper,swig_CvSubdiv2DEdge_Wrapper_members,swig_CvSubdiv2DEdge_Wrapper_base_names,swig_CvSubdiv2DEdge_Wrapper_base };
+
+static octave_value_list _wrap_cvSetMouseCallback__SWIG_0 (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ octave_value arg2 ;
+ octave_value arg3 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvSetMouseCallback",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSetMouseCallback" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ arg2 = args(1);
+ arg3 = args(2);
+ cvSetMouseCallbackOct((char const *)arg1,arg2,arg3);
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSetMouseCallback__SWIG_1 (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ octave_value arg2 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvSetMouseCallback",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSetMouseCallback" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ arg2 = args(1);
+ cvSetMouseCallbackOct((char const *)arg1,arg2);
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSetMouseCallback (const octave_value_list& args, int nargout) {
+ int argc = args.length();
+ octave_value_ref argv[3]={
+ octave_value_ref(args,0),octave_value_ref(args,1),octave_value_ref(args,2)
+ };
+
+ if (argc == 2) {
+ int _v;
+ int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ _v = (*argv[1]).is_defined();
+ if (_v) {
+ return _wrap_cvSetMouseCallback__SWIG_1(args, nargout);
+ }
+ }
+ }
+ if (argc == 3) {
+ int _v;
+ int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ _v = (*argv[1]).is_defined();
+ if (_v) {
+ _v = (*argv[2]).is_defined();
+ if (_v) {
+ return _wrap_cvSetMouseCallback__SWIG_0(args, nargout);
+ }
+ }
+ }
+ }
+
+ error("No matching function for overload");
+ return octave_value_list();
+}
+
+
+static octave_value_list _wrap_cvLoadImage__SWIG_0 (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvLoadImage",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvLoadImage" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvLoadImage" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ {
+ try {
+ result = (CvMat *)cvLoadImageMat((char const *)arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvLoadImage__SWIG_1 (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvLoadImage",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvLoadImage" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ try {
+ result = (CvMat *)cvLoadImageMat((char const *)arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvLoadImage (const octave_value_list& args, int nargout) {
+ int argc = args.length();
+ octave_value_ref argv[2]={
+ octave_value_ref(args,0),octave_value_ref(args,1)
+ };
+
+ if (argc == 1) {
+ int _v;
+ int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ return _wrap_cvLoadImage__SWIG_1(args, nargout);
+ }
+ }
+ if (argc == 2) {
+ int _v;
+ int res = SWIG_AsCharPtrAndSize(argv[0], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[1], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_cvLoadImage__SWIG_0(args, nargout);
+ }
+ }
+ }
+
+ error("No matching function for overload");
+ return octave_value_list();
+}
+
+
+static octave_value_list _wrap_cvRetrieveFrame (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvRetrieveFrame",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvRetrieveFrame" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ result = (CvMat *)cvRetrieveFrame__CvMat(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvQueryFrame (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvQueryFrame",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvQueryFrame" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ result = (CvMat *)cvQueryFrame__CvMat(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvInitSystem (const octave_value_list& args, int nargout) {
+ int arg1 ;
+ char **arg2 = (char **) 0 ;
+ int val1 ;
+ int ecode1 = 0 ;
+ void *vptr2 ;
+ char *buffer2 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvInitSystem",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ ecode1 = SWIG_AsVal_int(args(0), &val1);
+ if (!SWIG_IsOK(ecode1)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cvInitSystem" "', argument " "1"" of type '" "int""'");
+ }
+ arg1 = (int)(val1);
+ {
+ if ((SWIG_ConvertPtr(args(1), &vptr2, SWIGTYPE_p_char, 1)) == -1){
+ SWIG_fail;
+ }
+ buffer2 = (char *) vptr2;
+ arg2=&buffer2;
+ }
+ {
+ try {
+ result = (int)cvInitSystem(arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvStartWindowThread (const octave_value_list& args, int nargout) {
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvStartWindowThread",args.length(),0,0,0)) {
+ SWIG_fail;
+ }
+ {
+ try {
+ result = (int)cvStartWindowThread();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvNamedWindow (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 = (int) 1 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvNamedWindow",args.length(),2,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvNamedWindow" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ if (1<args.length()) {
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvNamedWindow" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ }
+ {
+ try {
+ result = (int)cvNamedWindow((char const *)arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvShowImage (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ CvArr *arg2 = (CvArr *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ bool freearg2 = false ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvShowImage",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvShowImage" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ arg2 = OctObject_to_CvArr(args(1), &freearg2);
+ }
+ {
+ try {
+ cvShowImage((char const *)arg1,(void const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ {
+ if(arg2!=NULL && freearg2){
+ cvReleaseData( arg2 );
+ cvFree(&(arg2));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvResizeWindow (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 ;
+ int arg3 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvResizeWindow",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvResizeWindow" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvResizeWindow" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvResizeWindow" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ cvResizeWindow((char const *)arg1,arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvMoveWindow (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 ;
+ int arg3 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvMoveWindow",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvMoveWindow" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvMoveWindow" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvMoveWindow" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ cvMoveWindow((char const *)arg1,arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvDestroyWindow (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvDestroyWindow",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvDestroyWindow" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ try {
+ cvDestroyWindow((char const *)arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvDestroyAllWindows (const octave_value_list& args, int nargout) {
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvDestroyAllWindows",args.length(),0,0,0)) {
+ SWIG_fail;
+ }
+ {
+ try {
+ cvDestroyAllWindows();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGetWindowHandle (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ void *result = 0 ;
+
+ if (!SWIG_check_num_args("cvGetWindowHandle",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGetWindowHandle" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ try {
+ result = (void *)cvGetWindowHandle((char const *)arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGetWindowName (const octave_value_list& args, int nargout) {
+ void *arg1 = (void *) 0 ;
+ int res1 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ char *result = 0 ;
+
+ if (!SWIG_check_num_args("cvGetWindowName",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0),SWIG_as_voidptrptr(&arg1), 0, 0);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGetWindowName" "', argument " "1"" of type '" "void *""'");
+ }
+ {
+ try {
+ result = (char *)cvGetWindowName(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_FromCharPtr((const char *)result);
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvCreateTrackbar (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int *arg3 = (int *) 0 ;
+ int arg4 ;
+ CvTrackbarCallback arg5 = (CvTrackbarCallback) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ int val4 ;
+ int ecode4 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvCreateTrackbar",args.length(),5,5,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvCreateTrackbar" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cvCreateTrackbar" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ arg3 = (int *)malloc (sizeof (int));
+ *arg3 = OctInt_AsLong (args(2));
+ }
+ ecode4 = SWIG_AsVal_int(args(3), &val4);
+ if (!SWIG_IsOK(ecode4)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "cvCreateTrackbar" "', argument " "4"" of type '" "int""'");
+ }
+ arg4 = (int)(val4);
+ {
+ if(my_trackbar_cb_size == ICV_OCT_MAX_CB){
+ SWIG_exception(SWIG_IndexError, "Exceeded maximum number of trackbars");
+ }
+
+ my_trackbar_cb_size++;
+
+ // memorize the Octave address of the callback function
+ my_trackbar_cb_funcs[my_trackbar_cb_size-1].oct_func = (octave_value) args(4);
+
+ // prepare to call the C function who will register the callback
+ arg5 = my_trackbar_cb_funcs[ my_trackbar_cb_size-1 ].cv_func;
+ }
+ {
+ try {
+ result = (int)cvCreateTrackbar((char const *)arg1,(char const *)arg2,arg3,arg4,arg5);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvCreateTrackbar2 (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int *arg3 = (int *) 0 ;
+ int arg4 ;
+ CvTrackbarCallback2 arg5 = (CvTrackbarCallback2) 0 ;
+ void *arg6 = (void *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ int val4 ;
+ int ecode4 = 0 ;
+ int res6 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvCreateTrackbar2",args.length(),6,5,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvCreateTrackbar2" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cvCreateTrackbar2" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ arg3 = (int *)malloc (sizeof (int));
+ *arg3 = OctInt_AsLong (args(2));
+ }
+ ecode4 = SWIG_AsVal_int(args(3), &val4);
+ if (!SWIG_IsOK(ecode4)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "cvCreateTrackbar2" "', argument " "4"" of type '" "int""'");
+ }
+ arg4 = (int)(val4);
+ {
+ int res = SWIG_ConvertFunctionPtr(args(4), (void**)(&arg5), SWIGTYPE_p_f_int_p_void__void);
+ if (!SWIG_IsOK(res)) {
+ SWIG_exception_fail(SWIG_ArgError(res), "in method '" "cvCreateTrackbar2" "', argument " "5"" of type '" "CvTrackbarCallback2""'");
+ }
+ }
+ if (5<args.length()) {
+ res6 = SWIG_ConvertPtr(args(5),SWIG_as_voidptrptr(&arg6), 0, 0);
+ if (!SWIG_IsOK(res6)) {
+ SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "cvCreateTrackbar2" "', argument " "6"" of type '" "void *""'");
+ }
+ }
+ {
+ try {
+ result = (int)cvCreateTrackbar2((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGetTrackbarPos (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvGetTrackbarPos",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGetTrackbarPos" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cvGetTrackbarPos" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ try {
+ result = (int)cvGetTrackbarPos((char const *)arg1,(char const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSetTrackbarPos (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int arg3 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvSetTrackbarPos",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSetTrackbarPos" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "cvSetTrackbarPos" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvSetTrackbarPos" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ cvSetTrackbarPos((char const *)arg1,(char const *)arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSetMouseCallbackOld (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ CvMouseCallback arg2 = (CvMouseCallback) 0 ;
+ void *arg3 = (void *) NULL ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int res3 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvSetMouseCallbackOld",args.length(),3,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSetMouseCallbackOld" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ int res = SWIG_ConvertFunctionPtr(args(1), (void**)(&arg2), SWIGTYPE_p_f_int_int_int_int_p_void__void);
+ if (!SWIG_IsOK(res)) {
+ SWIG_exception_fail(SWIG_ArgError(res), "in method '" "cvSetMouseCallbackOld" "', argument " "2"" of type '" "CvMouseCallback""'");
+ }
+ }
+ if (2<args.length()) {
+ res3 = SWIG_ConvertPtr(args(2),SWIG_as_voidptrptr(&arg3), 0, 0);
+ if (!SWIG_IsOK(res3)) {
+ SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "cvSetMouseCallbackOld" "', argument " "3"" of type '" "void *""'");
+ }
+ }
+ {
+ try {
+ cvSetMouseCallback((char const *)arg1,arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvLoadImageM (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 = (int) 1 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvLoadImageM",args.length(),2,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvLoadImageM" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ if (1<args.length()) {
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvLoadImageM" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ }
+ {
+ try {
+ result = (CvMat *)cvLoadImageM((char const *)arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSaveImage (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ CvArr *arg2 = (CvArr *) 0 ;
+ int *arg3 = (int *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ bool freearg2 = false ;
+ void *argp3 = 0 ;
+ int res3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvSaveImage",args.length(),3,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSaveImage" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ arg2 = OctObject_to_CvArr(args(1), &freearg2);
+ }
+ if (2<args.length()) {
+ res3 = SWIG_ConvertPtr(args(2), &argp3,SWIGTYPE_p_int, 0 | 0 );
+ if (!SWIG_IsOK(res3)) {
+ SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "cvSaveImage" "', argument " "3"" of type '" "int const *""'");
+ }
+ arg3 = (int *)(argp3);
+ }
+ {
+ try {
+ result = (int)cvSaveImage((char const *)arg1,(void const *)arg2,(int const *)arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ {
+ if(arg2!=NULL && freearg2){
+ cvReleaseData( arg2 );
+ cvFree(&(arg2));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvDecodeImage (const octave_value_list& args, int nargout) {
+ CvMat *arg1 = (CvMat *) 0 ;
+ int arg2 = (int) 1 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ IplImage *result = 0 ;
+
+ if (!SWIG_check_num_args("cvDecodeImage",args.length(),2,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvMat, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvDecodeImage" "', argument " "1"" of type '" "CvMat const *""'");
+ }
+ arg1 = (CvMat *)(argp1);
+ if (1<args.length()) {
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvDecodeImage" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ }
+ {
+ try {
+ result = (IplImage *)cvDecodeImage((CvMat const *)arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ {
+ SWIG_exception( SWIG_TypeError, "IplImage * return type is deprecated. Please file a bug report at www.sourceforge.net/opencvlibrary if you see this error message.");
+ SWIG_fail;
+ }
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvDecodeImageM (const octave_value_list& args, int nargout) {
+ CvMat *arg1 = (CvMat *) 0 ;
+ int arg2 = (int) 1 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvDecodeImageM",args.length(),2,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvMat, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvDecodeImageM" "', argument " "1"" of type '" "CvMat const *""'");
+ }
+ arg1 = (CvMat *)(argp1);
+ if (1<args.length()) {
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvDecodeImageM" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ }
+ {
+ try {
+ result = (CvMat *)cvDecodeImageM((CvMat const *)arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvEncodeImage (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ CvArr *arg2 = (CvArr *) 0 ;
+ int *arg3 = (int *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ bool freearg2 = false ;
+ void *argp3 = 0 ;
+ int res3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("cvEncodeImage",args.length(),3,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvEncodeImage" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ arg2 = OctObject_to_CvArr(args(1), &freearg2);
+ }
+ if (2<args.length()) {
+ res3 = SWIG_ConvertPtr(args(2), &argp3,SWIGTYPE_p_int, 0 | 0 );
+ if (!SWIG_IsOK(res3)) {
+ SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "cvEncodeImage" "', argument " "3"" of type '" "int const *""'");
+ }
+ arg3 = (int *)(argp3);
+ }
+ {
+ try {
+ result = (CvMat *)cvEncodeImage((char const *)arg1,(void const *)arg2,(int const *)arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+ {
+ if(arg2!=NULL && freearg2){
+ cvReleaseData( arg2 );
+ cvFree(&(arg2));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvConvertImage (const octave_value_list& args, int nargout) {
+ CvArr *arg1 = (CvArr *) 0 ;
+ CvArr *arg2 = (CvArr *) 0 ;
+ int arg3 = (int) 0 ;
+ bool freearg1 = false ;
+ bool freearg2 = false ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvConvertImage",args.length(),3,2,0)) {
+ SWIG_fail;
+ }
+ {
+ arg1 = OctObject_to_CvArr(args(0), &freearg1);
+ }
+ {
+ arg2 = OctObject_to_CvArr(args(1), &freearg2);
+ }
+ if (2<args.length()) {
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvConvertImage" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ }
+ {
+ try {
+ cvConvertImage((void const *)arg1,arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ {
+ if(arg1!=NULL && freearg1){
+ cvReleaseData( arg1 );
+ cvFree(&(arg1));
+ }
+ }
+ {
+ if(arg2!=NULL && freearg2){
+ cvReleaseData( arg2 );
+ cvFree(&(arg2));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvWaitKey (const octave_value_list& args, int nargout) {
+ int arg1 = (int) 0 ;
+ int val1 ;
+ int ecode1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvWaitKey",args.length(),1,0,0)) {
+ SWIG_fail;
+ }
+ if (0<args.length()) {
+ ecode1 = SWIG_AsVal_int(args(0), &val1);
+ if (!SWIG_IsOK(ecode1)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cvWaitKey" "', argument " "1"" of type '" "int""'");
+ }
+ arg1 = (int)(val1);
+ }
+ {
+ try {
+ result = (int)cvWaitKey(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvCreateFileCapture (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvCapture *result = 0 ;
+
+ if (!SWIG_check_num_args("cvCreateFileCapture",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvCreateFileCapture" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ {
+ try {
+ result = (CvCapture *)cvCreateFileCapture((char const *)arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvCreateCameraCapture (const octave_value_list& args, int nargout) {
+ int arg1 ;
+ int val1 ;
+ int ecode1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvCapture *result = 0 ;
+
+ if (!SWIG_check_num_args("cvCreateCameraCapture",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ ecode1 = SWIG_AsVal_int(args(0), &val1);
+ if (!SWIG_IsOK(ecode1)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "cvCreateCameraCapture" "', argument " "1"" of type '" "int""'");
+ }
+ arg1 = (int)(val1);
+ {
+ try {
+ result = (CvCapture *)cvCreateCameraCapture(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGrabFrame (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvGrabFrame",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGrabFrame" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ result = (int)cvGrabFrame(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvRetrieveFrame__Deprecated (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ int arg2 = (int) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ IplImage *result = 0 ;
+
+ if (!SWIG_check_num_args("cvRetrieveFrame__Deprecated",args.length(),2,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvRetrieveFrame__Deprecated" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ if (1<args.length()) {
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvRetrieveFrame__Deprecated" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ }
+ {
+ try {
+ result = (IplImage *)cvRetrieveFrame(arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ {
+ SWIG_exception( SWIG_TypeError, "IplImage * return type is deprecated. Please file a bug report at www.sourceforge.net/opencvlibrary if you see this error message.");
+ SWIG_fail;
+ }
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvQueryFrame__Deprecated (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ IplImage *result = 0 ;
+
+ if (!SWIG_check_num_args("cvQueryFrame__Deprecated",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvQueryFrame__Deprecated" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ result = (IplImage *)cvQueryFrame(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ {
+ SWIG_exception( SWIG_TypeError, "IplImage * return type is deprecated. Please file a bug report at www.sourceforge.net/opencvlibrary if you see this error message.");
+ SWIG_fail;
+ }
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvReleaseCapture (const octave_value_list& args, int nargout) {
+ CvCapture **arg1 = (CvCapture **) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvReleaseCapture",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvReleaseCapture" "', argument " "1"" of type '" "CvCapture **""'");
+ }
+ arg1 = (CvCapture **)(argp1);
+ {
+ try {
+ cvReleaseCapture(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGetCaptureProperty (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ int arg2 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ double result;
+
+ if (!SWIG_check_num_args("cvGetCaptureProperty",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGetCaptureProperty" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvGetCaptureProperty" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ {
+ try {
+ result = (double)cvGetCaptureProperty(arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_double((double)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvSetCaptureProperty (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ int arg2 ;
+ double arg3 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ double val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvSetCaptureProperty",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvSetCaptureProperty" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvSetCaptureProperty" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_double(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvSetCaptureProperty" "', argument " "3"" of type '" "double""'");
+ }
+ arg3 = (double)(val3);
+ {
+ try {
+ result = (int)cvSetCaptureProperty(arg1,arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvGetCaptureDomain (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvGetCaptureDomain",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvGetCaptureDomain" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ result = (int)cvGetCaptureDomain(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CV_FOURCC (const octave_value_list& args, int nargout) {
+ char arg1 ;
+ char arg2 ;
+ char arg3 ;
+ char arg4 ;
+ char val1 ;
+ int ecode1 = 0 ;
+ char val2 ;
+ int ecode2 = 0 ;
+ char val3 ;
+ int ecode3 = 0 ;
+ char val4 ;
+ int ecode4 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("CV_FOURCC",args.length(),4,4,0)) {
+ SWIG_fail;
+ }
+ ecode1 = SWIG_AsVal_char(args(0), &val1);
+ if (!SWIG_IsOK(ecode1)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "CV_FOURCC" "', argument " "1"" of type '" "char""'");
+ }
+ arg1 = (char)(val1);
+ ecode2 = SWIG_AsVal_char(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CV_FOURCC" "', argument " "2"" of type '" "char""'");
+ }
+ arg2 = (char)(val2);
+ ecode3 = SWIG_AsVal_char(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CV_FOURCC" "', argument " "3"" of type '" "char""'");
+ }
+ arg3 = (char)(val3);
+ ecode4 = SWIG_AsVal_char(args(3), &val4);
+ if (!SWIG_IsOK(ecode4)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CV_FOURCC" "', argument " "4"" of type '" "char""'");
+ }
+ arg4 = (char)(val4);
+ {
+ try {
+ result = (int)CV_FOURCC(arg1,arg2,arg3,arg4);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvCreateVideoWriter (const octave_value_list& args, int nargout) {
+ char *arg1 = (char *) 0 ;
+ int arg2 ;
+ double arg3 ;
+ CvSize arg4 ;
+ int arg5 = (int) 1 ;
+ int res1 ;
+ char *buf1 = 0 ;
+ int alloc1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ double val3 ;
+ int ecode3 = 0 ;
+ void *argp4 ;
+ int res4 = 0 ;
+ int val5 ;
+ int ecode5 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvVideoWriter *result = 0 ;
+
+ if (!SWIG_check_num_args("cvCreateVideoWriter",args.length(),5,4,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_AsCharPtrAndSize(args(0), &buf1, NULL, &alloc1);
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvCreateVideoWriter" "', argument " "1"" of type '" "char const *""'");
+ }
+ arg1 = (char *)(buf1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "cvCreateVideoWriter" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_double(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "cvCreateVideoWriter" "', argument " "3"" of type '" "double""'");
+ }
+ arg3 = (double)(val3);
+ {
+ res4 = SWIG_ConvertPtr(args(3), &argp4, SWIGTYPE_p_CvSize, 0 );
+ if (!SWIG_IsOK(res4)) {
+ SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "cvCreateVideoWriter" "', argument " "4"" of type '" "CvSize""'");
+ }
+ if (!argp4) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "cvCreateVideoWriter" "', argument " "4"" of type '" "CvSize""'");
+ } else {
+ arg4 = *((CvSize *)(argp4));
+ }
+ }
+ if (4<args.length()) {
+ ecode5 = SWIG_AsVal_int(args(4), &val5);
+ if (!SWIG_IsOK(ecode5)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "cvCreateVideoWriter" "', argument " "5"" of type '" "int""'");
+ }
+ arg5 = (int)(val5);
+ }
+ {
+ try {
+ result = (CvVideoWriter *)cvCreateVideoWriter((char const *)arg1,arg2,arg3,arg4,arg5);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvVideoWriter, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvWriteFrame (const octave_value_list& args, int nargout) {
+ CvVideoWriter *arg1 = (CvVideoWriter *) 0 ;
+ IplImage *arg2 = (IplImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ IplImage header2 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("cvWriteFrame",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvVideoWriter, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvWriteFrame" "', argument " "1"" of type '" "CvVideoWriter *""'");
+ }
+ arg1 = (CvVideoWriter *)(argp1);
+ {
+ void * vptr;
+ int res = SWIG_ConvertPtr(args(1), (&vptr), SWIGTYPE_p_CvMat, 0);
+ if ( res == -1 ){
+ SWIG_exception( SWIG_TypeError, "%%typemap(in) IplImage * : could not convert to CvMat");
+ SWIG_fail;
+ }
+ arg2 = cvGetImage((CvMat *)vptr, &header2);
+ }
+ {
+ try {
+ result = (int)cvWriteFrame(arg1,(_IplImage const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cvReleaseVideoWriter (const octave_value_list& args, int nargout) {
+ CvVideoWriter **arg1 = (CvVideoWriter **) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("cvReleaseVideoWriter",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_p_CvVideoWriter, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "cvReleaseVideoWriter" "', argument " "1"" of type '" "CvVideoWriter **""'");
+ }
+ arg1 = (CvVideoWriter **)(argp1);
+ {
+ try {
+ cvReleaseVideoWriter(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_new_CvvImage (const octave_value_list& args, int nargout) {
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvvImage *result = 0 ;
+
+ if (!SWIG_check_num_args("new_CvvImage",args.length(),0,0,0)) {
+ SWIG_fail;
+ }
+ {
+ try {
+ result = (CvvImage *)new CvvImage();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvvImage, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_delete_CvvImage (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("delete_CvvImage",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, SWIG_POINTER_DISOWN | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CvvImage" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ delete arg1;
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Create__SWIG_0 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ int arg2 ;
+ int arg3 ;
+ int arg4 ;
+ int arg5 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ int val4 ;
+ int ecode4 = 0 ;
+ int val5 ;
+ int ecode5 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_Create",args.length(),5,5,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Create" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CvvImage_Create" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_Create" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ ecode4 = SWIG_AsVal_int(args(3), &val4);
+ if (!SWIG_IsOK(ecode4)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CvvImage_Create" "', argument " "4"" of type '" "int""'");
+ }
+ arg4 = (int)(val4);
+ ecode5 = SWIG_AsVal_int(args(4), &val5);
+ if (!SWIG_IsOK(ecode5)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "CvvImage_Create" "', argument " "5"" of type '" "int""'");
+ }
+ arg5 = (int)(val5);
+ {
+ try {
+ result = (bool)(arg1)->Create(arg2,arg3,arg4,arg5);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Create__SWIG_1 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ int arg2 ;
+ int arg3 ;
+ int arg4 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ int val4 ;
+ int ecode4 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_Create",args.length(),4,4,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Create" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CvvImage_Create" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_Create" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ ecode4 = SWIG_AsVal_int(args(3), &val4);
+ if (!SWIG_IsOK(ecode4)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "CvvImage_Create" "', argument " "4"" of type '" "int""'");
+ }
+ arg4 = (int)(val4);
+ {
+ try {
+ result = (bool)(arg1)->Create(arg2,arg3,arg4);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Create (const octave_value_list& args, int nargout) {
+ int argc = args.length();
+ octave_value_ref argv[5]={
+ octave_value_ref(args,0),octave_value_ref(args,1),octave_value_ref(args,2),octave_value_ref(args,3),octave_value_ref(args,4)
+ };
+
+ if (argc == 4) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[1], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[2], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[3], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_CvvImage_Create__SWIG_1(args, nargout);
+ }
+ }
+ }
+ }
+ }
+ if (argc == 5) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[1], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[2], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[3], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[4], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_CvvImage_Create__SWIG_0(args, nargout);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ error("No matching function for overload");
+ return octave_value_list();
+}
+
+
+static octave_value_list _wrap_CvvImage_Load__SWIG_0 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int arg3 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_Load",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Load" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_Load" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_Load" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ result = (bool)(arg1)->Load((char const *)arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Load__SWIG_1 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ char *arg2 = (char *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_Load",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Load" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_Load" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ try {
+ result = (bool)(arg1)->Load((char const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Load (const octave_value_list& args, int nargout) {
+ int argc = args.length();
+ octave_value_ref argv[3]={
+ octave_value_ref(args,0),octave_value_ref(args,1),octave_value_ref(args,2)
+ };
+
+ if (argc == 2) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ int res = SWIG_AsCharPtrAndSize(argv[1], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ return _wrap_CvvImage_Load__SWIG_1(args, nargout);
+ }
+ }
+ }
+ if (argc == 3) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ int res = SWIG_AsCharPtrAndSize(argv[1], 0, NULL, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[2], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_CvvImage_Load__SWIG_0(args, nargout);
+ }
+ }
+ }
+ }
+
+ error("No matching function for overload");
+ return octave_value_list();
+}
+
+
+static octave_value_list _wrap_CvvImage_LoadRect (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ char *arg2 = (char *) 0 ;
+ int arg3 ;
+ CvRect arg4 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ void *argp4 ;
+ int res4 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_LoadRect",args.length(),4,4,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_LoadRect" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_LoadRect" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_LoadRect" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ res4 = SWIG_ConvertPtr(args(3), &argp4, SWIGTYPE_p_CvRect, 0 );
+ if (!SWIG_IsOK(res4)) {
+ SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "CvvImage_LoadRect" "', argument " "4"" of type '" "CvRect""'");
+ }
+ if (!argp4) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvvImage_LoadRect" "', argument " "4"" of type '" "CvRect""'");
+ } else {
+ arg4 = *((CvRect *)(argp4));
+ }
+ }
+ {
+ try {
+ result = (bool)(arg1)->LoadRect((char const *)arg2,arg3,arg4);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Save (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ char *arg2 = (char *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ bool result;
+
+ if (!SWIG_check_num_args("CvvImage_Save",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Save" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_Save" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ try {
+ result = (bool)(arg1)->Save((char const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_bool((bool)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_CopyOf__SWIG_0 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ CvvImage *arg2 = 0 ;
+ int arg3 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 = 0 ;
+ int res2 = 0 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_CopyOf",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_CopyOf" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvvImage, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_CopyOf" "', argument " "2"" of type '" "CvvImage &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvvImage_CopyOf" "', argument " "2"" of type '" "CvvImage &""'");
+ }
+ arg2 = (CvvImage *)(argp2);
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_CopyOf" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ (arg1)->CopyOf(*arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_CopyOf__SWIG_1 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ CvvImage *arg2 = 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ void *argp2 = 0 ;
+ int res2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_CopyOf",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_CopyOf" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_ConvertPtr(args(1), &argp2, SWIGTYPE_p_CvvImage, 0 );
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_CopyOf" "', argument " "2"" of type '" "CvvImage &""'");
+ }
+ if (!argp2) {
+ SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "CvvImage_CopyOf" "', argument " "2"" of type '" "CvvImage &""'");
+ }
+ arg2 = (CvvImage *)(argp2);
+ {
+ try {
+ (arg1)->CopyOf(*arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_CopyOf__SWIG_2 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ IplImage *arg2 = (IplImage *) 0 ;
+ int arg3 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ IplImage header2 ;
+ int val3 ;
+ int ecode3 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_CopyOf",args.length(),3,3,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_CopyOf" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ void * vptr;
+ int res = SWIG_ConvertPtr(args(1), (&vptr), SWIGTYPE_p_CvMat, 0);
+ if ( res == -1 ){
+ SWIG_exception( SWIG_TypeError, "%%typemap(in) IplImage * : could not convert to CvMat");
+ SWIG_fail;
+ }
+ arg2 = cvGetImage((CvMat *)vptr, &header2);
+ }
+ ecode3 = SWIG_AsVal_int(args(2), &val3);
+ if (!SWIG_IsOK(ecode3)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "CvvImage_CopyOf" "', argument " "3"" of type '" "int""'");
+ }
+ arg3 = (int)(val3);
+ {
+ try {
+ (arg1)->CopyOf(arg2,arg3);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_CopyOf__SWIG_3 (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ IplImage *arg2 = (IplImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ IplImage header2 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_CopyOf",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_CopyOf" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ void * vptr;
+ int res = SWIG_ConvertPtr(args(1), (&vptr), SWIGTYPE_p_CvMat, 0);
+ if ( res == -1 ){
+ SWIG_exception( SWIG_TypeError, "%%typemap(in) IplImage * : could not convert to CvMat");
+ SWIG_fail;
+ }
+ arg2 = cvGetImage((CvMat *)vptr, &header2);
+ }
+ {
+ try {
+ (arg1)->CopyOf(arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_CopyOf (const octave_value_list& args, int nargout) {
+ int argc = args.length();
+ octave_value_ref argv[3]={
+ octave_value_ref(args,0),octave_value_ref(args,1),octave_value_ref(args,2)
+ };
+
+ if (argc == 2) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ return _wrap_CvvImage_CopyOf__SWIG_1(args, nargout);
+ }
+ }
+ }
+ if (argc == 2) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p__IplImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ return _wrap_CvvImage_CopyOf__SWIG_3(args, nargout);
+ }
+ }
+ }
+ if (argc == 3) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p__IplImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[2], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_CvvImage_CopyOf__SWIG_2(args, nargout);
+ }
+ }
+ }
+ }
+ if (argc == 3) {
+ int _v;
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ void *vptr = 0;
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_CvvImage, 0);
+ _v = SWIG_CheckState(res);
+ if (_v) {
+ {
+ int res = SWIG_AsVal_int(argv[2], NULL);
+ _v = SWIG_CheckState(res);
+ }
+ if (_v) {
+ return _wrap_CvvImage_CopyOf__SWIG_0(args, nargout);
+ }
+ }
+ }
+ }
+
+ error("No matching function for overload");
+ return octave_value_list();
+}
+
+
+static octave_value_list _wrap_CvvImage_GetImage (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ IplImage *result = 0 ;
+
+ if (!SWIG_check_num_args("CvvImage_GetImage",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_GetImage" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ result = (IplImage *)(arg1)->GetImage();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ {
+ SWIG_exception( SWIG_TypeError, "IplImage * return type is deprecated. Please file a bug report at www.sourceforge.net/opencvlibrary if you see this error message.");
+ SWIG_fail;
+ }
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Destroy (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_Destroy",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Destroy" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ (arg1)->Destroy();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Width (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("CvvImage_Width",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Width" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ result = (int)(arg1)->Width();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Height (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("CvvImage_Height",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Height" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ result = (int)(arg1)->Height();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Bpp (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ int result;
+
+ if (!SWIG_check_num_args("CvvImage_Bpp",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Bpp" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ {
+ try {
+ result = (int)(arg1)->Bpp();
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_From_int((int)(result));
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Fill (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ int arg2 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_Fill",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Fill" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "CvvImage_Fill" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ {
+ try {
+ (arg1)->Fill(arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_CvvImage_Show (const octave_value_list& args, int nargout) {
+ CvvImage *arg1 = (CvvImage *) 0 ;
+ char *arg2 = (char *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ int res2 ;
+ char *buf2 = 0 ;
+ int alloc2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("CvvImage_Show",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvvImage, 0 | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "CvvImage_Show" "', argument " "1"" of type '" "CvvImage *""'");
+ }
+ arg1 = (CvvImage *)(argp1);
+ res2 = SWIG_AsCharPtrAndSize(args(1), &buf2, NULL, &alloc2);
+ if (!SWIG_IsOK(res2)) {
+ SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "CvvImage_Show" "', argument " "2"" of type '" "char const *""'");
+ }
+ arg2 = (char *)(buf2);
+ {
+ try {
+ (arg1)->Show((char const *)arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ if (alloc2 == SWIG_NEWOBJ) delete[] buf2;
+fail:
+ return _out;
+}
+
+
+static swig_octave_member swig_CvvImage_members[] = {
+{"Create",_wrap_CvvImage_Create,0,0,0,0},
+{"Load",_wrap_CvvImage_Load,0,0,0,0},
+{"LoadRect",_wrap_CvvImage_LoadRect,0,0,0,0},
+{"Save",_wrap_CvvImage_Save,0,0,0,0},
+{"CopyOf",_wrap_CvvImage_CopyOf,0,0,0,0},
+{"GetImage",_wrap_CvvImage_GetImage,0,0,0,0},
+{"Destroy",_wrap_CvvImage_Destroy,0,0,0,0},
+{"Width",_wrap_CvvImage_Width,0,0,0,0},
+{"Height",_wrap_CvvImage_Height,0,0,0,0},
+{"Bpp",_wrap_CvvImage_Bpp,0,0,0,0},
+{"Fill",_wrap_CvvImage_Fill,0,0,0,0},
+{"Show",_wrap_CvvImage_Show,0,0,0,0},
+{0,0,0,0}
+};
+static const char *swig_CvvImage_base_names[] = {0};
+static const swig_type_info *swig_CvvImage_base[] = {0};
+static swig_octave_class _wrap_class_CvvImage = {"CvvImage", &SWIGTYPE_p_CvvImage,0,_wrap_new_CvvImage,0,_wrap_delete_CvvImage,swig_CvvImage_members,swig_CvvImage_base_names,swig_CvvImage_base };
+
+static octave_value_list _wrap_delete_CvCapture (const octave_value_list& args, int nargout) {
+ CvCapture *arg1 = (CvCapture *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("delete_CvCapture",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvCapture, SWIG_POINTER_DISOWN | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CvCapture" "', argument " "1"" of type '" "CvCapture *""'");
+ }
+ arg1 = (CvCapture *)(argp1);
+ {
+ try {
+ delete_CvCapture(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static swig_octave_member swig_CvCapture_members[] = {
+{0,0,0,0}
+};
+static const char *swig_CvCapture_base_names[] = {0};
+static const swig_type_info *swig_CvCapture_base[] = {0};
+static swig_octave_class _wrap_class_CvCapture = {"CvCapture", &SWIGTYPE_p_CvCapture,0,0,0,_wrap_delete_CvCapture,swig_CvCapture_members,swig_CvCapture_base_names,swig_CvCapture_base };
+
+static octave_value_list _wrap_delete_CvVideoWriter (const octave_value_list& args, int nargout) {
+ CvVideoWriter *arg1 = (CvVideoWriter *) 0 ;
+ void *argp1 = 0 ;
+ int res1 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+
+ if (!SWIG_check_num_args("delete_CvVideoWriter",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ res1 = SWIG_ConvertPtr(args(0), &argp1,SWIGTYPE_p_CvVideoWriter, SWIG_POINTER_DISOWN | 0 );
+ if (!SWIG_IsOK(res1)) {
+ SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_CvVideoWriter" "', argument " "1"" of type '" "CvVideoWriter *""'");
+ }
+ arg1 = (CvVideoWriter *)(argp1);
+ {
+ try {
+ delete_CvVideoWriter(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = octave_value();
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static swig_octave_member swig_CvVideoWriter_members[] = {
+{0,0,0,0}
+};
+static const char *swig_CvVideoWriter_base_names[] = {0};
+static const swig_type_info *swig_CvVideoWriter_base[] = {0};
+static swig_octave_class _wrap_class_CvVideoWriter = {"CvVideoWriter", &SWIGTYPE_p_CvVideoWriter,0,0,0,_wrap_delete_CvVideoWriter,swig_CvVideoWriter_members,swig_CvVideoWriter_base_names,swig_CvVideoWriter_base };
+
+static octave_value_list _wrap_cv2mat (const octave_value_list& args, int nargout) {
+ CvArr *arg1 = (CvArr *) 0 ;
+ bool freearg1 = false ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ octave_value result;
+
+ if (!SWIG_check_num_args("cv2mat",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ {
+ arg1 = OctObject_to_CvArr(args(0), &freearg1);
+ }
+ {
+ try {
+ result = cv2mat(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = result;
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ {
+ if(arg1!=NULL && freearg1){
+ cvReleaseData( arg1 );
+ cvFree(&(arg1));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_mat2cv (const octave_value_list& args, int nargout) {
+ octave_value *arg1 = 0 ;
+ int arg2 ;
+ octave_value temp1 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ octave_value result;
+
+ if (!SWIG_check_num_args("mat2cv",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ temp1 = (octave_value)(args(0));
+ arg1 = &temp1;
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "mat2cv" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ {
+ try {
+ result = mat2cv((octave_value const &)*arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = result;
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_cv2im (const octave_value_list& args, int nargout) {
+ CvArr *arg1 = (CvArr *) 0 ;
+ bool freearg1 = false ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ octave_value result;
+
+ if (!SWIG_check_num_args("cv2im",args.length(),1,1,0)) {
+ SWIG_fail;
+ }
+ {
+ arg1 = OctObject_to_CvArr(args(0), &freearg1);
+ }
+ {
+ try {
+ result = cv2im(arg1);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = result;
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+ {
+ if(arg1!=NULL && freearg1){
+ cvReleaseData( arg1 );
+ cvFree(&(arg1));
+ }
+ }
+fail:
+ return _out;
+}
+
+
+static octave_value_list _wrap_im2cv (const octave_value_list& args, int nargout) {
+ octave_value *arg1 = 0 ;
+ int arg2 ;
+ octave_value temp1 ;
+ int val2 ;
+ int ecode2 = 0 ;
+ octave_value_list _out;
+ octave_value_list *_outp=&_out;
+ octave_value _outv;
+ CvMat *result = 0 ;
+
+ if (!SWIG_check_num_args("im2cv",args.length(),2,2,0)) {
+ SWIG_fail;
+ }
+ temp1 = (octave_value)(args(0));
+ arg1 = &temp1;
+ ecode2 = SWIG_AsVal_int(args(1), &val2);
+ if (!SWIG_IsOK(ecode2)) {
+ SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "im2cv" "', argument " "2"" of type '" "int""'");
+ }
+ arg2 = (int)(val2);
+ {
+ try {
+ result = (CvMat *)im2cv((octave_value const &)*arg1,arg2);
+ }
+ catch (...)
+ {
+ SWIG_fail;
+ }
+ }
+ _outv = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_CvMat, 1 | 0 );
+ if (_outv.is_defined()) _outp = SWIG_Octave_AppendOutput(_outp, _outv);
+fail:
+ return _out;
+}
+
+
+
+static const struct swig_octave_member swig_globals[] = {
+{"new_CvRNG_Wrapper",_wrap_new_CvRNG_Wrapper,0,0,2,0},
+{"CvRNG_Wrapper_ptr",_wrap_CvRNG_Wrapper_ptr,0,0,2,0},
+{"CvRNG_Wrapper_ref",_wrap_CvRNG_Wrapper_ref,0,0,2,0},
+{"CvRNG_Wrapper___eq__",_wrap_CvRNG_Wrapper___eq__,0,0,2,0},
+{"CvRNG_Wrapper___ne__",_wrap_CvRNG_Wrapper___ne__,0,0,2,0},
+{"delete_CvRNG_Wrapper",_wrap_delete_CvRNG_Wrapper,0,0,2,_wrap_delete_CvRNG_Wrapper_texinfo},
+{"new_CvSubdiv2DEdge_Wrapper",_wrap_new_CvSubdiv2DEdge_Wrapper,0,0,2,0},
+{"CvSubdiv2DEdge_Wrapper_ptr",_wrap_CvSubdiv2DEdge_Wrapper_ptr,0,0,2,0},
+{"CvSubdiv2DEdge_Wrapper_ref",_wrap_CvSubdiv2DEdge_Wrapper_ref,0,0,2,0},
+{"CvSubdiv2DEdge_Wrapper___eq__",_wrap_CvSubdiv2DEdge_Wrapper___eq__,0,0,2,0},
+{"CvSubdiv2DEdge_Wrapper___ne__",_wrap_CvSubdiv2DEdge_Wrapper___ne__,0,0,2,0},
+{"delete_CvSubdiv2DEdge_Wrapper",_wrap_delete_CvSubdiv2DEdge_Wrapper,0,0,2,_wrap_delete_CvSubdiv2DEdge_Wrapper_texinfo},
+{"cvSetMouseCallback",_wrap_cvSetMouseCallback,0,0,2,0},
+{"cvLoadImage",_wrap_cvLoadImage,0,0,2,_wrap_cvLoadImage_texinfo},
+{"cvRetrieveFrame",_wrap_cvRetrieveFrame,0,0,2,_wrap_cvRetrieveFrame_texinfo},
+{"cvQueryFrame",_wrap_cvQueryFrame,0,0,2,_wrap_cvQueryFrame_texinfo},
+{"cvInitSystem",_wrap_cvInitSystem,0,0,2,_wrap_cvInitSystem_texinfo},
+{"cvStartWindowThread",_wrap_cvStartWindowThread,0,0,2,_wrap_cvStartWindowThread_texinfo},
+{"cvNamedWindow",_wrap_cvNamedWindow,0,0,2,_wrap_cvNamedWindow_texinfo},
+{"cvShowImage",_wrap_cvShowImage,0,0,2,_wrap_cvShowImage_texinfo},
+{"cvResizeWindow",_wrap_cvResizeWindow,0,0,2,_wrap_cvResizeWindow_texinfo},
+{"cvMoveWindow",_wrap_cvMoveWindow,0,0,2,_wrap_cvMoveWindow_texinfo},
+{"cvDestroyWindow",_wrap_cvDestroyWindow,0,0,2,_wrap_cvDestroyWindow_texinfo},
+{"cvDestroyAllWindows",_wrap_cvDestroyAllWindows,0,0,2,_wrap_cvDestroyAllWindows_texinfo},
+{"cvGetWindowHandle",_wrap_cvGetWindowHandle,0,0,2,_wrap_cvGetWindowHandle_texinfo},
+{"cvGetWindowName",_wrap_cvGetWindowName,0,0,2,_wrap_cvGetWindowName_texinfo},
+{"cvCreateTrackbar",_wrap_cvCreateTrackbar,0,0,2,_wrap_cvCreateTrackbar_texinfo},
+{"cvCreateTrackbar2",_wrap_cvCreateTrackbar2,0,0,2,_wrap_cvCreateTrackbar2_texinfo},
+{"cvGetTrackbarPos",_wrap_cvGetTrackbarPos,0,0,2,_wrap_cvGetTrackbarPos_texinfo},
+{"cvSetTrackbarPos",_wrap_cvSetTrackbarPos,0,0,2,_wrap_cvSetTrackbarPos_texinfo},
+{"cvSetMouseCallbackOld",_wrap_cvSetMouseCallbackOld,0,0,2,_wrap_cvSetMouseCallbackOld_texinfo},
+{"cvLoadImageM",_wrap_cvLoadImageM,0,0,2,_wrap_cvLoadImageM_texinfo},
+{"cvSaveImage",_wrap_cvSaveImage,0,0,2,_wrap_cvSaveImage_texinfo},
+{"cvDecodeImage",_wrap_cvDecodeImage,0,0,2,_wrap_cvDecodeImage_texinfo},
+{"cvDecodeImageM",_wrap_cvDecodeImageM,0,0,2,_wrap_cvDecodeImageM_texinfo},
+{"cvEncodeImage",_wrap_cvEncodeImage,0,0,2,_wrap_cvEncodeImage_texinfo},
+{"cvConvertImage",_wrap_cvConvertImage,0,0,2,_wrap_cvConvertImage_texinfo},
+{"cvWaitKey",_wrap_cvWaitKey,0,0,2,_wrap_cvWaitKey_texinfo},
+{"cvCreateFileCapture",_wrap_cvCreateFileCapture,0,0,2,_wrap_cvCreateFileCapture_texinfo},
+{"cvCreateCameraCapture",_wrap_cvCreateCameraCapture,0,0,2,_wrap_cvCreateCameraCapture_texinfo},
+{"cvGrabFrame",_wrap_cvGrabFrame,0,0,2,_wrap_cvGrabFrame_texinfo},
+{"cvRetrieveFrame__Deprecated",_wrap_cvRetrieveFrame__Deprecated,0,0,2,_wrap_cvRetrieveFrame__Deprecated_texinfo},
+{"cvQueryFrame__Deprecated",_wrap_cvQueryFrame__Deprecated,0,0,2,_wrap_cvQueryFrame__Deprecated_texinfo},
+{"cvReleaseCapture",_wrap_cvReleaseCapture,0,0,2,_wrap_cvReleaseCapture_texinfo},
+{"cvGetCaptureProperty",_wrap_cvGetCaptureProperty,0,0,2,_wrap_cvGetCaptureProperty_texinfo},
+{"cvSetCaptureProperty",_wrap_cvSetCaptureProperty,0,0,2,_wrap_cvSetCaptureProperty_texinfo},
+{"cvGetCaptureDomain",_wrap_cvGetCaptureDomain,0,0,2,_wrap_cvGetCaptureDomain_texinfo},
+{"CV_FOURCC",_wrap_CV_FOURCC,0,0,2,_wrap_CV_FOURCC_texinfo},
+{"cvCreateVideoWriter",_wrap_cvCreateVideoWriter,0,0,2,_wrap_cvCreateVideoWriter_texinfo},
+{"cvWriteFrame",_wrap_cvWriteFrame,0,0,2,_wrap_cvWriteFrame_texinfo},
+{"cvReleaseVideoWriter",_wrap_cvReleaseVideoWriter,0,0,2,_wrap_cvReleaseVideoWriter_texinfo},
+{"new_CvvImage",_wrap_new_CvvImage,0,0,2,_wrap_new_CvvImage_texinfo},
+{"delete_CvvImage",_wrap_delete_CvvImage,0,0,2,_wrap_delete_CvvImage_texinfo},
+{"CvvImage_Create",_wrap_CvvImage_Create,0,0,2,_wrap_CvvImage_Create_texinfo},
+{"CvvImage_Load",_wrap_CvvImage_Load,0,0,2,_wrap_CvvImage_Load_texinfo},
+{"CvvImage_LoadRect",_wrap_CvvImage_LoadRect,0,0,2,_wrap_CvvImage_LoadRect_texinfo},
+{"CvvImage_Save",_wrap_CvvImage_Save,0,0,2,_wrap_CvvImage_Save_texinfo},
+{"CvvImage_CopyOf",_wrap_CvvImage_CopyOf,0,0,2,_wrap_CvvImage_CopyOf_texinfo},
+{"CvvImage_GetImage",_wrap_CvvImage_GetImage,0,0,2,_wrap_CvvImage_GetImage_texinfo},
+{"CvvImage_Destroy",_wrap_CvvImage_Destroy,0,0,2,_wrap_CvvImage_Destroy_texinfo},
+{"CvvImage_Width",_wrap_CvvImage_Width,0,0,2,_wrap_CvvImage_Width_texinfo},
+{"CvvImage_Height",_wrap_CvvImage_Height,0,0,2,_wrap_CvvImage_Height_texinfo},
+{"CvvImage_Bpp",_wrap_CvvImage_Bpp,0,0,2,_wrap_CvvImage_Bpp_texinfo},
+{"CvvImage_Fill",_wrap_CvvImage_Fill,0,0,2,_wrap_CvvImage_Fill_texinfo},
+{"CvvImage_Show",_wrap_CvvImage_Show,0,0,2,_wrap_CvvImage_Show_texinfo},
+{"delete_CvCapture",_wrap_delete_CvCapture,0,0,2,_wrap_delete_CvCapture_texinfo},
+{"delete_CvVideoWriter",_wrap_delete_CvVideoWriter,0,0,2,_wrap_delete_CvVideoWriter_texinfo},
+{"cv2mat",_wrap_cv2mat,0,0,2,_wrap_cv2mat_texinfo},
+{"mat2cv",_wrap_mat2cv,0,0,2,_wrap_mat2cv_texinfo},
+{"cv2im",_wrap_cv2im,0,0,2,_wrap_cv2im_texinfo},
+{"im2cv",_wrap_im2cv,0,0,2,_wrap_im2cv_texinfo},
+{0,0,0,0,0}
+};
+
+/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
+
+static void *_p_CvTypedSeqT_CvTupleT_CvPoint_2_t_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvTuple< CvPoint,2 > > *) x));
+}
+static void *_p_CvTypedSeqT_CvTupleT_float_2_t_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvTuple< float,2 > > *) x));
+}
+static void *_p_CvTypedSeqT_CvConnectedComp_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvConnectedComp > *) x));
+}
+static void *_p_CvTypedSeqT_CvRect_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvRect > *) x));
+}
+static void *_p_CvTypedSeqT_CvPoint_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvPoint > *) x));
+}
+static void *_p_CvTypedSeqT_CvTupleT_float_3_t_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvTuple< float,3 > > *) x));
+}
+static void *_p_CvTypedSeqT_CvSeq_p_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvSeq * > *) x));
+}
+static void *_p_CvTypedSeqT_CvQuadEdge2D_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvQuadEdge2D > *) x));
+}
+static void *_p_CvTypedSeqT_CvPoint2D32f_tTo_p_CvSeq(void *x, int *SWIGUNUSEDPARM(newmemory)) {
+ return (void *)((CvSeq *) ((CvTypedSeq< CvPoint2D32f > *) x));
+}
+static swig_type_info _swigt__p_Cv32suf = {"_p_Cv32suf", "Cv32suf *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_Cv64suf = {"_p_Cv64suf", "Cv64suf *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvAttrList = {"_p_CvAttrList", "CvAttrList *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvAvgComp = {"_p_CvAvgComp", "CvAvgComp *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvBox2D = {"_p_CvBox2D", "CvBox2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvCapture = {"_p_CvCapture", "CvCapture *", 0, 0, (void*)&_wrap_class_CvCapture, 0};
+static swig_type_info _swigt__p_CvChain = {"_p_CvChain", "CvChain *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvChainPtReader = {"_p_CvChainPtReader", "CvChainPtReader *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvConDensation = {"_p_CvConDensation", "CvConDensation *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvConnectedComp = {"_p_CvConnectedComp", "CvConnectedComp *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvContour = {"_p_CvContour", "CvPoint2DSeq *|CvContour *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvContourTree = {"_p_CvContourTree", "CvContourTree *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvConvexityDefect = {"_p_CvConvexityDefect", "CvConvexityDefect *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvFileNode = {"_p_CvFileNode", "CvFileNode *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvFileStorage = {"_p_CvFileStorage", "CvFileStorage *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvFilter = {"_p_CvFilter", "enum CvFilter *|CvFilter *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvFont = {"_p_CvFont", "CvFont *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGenericHash = {"_p_CvGenericHash", "CvGenericHash *|CvFileNodeHash *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGraph = {"_p_CvGraph", "CvGraph *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGraphEdge = {"_p_CvGraphEdge", "CvGraphEdge *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGraphScanner = {"_p_CvGraphScanner", "CvGraphScanner *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGraphVtx = {"_p_CvGraphVtx", "CvGraphVtx *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvGraphVtx2D = {"_p_CvGraphVtx2D", "CvGraphVtx2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHaarClassifier = {"_p_CvHaarClassifier", "CvHaarClassifier *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHaarClassifierCascade = {"_p_CvHaarClassifierCascade", "CvHaarClassifierCascade *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHaarFeature = {"_p_CvHaarFeature", "CvHaarFeature *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHaarStageClassifier = {"_p_CvHaarStageClassifier", "CvHaarStageClassifier *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHidHaarClassifierCascade = {"_p_CvHidHaarClassifierCascade", "CvHidHaarClassifierCascade *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHistogram = {"_p_CvHistogram", "CvHistogram *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvHuMoments = {"_p_CvHuMoments", "CvHuMoments *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvKalman = {"_p_CvKalman", "CvKalman *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvLineIterator = {"_p_CvLineIterator", "CvLineIterator *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMSERParams = {"_p_CvMSERParams", "CvMSERParams *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMat = {"_p_CvMat", "CvMat *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMatND = {"_p_CvMatND", "CvMatND *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMatrix3 = {"_p_CvMatrix3", "CvMatrix3 *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMemBlock = {"_p_CvMemBlock", "CvMemBlock *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMemStorage = {"_p_CvMemStorage", "CvMemStorage *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMemStoragePos = {"_p_CvMemStoragePos", "CvMemStoragePos *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvModuleInfo = {"_p_CvModuleInfo", "CvModuleInfo *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvMoments = {"_p_CvMoments", "CvMoments *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvNArrayIterator = {"_p_CvNArrayIterator", "CvNArrayIterator *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvNextEdgeType = {"_p_CvNextEdgeType", "enum CvNextEdgeType *|CvNextEdgeType *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPOSITObject = {"_p_CvPOSITObject", "CvPOSITObject *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPluginFuncInfo = {"_p_CvPluginFuncInfo", "CvPluginFuncInfo *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPoint = {"_p_CvPoint", "CvPoint *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPoint2D32f = {"_p_CvPoint2D32f", "CvPoint2D32f *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPoint2D64f = {"_p_CvPoint2D64f", "CvPoint2D64f *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPoint3D32f = {"_p_CvPoint3D32f", "CvPoint3D32f *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvPoint3D64f = {"_p_CvPoint3D64f", "CvPoint3D64f *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvQuadEdge2D = {"_p_CvQuadEdge2D", "CvQuadEdge2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvRNG_Wrapper = {"_p_CvRNG_Wrapper", "CvRNG_Wrapper *", 0, 0, (void*)&_wrap_class_CvRNG_Wrapper, 0};
+static swig_type_info _swigt__p_CvRect = {"_p_CvRect", "CvRect *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSURFParams = {"_p_CvSURFParams", "CvSURFParams *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSURFPoint = {"_p_CvSURFPoint", "CvSURFPoint *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvScalar = {"_p_CvScalar", "CvScalar *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSeq = {"_p_CvSeq", "CvSeq *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t = {"_p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvTupleT_float_2_t_t = {"_p_CvTypedSeqT_CvTupleT_float_2_t_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvRect_t = {"_p_CvTypedSeqT_CvRect_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvPoint_t = {"_p_CvTypedSeqT_CvPoint_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvQuadEdge2D_t = {"_p_CvTypedSeqT_CvQuadEdge2D_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvSeq_p_t = {"_p_CvTypedSeqT_CvSeq_p_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvPoint2D32f_t = {"_p_CvTypedSeqT_CvPoint2D32f_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvTupleT_float_3_t_t = {"_p_CvTypedSeqT_CvTupleT_float_3_t_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvTypedSeqT_CvConnectedComp_t = {"_p_CvTypedSeqT_CvConnectedComp_t", 0, 0, 0, 0, 0};
+static swig_type_info _swigt__p_CvSeqBlock = {"_p_CvSeqBlock", "CvSeqBlock *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSeqReader = {"_p_CvSeqReader", "CvSeqReader *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSeqWriter = {"_p_CvSeqWriter", "CvSeqWriter *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSet = {"_p_CvSet", "CvSet *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSetElem = {"_p_CvSetElem", "CvSetElem *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSize = {"_p_CvSize", "CvSize *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSize2D32f = {"_p_CvSize2D32f", "CvSize2D32f *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSlice = {"_p_CvSlice", "CvSlice *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSparseMat = {"_p_CvSparseMat", "CvSparseMat *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSparseMatIterator = {"_p_CvSparseMatIterator", "CvSparseMatIterator *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSparseNode = {"_p_CvSparseNode", "CvSparseNode *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvStarDetectorParams = {"_p_CvStarDetectorParams", "CvStarDetectorParams *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvStarKeypoint = {"_p_CvStarKeypoint", "CvStarKeypoint *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvStereoBMState = {"_p_CvStereoBMState", "CvStereoBMState *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvStereoGCState = {"_p_CvStereoGCState", "CvStereoGCState *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvString = {"_p_CvString", "CvString *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvStringHashNode = {"_p_CvStringHashNode", "CvStringHashNode *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSubdiv2D = {"_p_CvSubdiv2D", "CvSubdiv2D *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSubdiv2DEdge_Wrapper = {"_p_CvSubdiv2DEdge_Wrapper", "CvSubdiv2DEdge_Wrapper *", 0, 0, (void*)&_wrap_class_CvSubdiv2DEdge_Wrapper, 0};
+static swig_type_info _swigt__p_CvSubdiv2DPoint = {"_p_CvSubdiv2DPoint", "CvSubdiv2DPoint *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvSubdiv2DPointLocation = {"_p_CvSubdiv2DPointLocation", "enum CvSubdiv2DPointLocation *|CvSubdiv2DPointLocation *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvTermCriteria = {"_p_CvTermCriteria", "CvTermCriteria *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvTreeNodeIterator = {"_p_CvTreeNodeIterator", "CvTreeNodeIterator *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvTypeInfo = {"_p_CvTypeInfo", "CvTypeInfo *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_CvVideoWriter = {"_p_CvVideoWriter", "CvVideoWriter *", 0, 0, (void*)&_wrap_class_CvVideoWriter, 0};
+static swig_type_info _swigt__p_CvvImage = {"_p_CvvImage", "CvvImage *|CImage *", 0, 0, (void*)&_wrap_class_CvvImage, 0};
+static swig_type_info _swigt__p__IplConvKernel = {"_p__IplConvKernel", "_IplConvKernel *|IplConvKernel *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p__IplConvKernelFP = {"_p__IplConvKernelFP", "_IplConvKernelFP *|IplConvKernelFP *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p__IplImage = {"_p__IplImage", "_IplImage *|IplImage *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p__IplROI = {"_p__IplROI", "_IplROI *|IplROI *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p__IplTileInfo = {"_p__IplTileInfo", "_IplTileInfo *|IplTileInfo *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_allocator_type = {"_p_allocator_type", "allocator_type *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_difference_type = {"_p_difference_type", "difference_type *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_f_int__void = {"_p_f_int__void", "void (*)(int)|CvTrackbarCallback", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_f_int_int_int_int_p_void__void = {"_p_f_int_int_int_int_p_void__void", "void (*)(int,int,int,int,void *)|CvMouseCallback", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_f_int_p_void__void = {"_p_f_int_p_void__void", "CvTrackbarCallback2|void (*)(int,void *)", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int = {"_p_int", "CvHistType *|int *|CVStatus *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_int64_t = {"_p_int64_t", "int64_t *|int64 *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_octave_value = {"_p_octave_value", "octave_value *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_p_CvCapture = {"_p_p_CvCapture", "CvCapture **", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_p_CvVideoWriter = {"_p_p_CvVideoWriter", "CvVideoWriter **", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_p_char = {"_p_p_char", "char **", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_signed_char = {"_p_signed_char", "schar *|signed char *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_size_t = {"_p_size_t", "size_t *|CvSubdiv2DEdge *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_size_type = {"_p_size_type", "size_type *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_uint64_t = {"_p_uint64_t", "uint64_t *|uint64 *|CvRNG *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "uchar *|unsigned char *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_unsigned_short = {"_p_unsigned_short", "unsigned short *|ushort *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_value_type = {"_p_value_type", "value_type *", 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_void = {"_p_void", "CvArr *|void *", 0, 0, (void*)0, 0};
+
+static swig_type_info *swig_type_initial[] = {
+ &_swigt__p_Cv32suf,
+ &_swigt__p_Cv64suf,
+ &_swigt__p_CvAttrList,
+ &_swigt__p_CvAvgComp,
+ &_swigt__p_CvBox2D,
+ &_swigt__p_CvCapture,
+ &_swigt__p_CvChain,
+ &_swigt__p_CvChainPtReader,
+ &_swigt__p_CvConDensation,
+ &_swigt__p_CvConnectedComp,
+ &_swigt__p_CvContour,
+ &_swigt__p_CvContourTree,
+ &_swigt__p_CvConvexityDefect,
+ &_swigt__p_CvFileNode,
+ &_swigt__p_CvFileStorage,
+ &_swigt__p_CvFilter,
+ &_swigt__p_CvFont,
+ &_swigt__p_CvGenericHash,
+ &_swigt__p_CvGraph,
+ &_swigt__p_CvGraphEdge,
+ &_swigt__p_CvGraphScanner,
+ &_swigt__p_CvGraphVtx,
+ &_swigt__p_CvGraphVtx2D,
+ &_swigt__p_CvHaarClassifier,
+ &_swigt__p_CvHaarClassifierCascade,
+ &_swigt__p_CvHaarFeature,
+ &_swigt__p_CvHaarStageClassifier,
+ &_swigt__p_CvHidHaarClassifierCascade,
+ &_swigt__p_CvHistogram,
+ &_swigt__p_CvHuMoments,
+ &_swigt__p_CvKalman,
+ &_swigt__p_CvLineIterator,
+ &_swigt__p_CvMSERParams,
+ &_swigt__p_CvMat,
+ &_swigt__p_CvMatND,
+ &_swigt__p_CvMatrix3,
+ &_swigt__p_CvMemBlock,
+ &_swigt__p_CvMemStorage,
+ &_swigt__p_CvMemStoragePos,
+ &_swigt__p_CvModuleInfo,
+ &_swigt__p_CvMoments,
+ &_swigt__p_CvNArrayIterator,
+ &_swigt__p_CvNextEdgeType,
+ &_swigt__p_CvPOSITObject,
+ &_swigt__p_CvPluginFuncInfo,
+ &_swigt__p_CvPoint,
+ &_swigt__p_CvPoint2D32f,
+ &_swigt__p_CvPoint2D64f,
+ &_swigt__p_CvPoint3D32f,
+ &_swigt__p_CvPoint3D64f,
+ &_swigt__p_CvQuadEdge2D,
+ &_swigt__p_CvRNG_Wrapper,
+ &_swigt__p_CvRect,
+ &_swigt__p_CvSURFParams,
+ &_swigt__p_CvSURFPoint,
+ &_swigt__p_CvScalar,
+ &_swigt__p_CvSeq,
+ &_swigt__p_CvSeqBlock,
+ &_swigt__p_CvSeqReader,
+ &_swigt__p_CvSeqWriter,
+ &_swigt__p_CvSet,
+ &_swigt__p_CvSetElem,
+ &_swigt__p_CvSize,
+ &_swigt__p_CvSize2D32f,
+ &_swigt__p_CvSlice,
+ &_swigt__p_CvSparseMat,
+ &_swigt__p_CvSparseMatIterator,
+ &_swigt__p_CvSparseNode,
+ &_swigt__p_CvStarDetectorParams,
+ &_swigt__p_CvStarKeypoint,
+ &_swigt__p_CvStereoBMState,
+ &_swigt__p_CvStereoGCState,
+ &_swigt__p_CvString,
+ &_swigt__p_CvStringHashNode,
+ &_swigt__p_CvSubdiv2D,
+ &_swigt__p_CvSubdiv2DEdge_Wrapper,
+ &_swigt__p_CvSubdiv2DPoint,
+ &_swigt__p_CvSubdiv2DPointLocation,
+ &_swigt__p_CvTermCriteria,
+ &_swigt__p_CvTreeNodeIterator,
+ &_swigt__p_CvTypeInfo,
+ &_swigt__p_CvTypedSeqT_CvConnectedComp_t,
+ &_swigt__p_CvTypedSeqT_CvPoint2D32f_t,
+ &_swigt__p_CvTypedSeqT_CvPoint_t,
+ &_swigt__p_CvTypedSeqT_CvQuadEdge2D_t,
+ &_swigt__p_CvTypedSeqT_CvRect_t,
+ &_swigt__p_CvTypedSeqT_CvSeq_p_t,
+ &_swigt__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t,
+ &_swigt__p_CvTypedSeqT_CvTupleT_float_2_t_t,
+ &_swigt__p_CvTypedSeqT_CvTupleT_float_3_t_t,
+ &_swigt__p_CvVideoWriter,
+ &_swigt__p_CvvImage,
+ &_swigt__p__IplConvKernel,
+ &_swigt__p__IplConvKernelFP,
+ &_swigt__p__IplImage,
+ &_swigt__p__IplROI,
+ &_swigt__p__IplTileInfo,
+ &_swigt__p_allocator_type,
+ &_swigt__p_char,
+ &_swigt__p_difference_type,
+ &_swigt__p_f_int__void,
+ &_swigt__p_f_int_int_int_int_p_void__void,
+ &_swigt__p_f_int_p_void__void,
+ &_swigt__p_int,
+ &_swigt__p_int64_t,
+ &_swigt__p_octave_value,
+ &_swigt__p_p_CvCapture,
+ &_swigt__p_p_CvVideoWriter,
+ &_swigt__p_p_char,
+ &_swigt__p_signed_char,
+ &_swigt__p_size_t,
+ &_swigt__p_size_type,
+ &_swigt__p_uint64_t,
+ &_swigt__p_unsigned_char,
+ &_swigt__p_unsigned_short,
+ &_swigt__p_value_type,
+ &_swigt__p_void,
+};
+
+static swig_cast_info _swigc__p_Cv32suf[] = { {&_swigt__p_Cv32suf, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_Cv64suf[] = { {&_swigt__p_Cv64suf, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvAttrList[] = { {&_swigt__p_CvAttrList, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvAvgComp[] = { {&_swigt__p_CvAvgComp, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvBox2D[] = { {&_swigt__p_CvBox2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvCapture[] = { {&_swigt__p_CvCapture, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvChain[] = { {&_swigt__p_CvChain, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvChainPtReader[] = { {&_swigt__p_CvChainPtReader, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvConDensation[] = { {&_swigt__p_CvConDensation, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvConnectedComp[] = { {&_swigt__p_CvConnectedComp, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvContour[] = { {&_swigt__p_CvContour, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvContourTree[] = { {&_swigt__p_CvContourTree, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvConvexityDefect[] = { {&_swigt__p_CvConvexityDefect, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvFileNode[] = { {&_swigt__p_CvFileNode, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvFileStorage[] = { {&_swigt__p_CvFileStorage, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvFilter[] = { {&_swigt__p_CvFilter, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvFont[] = { {&_swigt__p_CvFont, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGenericHash[] = { {&_swigt__p_CvGenericHash, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGraph[] = { {&_swigt__p_CvGraph, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGraphEdge[] = { {&_swigt__p_CvGraphEdge, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGraphScanner[] = { {&_swigt__p_CvGraphScanner, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGraphVtx[] = { {&_swigt__p_CvGraphVtx, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvGraphVtx2D[] = { {&_swigt__p_CvGraphVtx2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHaarClassifier[] = { {&_swigt__p_CvHaarClassifier, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHaarClassifierCascade[] = { {&_swigt__p_CvHaarClassifierCascade, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHaarFeature[] = { {&_swigt__p_CvHaarFeature, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHaarStageClassifier[] = { {&_swigt__p_CvHaarStageClassifier, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHidHaarClassifierCascade[] = { {&_swigt__p_CvHidHaarClassifierCascade, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHistogram[] = { {&_swigt__p_CvHistogram, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvHuMoments[] = { {&_swigt__p_CvHuMoments, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvKalman[] = { {&_swigt__p_CvKalman, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvLineIterator[] = { {&_swigt__p_CvLineIterator, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMSERParams[] = { {&_swigt__p_CvMSERParams, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMat[] = { {&_swigt__p_CvMat, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMatND[] = { {&_swigt__p_CvMatND, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMatrix3[] = { {&_swigt__p_CvMatrix3, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMemBlock[] = { {&_swigt__p_CvMemBlock, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMemStorage[] = { {&_swigt__p_CvMemStorage, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMemStoragePos[] = { {&_swigt__p_CvMemStoragePos, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvModuleInfo[] = { {&_swigt__p_CvModuleInfo, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvMoments[] = { {&_swigt__p_CvMoments, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvNArrayIterator[] = { {&_swigt__p_CvNArrayIterator, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvNextEdgeType[] = { {&_swigt__p_CvNextEdgeType, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPOSITObject[] = { {&_swigt__p_CvPOSITObject, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPluginFuncInfo[] = { {&_swigt__p_CvPluginFuncInfo, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPoint[] = { {&_swigt__p_CvPoint, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPoint2D32f[] = { {&_swigt__p_CvPoint2D32f, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPoint2D64f[] = { {&_swigt__p_CvPoint2D64f, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPoint3D32f[] = { {&_swigt__p_CvPoint3D32f, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvPoint3D64f[] = { {&_swigt__p_CvPoint3D64f, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvQuadEdge2D[] = { {&_swigt__p_CvQuadEdge2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvRNG_Wrapper[] = { {&_swigt__p_CvRNG_Wrapper, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvRect[] = { {&_swigt__p_CvRect, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSURFParams[] = { {&_swigt__p_CvSURFParams, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSURFPoint[] = { {&_swigt__p_CvSURFPoint, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvScalar[] = { {&_swigt__p_CvScalar, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t[] = {{&_swigt__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvTupleT_float_2_t_t[] = {{&_swigt__p_CvTypedSeqT_CvTupleT_float_2_t_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvRect_t[] = {{&_swigt__p_CvTypedSeqT_CvRect_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvPoint_t[] = {{&_swigt__p_CvTypedSeqT_CvPoint_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvQuadEdge2D_t[] = {{&_swigt__p_CvTypedSeqT_CvQuadEdge2D_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvSeq_p_t[] = {{&_swigt__p_CvTypedSeqT_CvSeq_p_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvPoint2D32f_t[] = {{&_swigt__p_CvTypedSeqT_CvPoint2D32f_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvTupleT_float_3_t_t[] = {{&_swigt__p_CvTypedSeqT_CvTupleT_float_3_t_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypedSeqT_CvConnectedComp_t[] = {{&_swigt__p_CvTypedSeqT_CvConnectedComp_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSeq[] = { {&_swigt__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t, _p_CvTypedSeqT_CvTupleT_CvPoint_2_t_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvTupleT_float_2_t_t, _p_CvTypedSeqT_CvTupleT_float_2_t_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvRect_t, _p_CvTypedSeqT_CvRect_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvPoint_t, _p_CvTypedSeqT_CvPoint_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvQuadEdge2D_t, _p_CvTypedSeqT_CvQuadEdge2D_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvSeq_p_t, _p_CvTypedSeqT_CvSeq_p_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvPoint2D32f_t, _p_CvTypedSeqT_CvPoint2D32f_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvSeq, 0, 0, 0}, {&_swigt__p_CvTypedSeqT_CvTupleT_float_3_t_t, _p_CvTypedSeqT_CvTupleT_float_3_t_tTo_p_CvSeq, 0, 0}, {&_swigt__p_CvTypedSeqT_CvConnectedComp_t, _p_CvTypedSeqT_CvConnectedComp_tTo_p_CvSeq, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSeqBlock[] = { {&_swigt__p_CvSeqBlock, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSeqReader[] = { {&_swigt__p_CvSeqReader, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSeqWriter[] = { {&_swigt__p_CvSeqWriter, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSet[] = { {&_swigt__p_CvSet, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSetElem[] = { {&_swigt__p_CvSetElem, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSize[] = { {&_swigt__p_CvSize, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSize2D32f[] = { {&_swigt__p_CvSize2D32f, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSlice[] = { {&_swigt__p_CvSlice, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSparseMat[] = { {&_swigt__p_CvSparseMat, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSparseMatIterator[] = { {&_swigt__p_CvSparseMatIterator, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSparseNode[] = { {&_swigt__p_CvSparseNode, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvStarDetectorParams[] = { {&_swigt__p_CvStarDetectorParams, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvStarKeypoint[] = { {&_swigt__p_CvStarKeypoint, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvStereoBMState[] = { {&_swigt__p_CvStereoBMState, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvStereoGCState[] = { {&_swigt__p_CvStereoGCState, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvString[] = { {&_swigt__p_CvString, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvStringHashNode[] = { {&_swigt__p_CvStringHashNode, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSubdiv2D[] = { {&_swigt__p_CvSubdiv2D, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSubdiv2DEdge_Wrapper[] = { {&_swigt__p_CvSubdiv2DEdge_Wrapper, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSubdiv2DPoint[] = { {&_swigt__p_CvSubdiv2DPoint, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvSubdiv2DPointLocation[] = { {&_swigt__p_CvSubdiv2DPointLocation, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTermCriteria[] = { {&_swigt__p_CvTermCriteria, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTreeNodeIterator[] = { {&_swigt__p_CvTreeNodeIterator, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvTypeInfo[] = { {&_swigt__p_CvTypeInfo, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvVideoWriter[] = { {&_swigt__p_CvVideoWriter, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_CvvImage[] = { {&_swigt__p_CvvImage, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p__IplConvKernel[] = { {&_swigt__p__IplConvKernel, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p__IplConvKernelFP[] = { {&_swigt__p__IplConvKernelFP, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p__IplImage[] = { {&_swigt__p__IplImage, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p__IplROI[] = { {&_swigt__p__IplROI, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p__IplTileInfo[] = { {&_swigt__p__IplTileInfo, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_allocator_type[] = { {&_swigt__p_allocator_type, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_difference_type[] = { {&_swigt__p_difference_type, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_f_int__void[] = { {&_swigt__p_f_int__void, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_f_int_int_int_int_p_void__void[] = { {&_swigt__p_f_int_int_int_int_p_void__void, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_f_int_p_void__void[] = { {&_swigt__p_f_int_p_void__void, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_int64_t[] = { {&_swigt__p_int64_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_octave_value[] = { {&_swigt__p_octave_value, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_p_CvCapture[] = { {&_swigt__p_p_CvCapture, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_p_CvVideoWriter[] = { {&_swigt__p_p_CvVideoWriter, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_p_char[] = { {&_swigt__p_p_char, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_signed_char[] = { {&_swigt__p_signed_char, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_size_t[] = { {&_swigt__p_size_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_size_type[] = { {&_swigt__p_size_type, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_uint64_t[] = { {&_swigt__p_uint64_t, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_unsigned_short[] = { {&_swigt__p_unsigned_short, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_value_type[] = { {&_swigt__p_value_type, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_void[] = { {&_swigt__p_void, 0, 0, 0},{0, 0, 0, 0}};
+
+static swig_cast_info *swig_cast_initial[] = {
+ _swigc__p_Cv32suf,
+ _swigc__p_Cv64suf,
+ _swigc__p_CvAttrList,
+ _swigc__p_CvAvgComp,
+ _swigc__p_CvBox2D,
+ _swigc__p_CvCapture,
+ _swigc__p_CvChain,
+ _swigc__p_CvChainPtReader,
+ _swigc__p_CvConDensation,
+ _swigc__p_CvConnectedComp,
+ _swigc__p_CvContour,
+ _swigc__p_CvContourTree,
+ _swigc__p_CvConvexityDefect,
+ _swigc__p_CvFileNode,
+ _swigc__p_CvFileStorage,
+ _swigc__p_CvFilter,
+ _swigc__p_CvFont,
+ _swigc__p_CvGenericHash,
+ _swigc__p_CvGraph,
+ _swigc__p_CvGraphEdge,
+ _swigc__p_CvGraphScanner,
+ _swigc__p_CvGraphVtx,
+ _swigc__p_CvGraphVtx2D,
+ _swigc__p_CvHaarClassifier,
+ _swigc__p_CvHaarClassifierCascade,
+ _swigc__p_CvHaarFeature,
+ _swigc__p_CvHaarStageClassifier,
+ _swigc__p_CvHidHaarClassifierCascade,
+ _swigc__p_CvHistogram,
+ _swigc__p_CvHuMoments,
+ _swigc__p_CvKalman,
+ _swigc__p_CvLineIterator,
+ _swigc__p_CvMSERParams,
+ _swigc__p_CvMat,
+ _swigc__p_CvMatND,
+ _swigc__p_CvMatrix3,
+ _swigc__p_CvMemBlock,
+ _swigc__p_CvMemStorage,
+ _swigc__p_CvMemStoragePos,
+ _swigc__p_CvModuleInfo,
+ _swigc__p_CvMoments,
+ _swigc__p_CvNArrayIterator,
+ _swigc__p_CvNextEdgeType,
+ _swigc__p_CvPOSITObject,
+ _swigc__p_CvPluginFuncInfo,
+ _swigc__p_CvPoint,
+ _swigc__p_CvPoint2D32f,
+ _swigc__p_CvPoint2D64f,
+ _swigc__p_CvPoint3D32f,
+ _swigc__p_CvPoint3D64f,
+ _swigc__p_CvQuadEdge2D,
+ _swigc__p_CvRNG_Wrapper,
+ _swigc__p_CvRect,
+ _swigc__p_CvSURFParams,
+ _swigc__p_CvSURFPoint,
+ _swigc__p_CvScalar,
+ _swigc__p_CvSeq,
+ _swigc__p_CvSeqBlock,
+ _swigc__p_CvSeqReader,
+ _swigc__p_CvSeqWriter,
+ _swigc__p_CvSet,
+ _swigc__p_CvSetElem,
+ _swigc__p_CvSize,
+ _swigc__p_CvSize2D32f,
+ _swigc__p_CvSlice,
+ _swigc__p_CvSparseMat,
+ _swigc__p_CvSparseMatIterator,
+ _swigc__p_CvSparseNode,
+ _swigc__p_CvStarDetectorParams,
+ _swigc__p_CvStarKeypoint,
+ _swigc__p_CvStereoBMState,
+ _swigc__p_CvStereoGCState,
+ _swigc__p_CvString,
+ _swigc__p_CvStringHashNode,
+ _swigc__p_CvSubdiv2D,
+ _swigc__p_CvSubdiv2DEdge_Wrapper,
+ _swigc__p_CvSubdiv2DPoint,
+ _swigc__p_CvSubdiv2DPointLocation,
+ _swigc__p_CvTermCriteria,
+ _swigc__p_CvTreeNodeIterator,
+ _swigc__p_CvTypeInfo,
+ _swigc__p_CvTypedSeqT_CvConnectedComp_t,
+ _swigc__p_CvTypedSeqT_CvPoint2D32f_t,
+ _swigc__p_CvTypedSeqT_CvPoint_t,
+ _swigc__p_CvTypedSeqT_CvQuadEdge2D_t,
+ _swigc__p_CvTypedSeqT_CvRect_t,
+ _swigc__p_CvTypedSeqT_CvSeq_p_t,
+ _swigc__p_CvTypedSeqT_CvTupleT_CvPoint_2_t_t,
+ _swigc__p_CvTypedSeqT_CvTupleT_float_2_t_t,
+ _swigc__p_CvTypedSeqT_CvTupleT_float_3_t_t,
+ _swigc__p_CvVideoWriter,
+ _swigc__p_CvvImage,
+ _swigc__p__IplConvKernel,
+ _swigc__p__IplConvKernelFP,
+ _swigc__p__IplImage,
+ _swigc__p__IplROI,
+ _swigc__p__IplTileInfo,
+ _swigc__p_allocator_type,
+ _swigc__p_char,
+ _swigc__p_difference_type,
+ _swigc__p_f_int__void,
+ _swigc__p_f_int_int_int_int_p_void__void,
+ _swigc__p_f_int_p_void__void,
+ _swigc__p_int,
+ _swigc__p_int64_t,
+ _swigc__p_octave_value,
+ _swigc__p_p_CvCapture,
+ _swigc__p_p_CvVideoWriter,
+ _swigc__p_p_char,
+ _swigc__p_signed_char,
+ _swigc__p_size_t,
+ _swigc__p_size_type,
+ _swigc__p_uint64_t,
+ _swigc__p_unsigned_char,
+ _swigc__p_unsigned_short,
+ _swigc__p_value_type,
+ _swigc__p_void,
+};
+
+
+/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
+
+/* -----------------------------------------------------------------------------
+ * Type initialization:
+ * This problem is tough by the requirement that no dynamic
+ * memory is used. Also, since swig_type_info structures store pointers to
+ * swig_cast_info structures and swig_cast_info structures store pointers back
+ * to swig_type_info structures, we need some lookup code at initialization.
+ * The idea is that swig generates all the structures that are needed.
+ * The runtime then collects these partially filled structures.
+ * The SWIG_InitializeModule function takes these initial arrays out of
+ * swig_module, and does all the lookup, filling in the swig_module.types
+ * array with the correct data and linking the correct swig_cast_info
+ * structures together.
+ *
+ * The generated swig_type_info structures are assigned staticly to an initial
+ * array. We just loop through that array, and handle each type individually.
+ * First we lookup if this type has been already loaded, and if so, use the
+ * loaded structure instead of the generated one. Then we have to fill in the
+ * cast linked list. The cast data is initially stored in something like a
+ * two-dimensional array. Each row corresponds to a type (there are the same
+ * number of rows as there are in the swig_type_initial array). Each entry in
+ * a column is one of the swig_cast_info structures for that type.
+ * The cast_initial array is actually an array of arrays, because each row has
+ * a variable number of columns. So to actually build the cast linked list,
+ * we find the array of casts associated with the type, and loop through it
+ * adding the casts to the list. The one last trick we need to do is making
+ * sure the type pointer in the swig_cast_info struct is correct.
+ *
+ * First off, we lookup the cast->type name to see if it is already loaded.
+ * There are three cases to handle:
+ * 1) If the cast->type has already been loaded AND the type we are adding
+ * casting info to has not been loaded (it is in this module), THEN we
+ * replace the cast->type pointer with the type pointer that has already
+ * been loaded.
+ * 2) If BOTH types (the one we are adding casting info to, and the
+ * cast->type) are loaded, THEN the cast info has already been loaded by
+ * the previous module so we just ignore it.
+ * 3) Finally, if cast->type has not already been loaded, then we add that
+ * swig_cast_info to the linked list (because the cast->type) pointer will
+ * be correct.
+ * ----------------------------------------------------------------------------- */
+
+#ifdef __cplusplus
+extern "C" {
+#if 0
+} /* c-mode */
+#endif
+#endif
+
+#if 0
+#define SWIGRUNTIME_DEBUG
+#endif
+
+
+SWIGRUNTIME void
+SWIG_InitializeModule(void *clientdata) {
+ size_t i;
+ swig_module_info *module_head, *iter;
+ int found, init;
+
+ clientdata = clientdata;
+
+ /* check to see if the circular list has been setup, if not, set it up */
+ if (swig_module.next==0) {
+ /* Initialize the swig_module */
+ swig_module.type_initial = swig_type_initial;
+ swig_module.cast_initial = swig_cast_initial;
+ swig_module.next = &swig_module;
+ init = 1;
+ } else {
+ init = 0;
+ }
+
+ /* Try and load any already created modules */
+ module_head = SWIG_GetModule(clientdata);
+ if (!module_head) {
+ /* This is the first module loaded for this interpreter */
+ /* so set the swig module into the interpreter */
+ SWIG_SetModule(clientdata, &swig_module);
+ module_head = &swig_module;
+ } else {
+ /* the interpreter has loaded a SWIG module, but has it loaded this one? */
+ found=0;
+ iter=module_head;
+ do {
+ if (iter==&swig_module) {
+ found=1;
+ break;
+ }
+ iter=iter->next;
+ } while (iter!= module_head);
+
+ /* if the is found in the list, then all is done and we may leave */
+ if (found) return;
+ /* otherwise we must add out module into the list */
+ swig_module.next = module_head->next;
+ module_head->next = &swig_module;
+ }
+
+ /* When multiple interpeters are used, a module could have already been initialized in
+ a different interpreter, but not yet have a pointer in this interpreter.
+ In this case, we do not want to continue adding types... everything should be
+ set up already */
+ if (init == 0) return;
+
+ /* Now work on filling in swig_module.types */
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: size %d\n", swig_module.size);
+#endif
+ for (i = 0; i < swig_module.size; ++i) {
+ swig_type_info *type = 0;
+ swig_type_info *ret;
+ swig_cast_info *cast;
+
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
+#endif
+
+ /* if there is another module already loaded */
+ if (swig_module.next != &swig_module) {
+ type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
+ }
+ if (type) {
+ /* Overwrite clientdata field */
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: found type %s\n", type->name);
+#endif
+ if (swig_module.type_initial[i]->clientdata) {
+ type->clientdata = swig_module.type_initial[i]->clientdata;
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
+#endif
+ }
+ } else {
+ type = swig_module.type_initial[i];
+ }
+
+ /* Insert casting types */
+ cast = swig_module.cast_initial[i];
+ while (cast->type) {
+
+ /* Don't need to add information already in the list */
+ ret = 0;
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
+#endif
+ if (swig_module.next != &swig_module) {
+ ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
+#ifdef SWIGRUNTIME_DEBUG
+ if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
+#endif
+ }
+ if (ret) {
+ if (type == swig_module.type_initial[i]) {
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
+#endif
+ cast->type = ret;
+ ret = 0;
+ } else {
+ /* Check for casting already in the list */
+ swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
+#ifdef SWIGRUNTIME_DEBUG
+ if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
+#endif
+ if (!ocast) ret = 0;
+ }
+ }
+
+ if (!ret) {
+#ifdef SWIGRUNTIME_DEBUG
+ printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
+#endif
+ if (type->cast) {
+ type->cast->prev = cast;
+ cast->next = type->cast;
+ }
+ type->cast = cast;
+ }
+ cast++;
+ }
+ /* Set entry in modules->types array equal to the type */
+ swig_module.types[i] = type;
+ }
+ swig_module.types[i] = 0;
+
+#ifdef SWIGRUNTIME_DEBUG
+ printf("**** SWIG_InitializeModule: Cast List ******\n");
+ for (i = 0; i < swig_module.size; ++i) {
+ int j = 0;
+ swig_cast_info *cast = swig_module.cast_initial[i];
+ printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
+ while (cast->type) {
+ printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
+ cast++;
+ ++j;
+ }
+ printf("---- Total casts: %d\n",j);
+ }
+ printf("**** SWIG_InitializeModule: Cast List ******\n");
+#endif
+}
+
+/* This function will propagate the clientdata field of type to
+* any new swig_type_info structures that have been added into the list
+* of equivalent types. It is like calling
+* SWIG_TypeClientData(type, clientdata) a second time.
+*/
+SWIGRUNTIME void
+SWIG_PropagateClientData(void) {
+ size_t i;
+ swig_cast_info *equiv;
+ static int init_run = 0;
+
+ if (init_run) return;
+ init_run = 1;
+
+ for (i = 0; i < swig_module.size; i++) {
+ if (swig_module.types[i]->clientdata) {
+ equiv = swig_module.types[i]->cast;
+ while (equiv) {
+ if (!equiv->converter) {
+ if (equiv->type && !equiv->type->clientdata)
+ SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
+ }
+ equiv = equiv->next;
+ }
+ }
+ }
+}
+
+#ifdef __cplusplus
+#if 0
+{ /* c-mode */
+#endif
+}
+#endif
+
+
+
+static void SWIG_init_user(octave_swig_type* module_ns);
+
+DEFUN_DLD (SWIG_name,args,nargout,SWIG_name_d) {
+ static bool already_init=false;
+ if (already_init)
+ return octave_value_list();
+ already_init=true;
+
+ octave_swig_ref::register_type();
+ octave_swig_packed::register_type();
+ SWIG_InitializeModule(0);
+ SWIG_PropagateClientData();
+
+ install_builtin_function(swig_type,"swig_type",std::string());
+ install_builtin_function(swig_typequery,"swig_typequery",std::string());
+ install_builtin_function(swig_this,"swig_this",std::string());
+ install_builtin_function(swig_subclass,"subclass",std::string());
+
+ bool global_option=true; // * swig cli option should control this default
+ for (int j=0;j<args.length();++j)
+ if (args(j).is_string()&&args(j).string_value()=="noglobal")
+ global_option=true;
+ else if (args(j).is_string()&&args(j).string_value()=="noglobal")
+ global_option=false;
+
+ octave_swig_type* cvar_ns=new octave_swig_type;
+ for (int j=0;swig_globals[j].name;++j)
+ if (swig_globals[j].get_method)
+ cvar_ns->assign(swig_globals[j].name,&swig_globals[j]);
+
+ octave_swig_type* module_ns=new octave_swig_type(0, 0, 0, true);
+ module_ns->assign("cvar",Swig::swig_value_ref(cvar_ns));
+ for (int j=0;swig_globals[j].name;++j)
+ if (swig_globals[j].method)
+ module_ns->assign(swig_globals[j].name,&swig_globals[j]);
+
+ // * need better solution here; swig_type -> octave_class mapping is
+ // * really n-to-1, in some cases such as template partial spec, etc.
+ // * see failing tests.
+ for (int j=0;swig_types[j];++j)
+ if (swig_types[j]->clientdata) {
+ swig_octave_class* c=(swig_octave_class*)swig_types[j]->clientdata;
+ module_ns->assign(c->name,
+ Swig::swig_value_ref
+ (new octave_swig_type(0,swig_types[j])));
+ }
+
+ SWIG_init_user(module_ns);
+
+ SWIG_InstallOps(octave_swig_ref::static_type_id());
+
+ // the incref is necessary so install_global doesn't destroy module_ns,
+ // as it would if it installed something with the same name as the module.
+ module_ns->incref();
+ if (global_option)
+ module_ns->install_global();
+ module_ns->decref();
+
+#if USE_OCTAVE_API_VERSION<37
+ link_to_global_variable(curr_sym_tab->lookup(SWIG_name_d,true));
+#else
+ symbol_table::varref(SWIG_name_d);
+ symbol_table::mark_global(SWIG_name_d);
+#endif
+ set_global_value(SWIG_name_d,Swig::swig_value_ref(module_ns));
+
+#if USE_OCTAVE_API_VERSION>=37
+ mlock();
+#endif
+
+ return octave_value_list();
+}
+
+// workaround bug in octave where installing global variable of custom type and then
+// exiting without explicitly clearing the variable causes octave to segfault.
+#if USE_OCTAVE_API_VERSION>=37
+struct oct_file_unload {
+ ~oct_file_unload() {
+ string_vector vars = symbol_table::global_variable_names();
+ for (int i = 0; i < vars.length(); i++)
+ symbol_table::clear_global(vars[i]);
+ }
+};
+static oct_file_unload __unload;
+#endif
+
+
+static void SWIG_init_user(octave_swig_type* module_ns)
+{
+ SWIG_Octave_SetConstant(module_ns,"CV_WINDOW_AUTOSIZE",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_MOUSEMOVE",SWIG_From_int((int)(0)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_LBUTTONDOWN",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_RBUTTONDOWN",SWIG_From_int((int)(2)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_MBUTTONDOWN",SWIG_From_int((int)(3)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_LBUTTONUP",SWIG_From_int((int)(4)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_RBUTTONUP",SWIG_From_int((int)(5)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_MBUTTONUP",SWIG_From_int((int)(6)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_LBUTTONDBLCLK",SWIG_From_int((int)(7)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_RBUTTONDBLCLK",SWIG_From_int((int)(8)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_MBUTTONDBLCLK",SWIG_From_int((int)(9)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_LBUTTON",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_RBUTTON",SWIG_From_int((int)(2)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_MBUTTON",SWIG_From_int((int)(4)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_CTRLKEY",SWIG_From_int((int)(8)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_SHIFTKEY",SWIG_From_int((int)(16)));
+ SWIG_Octave_SetConstant(module_ns,"CV_EVENT_FLAG_ALTKEY",SWIG_From_int((int)(32)));
+ SWIG_Octave_SetConstant(module_ns,"CV_LOAD_IMAGE_UNCHANGED",SWIG_From_int((int)(-1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_LOAD_IMAGE_GRAYSCALE",SWIG_From_int((int)(0)));
+ SWIG_Octave_SetConstant(module_ns,"CV_LOAD_IMAGE_COLOR",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_LOAD_IMAGE_ANYDEPTH",SWIG_From_int((int)(2)));
+ SWIG_Octave_SetConstant(module_ns,"CV_LOAD_IMAGE_ANYCOLOR",SWIG_From_int((int)(4)));
+ SWIG_Octave_SetConstant(module_ns,"CV_IMWRITE_JPEG_QUALITY",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_IMWRITE_PNG_COMPRESSION",SWIG_From_int((int)(16)));
+ SWIG_Octave_SetConstant(module_ns,"CV_IMWRITE_PXM_BINARY",SWIG_From_int((int)(32)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CVTIMG_FLIP",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CVTIMG_SWAP_RB",SWIG_From_int((int)(2)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_ANY",SWIG_From_int((int)(0)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_MIL",SWIG_From_int((int)(100)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_VFW",SWIG_From_int((int)(200)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_V4L",SWIG_From_int((int)(200)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_V4L2",SWIG_From_int((int)(200)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_FIREWARE",SWIG_From_int((int)(300)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_FIREWIRE",SWIG_From_int((int)(300)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_IEEE1394",SWIG_From_int((int)(300)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_DC1394",SWIG_From_int((int)(300)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_CMU1394",SWIG_From_int((int)(300)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_STEREO",SWIG_From_int((int)(400)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_TYZX",SWIG_From_int((int)(400)));
+ SWIG_Octave_SetConstant(module_ns,"CV_TYZX_LEFT",SWIG_From_int((int)(400)));
+ SWIG_Octave_SetConstant(module_ns,"CV_TYZX_RIGHT",SWIG_From_int((int)(401)));
+ SWIG_Octave_SetConstant(module_ns,"CV_TYZX_COLOR",SWIG_From_int((int)(402)));
+ SWIG_Octave_SetConstant(module_ns,"CV_TYZX_Z",SWIG_From_int((int)(403)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_QT",SWIG_From_int((int)(500)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_UNICAP",SWIG_From_int((int)(600)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_DSHOW",SWIG_From_int((int)(700)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_POS_MSEC",SWIG_From_int((int)(0)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_POS_FRAMES",SWIG_From_int((int)(1)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_POS_AVI_RATIO",SWIG_From_int((int)(2)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FRAME_WIDTH",SWIG_From_int((int)(3)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FRAME_HEIGHT",SWIG_From_int((int)(4)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FPS",SWIG_From_int((int)(5)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FOURCC",SWIG_From_int((int)(6)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FRAME_COUNT",SWIG_From_int((int)(7)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_FORMAT",SWIG_From_int((int)(8)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_MODE",SWIG_From_int((int)(9)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_BRIGHTNESS",SWIG_From_int((int)(10)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_CONTRAST",SWIG_From_int((int)(11)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_SATURATION",SWIG_From_int((int)(12)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_HUE",SWIG_From_int((int)(13)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_GAIN",SWIG_From_int((int)(14)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_EXPOSURE",SWIG_From_int((int)(15)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_CONVERT_RGB",SWIG_From_int((int)(16)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_WHITE_BALANCE",SWIG_From_int((int)(17)));
+ SWIG_Octave_SetConstant(module_ns,"CV_CAP_PROP_RECTIFICATION",SWIG_From_int((int)(18)));
+ SWIG_Octave_SetConstant(module_ns,"CV_FOURCC_PROMPT",SWIG_From_int((int)(-1)));
+ SWIG_Octave_SetConstant(module_ns,"HG_AUTOSIZE",SWIG_From_int((int)(1)));
+}
+