]> git.saurik.com Git - wxWidgets.git/blame - wxPython/contrib/glcanvas/gtk/glcanvas_wrap.cpp
move default button handling code from wxControlContainer to wxTLW (patch 1524441)
[wxWidgets.git] / wxPython / contrib / glcanvas / gtk / glcanvas_wrap.cpp
CommitLineData
d14a1e28
RD
1/* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (http://www.swig.org).
0085ce49 3 * Version 1.3.29
d14a1e28
RD
4 *
5 * This file is not intended to be easily readable and contains a number of
6 * coding conventions designed to improve portability and efficiency. Do not make
7 * changes to this file unless you know what you are doing--modify the SWIG
8 * interface file instead.
9 * ----------------------------------------------------------------------------- */
10
11#define SWIGPYTHON
0085ce49 12#define SWIG_PYTHON_DIRECTOR_NO_VTABLE
d14a1e28
RD
13
14#ifdef __cplusplus
15template<class T> class SwigValueWrapper {
16 T *tt;
17public:
18 SwigValueWrapper() : tt(0) { }
19 SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
20 SwigValueWrapper(const T& t) : tt(new T(t)) { }
21 ~SwigValueWrapper() { delete tt; }
22 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
23 operator T&() const { return *tt; }
24 T *operator&() { return tt; }
25private:
26 SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
3004cfd8 27};
d14a1e28
RD
28#endif
29
0085ce49 30/* -----------------------------------------------------------------------------
32fe5131
RD
31 * This section contains generic SWIG labels for method/variable
32 * declarations/attributes, and other compiler dependent labels.
0085ce49 33 * ----------------------------------------------------------------------------- */
d14a1e28 34
32fe5131
RD
35/* template workaround for compilers that cannot correctly implement the C++ standard */
36#ifndef SWIGTEMPLATEDISAMBIGUATOR
0085ce49
RD
37# if defined(__SUNPRO_CC)
38# if (__SUNPRO_CC <= 0x560)
39# define SWIGTEMPLATEDISAMBIGUATOR template
40# else
41# define SWIGTEMPLATEDISAMBIGUATOR
42# endif
43# else
44# define SWIGTEMPLATEDISAMBIGUATOR
45# endif
3004cfd8 46#endif
d14a1e28 47
32fe5131
RD
48/* inline attribute */
49#ifndef SWIGINLINE
50# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
51# define SWIGINLINE inline
52# else
53# define SWIGINLINE
54# endif
55#endif
56
57/* attribute recognised by some compilers to avoid 'unused' warnings */
58#ifndef SWIGUNUSED
0085ce49
RD
59# if defined(__GNUC__)
60# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
61# define SWIGUNUSED __attribute__ ((__unused__))
62# else
63# define SWIGUNUSED
64# endif
65# elif defined(__ICC)
66# define SWIGUNUSED __attribute__ ((__unused__))
32fe5131
RD
67# else
68# define SWIGUNUSED
69# endif
70#endif
71
0085ce49
RD
72#ifndef SWIGUNUSEDPARM
73# ifdef __cplusplus
74# define SWIGUNUSEDPARM(p)
75# else
76# define SWIGUNUSEDPARM(p) p SWIGUNUSED
77# endif
78#endif
79
32fe5131
RD
80/* internal SWIG method */
81#ifndef SWIGINTERN
82# define SWIGINTERN static SWIGUNUSED
83#endif
84
85/* internal inline SWIG method */
86#ifndef SWIGINTERNINLINE
87# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
88#endif
89
0085ce49
RD
90/* exporting methods */
91#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
92# ifndef GCC_HASCLASSVISIBILITY
93# define GCC_HASCLASSVISIBILITY
94# endif
95#endif
96
32fe5131
RD
97#ifndef SWIGEXPORT
98# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
99# if defined(STATIC_LINKED)
100# define SWIGEXPORT
101# else
102# define SWIGEXPORT __declspec(dllexport)
103# endif
104# else
0085ce49
RD
105# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
106# define SWIGEXPORT __attribute__ ((visibility("default")))
107# else
108# define SWIGEXPORT
109# endif
32fe5131
RD
110# endif
111#endif
112
113/* calling conventions for Windows */
114#ifndef SWIGSTDCALL
115# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
116# define SWIGSTDCALL __stdcall
117# else
118# define SWIGSTDCALL
119# endif
120#endif
121
0085ce49
RD
122/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
123#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER)
124# define _CRT_SECURE_NO_DEPRECATE
125#endif
32fe5131 126
c9c7117a 127
0085ce49 128/* Python.h has to appear first */
3004cfd8 129#include <Python.h>
d14a1e28 130
0085ce49 131/* -----------------------------------------------------------------------------
3004cfd8 132 * swigrun.swg
d14a1e28 133 *
0085ce49
RD
134 * This file contains generic CAPI SWIG runtime support for pointer
135 * type checking.
136 * ----------------------------------------------------------------------------- */
d14a1e28 137
3004cfd8
RD
138/* This should only be incremented when either the layout of swig_type_info changes,
139 or for whatever reason, the runtime changes incompatibly */
32fe5131 140#define SWIG_RUNTIME_VERSION "2"
d14a1e28 141
3004cfd8
RD
142/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
143#ifdef SWIG_TYPE_TABLE
32fe5131
RD
144# define SWIG_QUOTE_STRING(x) #x
145# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
146# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
d14a1e28 147#else
32fe5131 148# define SWIG_TYPE_TABLE_NAME
3004cfd8
RD
149#endif
150
151/*
152 You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
153 creating a static or dynamic library from the swig runtime code.
154 In 99.9% of the cases, swig just needs to declare them as 'static'.
155
156 But only do this if is strictly necessary, ie, if you have problems
157 with your compiler or so.
158*/
32fe5131 159
3004cfd8 160#ifndef SWIGRUNTIME
32fe5131 161# define SWIGRUNTIME SWIGINTERN
3004cfd8 162#endif
32fe5131 163
3004cfd8 164#ifndef SWIGRUNTIMEINLINE
32fe5131 165# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
d14a1e28
RD
166#endif
167
0085ce49
RD
168/* Generic buffer size */
169#ifndef SWIG_BUFFER_SIZE
170# define SWIG_BUFFER_SIZE 1024
171#endif
172
173/* Flags for pointer conversions */
174#define SWIG_POINTER_DISOWN 0x1
175
176/* Flags for new pointer objects */
177#define SWIG_POINTER_OWN 0x1
178
179
180/*
181 Flags/methods for returning states.
182
183 The swig conversion methods, as ConvertPtr, return and integer
184 that tells if the conversion was successful or not. And if not,
185 an error code can be returned (see swigerrors.swg for the codes).
186
187 Use the following macros/flags to set or process the returning
188 states.
189
190 In old swig versions, you usually write code as:
191
192 if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
193 // success code
194 } else {
195 //fail code
196 }
197
198 Now you can be more explicit as:
199
200 int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
201 if (SWIG_IsOK(res)) {
202 // success code
203 } else {
204 // fail code
205 }
206
207 that seems to be the same, but now you can also do
208
209 Type *ptr;
210 int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
211 if (SWIG_IsOK(res)) {
212 // success code
213 if (SWIG_IsNewObj(res) {
214 ...
215 delete *ptr;
216 } else {
217 ...
218 }
219 } else {
220 // fail code
221 }
222
223 I.e., now SWIG_ConvertPtr can return new objects and you can
224 identify the case and take care of the deallocation. Of course that
225 requires also to SWIG_ConvertPtr to return new result values, as
226
227 int SWIG_ConvertPtr(obj, ptr,...) {
228 if (<obj is ok>) {
229 if (<need new object>) {
230 *ptr = <ptr to new allocated object>;
231 return SWIG_NEWOBJ;
232 } else {
233 *ptr = <ptr to old object>;
234 return SWIG_OLDOBJ;
235 }
236 } else {
237 return SWIG_BADOBJ;
238 }
239 }
240
241 Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
242 more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
243 swig errors code.
244
245 Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
246 allows to return the 'cast rank', for example, if you have this
247
248 int food(double)
249 int fooi(int);
250
251 and you call
252
253 food(1) // cast rank '1' (1 -> 1.0)
254 fooi(1) // cast rank '0'
255
256 just use the SWIG_AddCast()/SWIG_CheckState()
257
258
259 */
260#define SWIG_OK (0)
261#define SWIG_ERROR (-1)
262#define SWIG_IsOK(r) (r >= 0)
263#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
264
265/* The CastRankLimit says how many bits are used for the cast rank */
266#define SWIG_CASTRANKLIMIT (1 << 8)
267/* The NewMask denotes the object was created (using new/malloc) */
268#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
269/* The TmpMask is for in/out typemaps that use temporal objects */
270#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
271/* Simple returning values */
272#define SWIG_BADOBJ (SWIG_ERROR)
273#define SWIG_OLDOBJ (SWIG_OK)
274#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
275#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
276/* Check, add and del mask methods */
277#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
278#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
279#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
280#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
281#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
282#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
283
284
285/* Cast-Rank Mode */
286#if defined(SWIG_CASTRANK_MODE)
287# ifndef SWIG_TypeRank
288# define SWIG_TypeRank unsigned long
289# endif
290# ifndef SWIG_MAXCASTRANK /* Default cast allowed */
291# define SWIG_MAXCASTRANK (2)
292# endif
293# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
294# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
295SWIGINTERNINLINE int SWIG_AddCast(int r) {
296 return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
297}
298SWIGINTERNINLINE int SWIG_CheckState(int r) {
299 return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
300}
301#else /* no cast-rank mode */
302# define SWIG_AddCast
303# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
304#endif
305
306
307
308
32fe5131
RD
309#include <string.h>
310
d14a1e28
RD
311#ifdef __cplusplus
312extern "C" {
313#endif
314
315typedef void *(*swig_converter_func)(void *);
316typedef struct swig_type_info *(*swig_dycast_func)(void **);
317
32fe5131 318/* Structure to store inforomation on one type */
d14a1e28 319typedef struct swig_type_info {
32fe5131
RD
320 const char *name; /* mangled name of this type */
321 const char *str; /* human readable name of this type */
322 swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
323 struct swig_cast_info *cast; /* linked list of types that can cast into this type */
324 void *clientdata; /* language specific type data */
0085ce49 325 int owndata; /* flag if the structure owns the clientdata */
d14a1e28
RD
326} swig_type_info;
327
32fe5131
RD
328/* Structure to store a type and conversion function used for casting */
329typedef struct swig_cast_info {
330 swig_type_info *type; /* pointer to type that is equivalent to this type */
331 swig_converter_func converter; /* function to cast the void pointers */
332 struct swig_cast_info *next; /* pointer to next cast in linked list */
333 struct swig_cast_info *prev; /* pointer to the previous cast */
334} swig_cast_info;
335
336/* Structure used to store module information
337 * Each module generates one structure like this, and the runtime collects
338 * all of these structures and stores them in a circularly linked list.*/
339typedef struct swig_module_info {
340 swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
341 size_t size; /* Number of types in this module */
342 struct swig_module_info *next; /* Pointer to next element in circularly linked list */
343 swig_type_info **type_initial; /* Array of initially generated type structures */
344 swig_cast_info **cast_initial; /* Array of initially generated casting structures */
345 void *clientdata; /* Language specific module data */
346} swig_module_info;
347
3004cfd8
RD
348/*
349 Compare two type names skipping the space characters, therefore
350 "char*" == "char *" and "Class<int>" == "Class<int >", etc.
351
352 Return 0 when the two name types are equivalent, as in
353 strncmp, but skipping ' '.
354*/
355SWIGRUNTIME int
356SWIG_TypeNameComp(const char *f1, const char *l1,
357 const char *f2, const char *l2) {
358 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
359 while ((*f1 == ' ') && (f1 != l1)) ++f1;
360 while ((*f2 == ' ') && (f2 != l2)) ++f2;
0085ce49 361 if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
3004cfd8
RD
362 }
363 return (l1 - f1) - (l2 - f2);
364}
365
366/*
367 Check type equivalence in a name list like <name1>|<name2>|...
32fe5131 368 Return 0 if not equal, 1 if equal
3004cfd8
RD
369*/
370SWIGRUNTIME int
371SWIG_TypeEquiv(const char *nb, const char *tb) {
372 int equiv = 0;
373 const char* te = tb + strlen(tb);
374 const char* ne = nb;
375 while (!equiv && *ne) {
376 for (nb = ne; *ne; ++ne) {
377 if (*ne == '|') break;
378 }
32fe5131 379 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
3004cfd8
RD
380 if (*ne) ++ne;
381 }
382 return equiv;
383}
384
385/*
32fe5131
RD
386 Check type equivalence in a name list like <name1>|<name2>|...
387 Return 0 if equal, -1 if nb < tb, 1 if nb > tb
3004cfd8 388*/
32fe5131
RD
389SWIGRUNTIME int
390SWIG_TypeCompare(const char *nb, const char *tb) {
391 int equiv = 0;
392 const char* te = tb + strlen(tb);
393 const char* ne = nb;
394 while (!equiv && *ne) {
395 for (nb = ne; *ne; ++ne) {
396 if (*ne == '|') break;
3004cfd8 397 }
32fe5131
RD
398 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
399 if (*ne) ++ne;
3004cfd8 400 }
32fe5131 401 return equiv;
3004cfd8
RD
402}
403
32fe5131
RD
404
405/* think of this as a c++ template<> or a scheme macro */
406#define SWIG_TypeCheck_Template(comparison, ty) \
407 if (ty) { \
408 swig_cast_info *iter = ty->cast; \
409 while (iter) { \
410 if (comparison) { \
411 if (iter == ty->cast) return iter; \
412 /* Move iter to the top of the linked list */ \
413 iter->prev->next = iter->next; \
414 if (iter->next) \
415 iter->next->prev = iter->prev; \
416 iter->next = ty->cast; \
417 iter->prev = 0; \
418 if (ty->cast) ty->cast->prev = iter; \
419 ty->cast = iter; \
420 return iter; \
421 } \
422 iter = iter->next; \
423 } \
424 } \
425 return 0
426
3004cfd8
RD
427/*
428 Check the typename
429*/
32fe5131 430SWIGRUNTIME swig_cast_info *
3004cfd8 431SWIG_TypeCheck(const char *c, swig_type_info *ty) {
32fe5131
RD
432 SWIG_TypeCheck_Template(strcmp(iter->type->name, c) == 0, ty);
433}
434
435/* Same as previous function, except strcmp is replaced with a pointer comparison */
436SWIGRUNTIME swig_cast_info *
437SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *into) {
438 SWIG_TypeCheck_Template(iter->type == from, into);
3004cfd8 439}
d14a1e28 440
3004cfd8
RD
441/*
442 Cast a pointer up an inheritance hierarchy
443*/
444SWIGRUNTIMEINLINE void *
32fe5131 445SWIG_TypeCast(swig_cast_info *ty, void *ptr) {
3004cfd8
RD
446 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
447}
448
449/*
450 Dynamic pointer casting. Down an inheritance hierarchy
451*/
452SWIGRUNTIME swig_type_info *
453SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
454 swig_type_info *lastty = ty;
455 if (!ty || !ty->dcast) return ty;
456 while (ty && (ty->dcast)) {
457 ty = (*ty->dcast)(ptr);
458 if (ty) lastty = ty;
459 }
460 return lastty;
461}
462
463/*
464 Return the name associated with this type
465*/
466SWIGRUNTIMEINLINE const char *
467SWIG_TypeName(const swig_type_info *ty) {
468 return ty->name;
469}
470
471/*
472 Return the pretty name associated with this type,
473 that is an unmangled type name in a form presentable to the user.
474*/
475SWIGRUNTIME const char *
476SWIG_TypePrettyName(const swig_type_info *type) {
477 /* The "str" field contains the equivalent pretty names of the
478 type, separated by vertical-bar characters. We choose
479 to print the last name, as it is often (?) the most
480 specific. */
0085ce49 481 if (!type) return NULL;
3004cfd8
RD
482 if (type->str != NULL) {
483 const char *last_name = type->str;
484 const char *s;
485 for (s = type->str; *s; s++)
486 if (*s == '|') last_name = s+1;
487 return last_name;
488 }
489 else
490 return type->name;
491}
492
3004cfd8
RD
493/*
494 Set the clientdata field for a type
495*/
496SWIGRUNTIME void
32fe5131
RD
497SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
498 swig_cast_info *cast = ti->cast;
3004cfd8
RD
499 /* if (ti->clientdata == clientdata) return; */
500 ti->clientdata = clientdata;
32fe5131
RD
501
502 while (cast) {
503 if (!cast->converter) {
504 swig_type_info *tc = cast->type;
505 if (!tc->clientdata) {
506 SWIG_TypeClientData(tc, clientdata);
3004cfd8 507 }
32fe5131
RD
508 }
509 cast = cast->next;
510 }
511}
0085ce49
RD
512SWIGRUNTIME void
513SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
514 SWIG_TypeClientData(ti, clientdata);
515 ti->owndata = 1;
516}
517
32fe5131
RD
518/*
519 Search for a swig_type_info structure only by mangled name
520 Search is a O(log #types)
521
522 We start searching at module start, and finish searching when start == end.
523 Note: if start == end at the beginning of the function, we go all the way around
524 the circular list.
525*/
526SWIGRUNTIME swig_type_info *
527SWIG_MangledTypeQueryModule(swig_module_info *start,
528 swig_module_info *end,
529 const char *name) {
530 swig_module_info *iter = start;
531 do {
532 if (iter->size) {
533 register size_t l = 0;
534 register size_t r = iter->size - 1;
535 do {
536 /* since l+r >= 0, we can (>> 1) instead (/ 2) */
537 register size_t i = (l + r) >> 1;
538 const char *iname = iter->types[i]->name;
539 if (iname) {
540 register int compare = strcmp(name, iname);
541 if (compare == 0) {
542 return iter->types[i];
543 } else if (compare < 0) {
544 if (i) {
545 r = i - 1;
546 } else {
547 break;
548 }
549 } else if (compare > 0) {
550 l = i + 1;
551 }
552 } else {
553 break; /* should never happen */
554 }
555 } while (l <= r);
3004cfd8 556 }
32fe5131
RD
557 iter = iter->next;
558 } while (iter != end);
559 return 0;
560}
561
562/*
563 Search for a swig_type_info structure for either a mangled name or a human readable name.
564 It first searches the mangled names of the types, which is a O(log #types)
565 If a type is not found it then searches the human readable names, which is O(#types).
566
567 We start searching at module start, and finish searching when start == end.
568 Note: if start == end at the beginning of the function, we go all the way around
569 the circular list.
570*/
571SWIGRUNTIME swig_type_info *
572SWIG_TypeQueryModule(swig_module_info *start,
573 swig_module_info *end,
574 const char *name) {
575 /* STEP 1: Search the name field using binary search */
576 swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
577 if (ret) {
578 return ret;
579 } else {
580 /* STEP 2: If the type hasn't been found, do a complete search
581 of the str field (the human readable name) */
582 swig_module_info *iter = start;
583 do {
584 register size_t i = 0;
585 for (; i < iter->size; ++i) {
586 if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
587 return iter->types[i];
588 }
589 iter = iter->next;
590 } while (iter != end);
3004cfd8 591 }
32fe5131
RD
592
593 /* neither found a match */
594 return 0;
3004cfd8
RD
595}
596
597/*
598 Pack binary data into a string
599*/
600SWIGRUNTIME char *
601SWIG_PackData(char *c, void *ptr, size_t sz) {
32fe5131
RD
602 static const char hex[17] = "0123456789abcdef";
603 register const unsigned char *u = (unsigned char *) ptr;
604 register const unsigned char *eu = u + sz;
3004cfd8 605 for (; u != eu; ++u) {
32fe5131 606 register unsigned char uu = *u;
3004cfd8
RD
607 *(c++) = hex[(uu & 0xf0) >> 4];
608 *(c++) = hex[uu & 0xf];
609 }
610 return c;
611}
612
613/*
614 Unpack binary data from a string
615*/
616SWIGRUNTIME const char *
617SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
618 register unsigned char *u = (unsigned char *) ptr;
32fe5131 619 register const unsigned char *eu = u + sz;
3004cfd8 620 for (; u != eu; ++u) {
32fe5131 621 register char d = *(c++);
0085ce49 622 register unsigned char uu;
3004cfd8
RD
623 if ((d >= '0') && (d <= '9'))
624 uu = ((d - '0') << 4);
625 else if ((d >= 'a') && (d <= 'f'))
626 uu = ((d - ('a'-10)) << 4);
627 else
628 return (char *) 0;
629 d = *(c++);
630 if ((d >= '0') && (d <= '9'))
631 uu |= (d - '0');
632 else if ((d >= 'a') && (d <= 'f'))
633 uu |= (d - ('a'-10));
634 else
635 return (char *) 0;
636 *u = uu;
637 }
638 return c;
639}
640
3004cfd8
RD
641/*
642 Pack 'void *' into a string buffer.
643*/
644SWIGRUNTIME char *
645SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
646 char *r = buff;
647 if ((2*sizeof(void *) + 2) > bsz) return 0;
648 *(r++) = '_';
649 r = SWIG_PackData(r,&ptr,sizeof(void *));
650 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
651 strcpy(r,name);
652 return buff;
653}
654
655SWIGRUNTIME const char *
656SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
657 if (*c != '_') {
658 if (strcmp(c,"NULL") == 0) {
659 *ptr = (void *) 0;
660 return name;
661 } else {
662 return 0;
663 }
664 }
665 return SWIG_UnpackData(++c,ptr,sizeof(void *));
666}
667
668SWIGRUNTIME char *
669SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
670 char *r = buff;
671 size_t lname = (name ? strlen(name) : 0);
672 if ((2*sz + 2 + lname) > bsz) return 0;
673 *(r++) = '_';
674 r = SWIG_PackData(r,ptr,sz);
675 if (lname) {
676 strncpy(r,name,lname+1);
677 } else {
678 *r = 0;
679 }
680 return buff;
681}
682
683SWIGRUNTIME const char *
684SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
685 if (*c != '_') {
686 if (strcmp(c,"NULL") == 0) {
687 memset(ptr,0,sz);
688 return name;
689 } else {
690 return 0;
691 }
692 }
693 return SWIG_UnpackData(++c,ptr,sz);
694}
d14a1e28
RD
695
696#ifdef __cplusplus
697}
698#endif
699
0085ce49
RD
700/* Errors in SWIG */
701#define SWIG_UnknownError -1
702#define SWIG_IOError -2
703#define SWIG_RuntimeError -3
704#define SWIG_IndexError -4
705#define SWIG_TypeError -5
706#define SWIG_DivisionByZero -6
707#define SWIG_OverflowError -7
708#define SWIG_SyntaxError -8
709#define SWIG_ValueError -9
710#define SWIG_SystemError -10
711#define SWIG_AttributeError -11
712#define SWIG_MemoryError -12
713#define SWIG_NullReferenceError -13
3004cfd8 714
0085ce49
RD
715
716
717/* Python.h has to appear first */
718#include <Python.h>
719
720/* Add PyOS_snprintf for old Pythons */
721#if PY_VERSION_HEX < 0x02020000
722# if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
723# define PyOS_snprintf _snprintf
724# else
725# define PyOS_snprintf snprintf
726# endif
727#endif
728
729/* A crude PyString_FromFormat implementation for old Pythons */
730#if PY_VERSION_HEX < 0x02020000
731
732#ifndef SWIG_PYBUFFER_SIZE
733# define SWIG_PYBUFFER_SIZE 1024
734#endif
735
736static PyObject *
737PyString_FromFormat(const char *fmt, ...) {
738 va_list ap;
739 char buf[SWIG_PYBUFFER_SIZE * 2];
740 int res;
741 va_start(ap, fmt);
742 res = vsnprintf(buf, sizeof(buf), fmt, ap);
743 va_end(ap);
744 return (res < 0 || res >= (int)sizeof(buf)) ? 0 : PyString_FromString(buf);
745}
746#endif
747
748/* Add PyObject_Del for old Pythons */
749#if PY_VERSION_HEX < 0x01060000
750# define PyObject_Del(op) PyMem_DEL((op))
751#endif
752#ifndef PyObject_DEL
753# define PyObject_DEL PyObject_Del
754#endif
755
756/* A crude PyExc_StopIteration exception for old Pythons */
757#if PY_VERSION_HEX < 0x02020000
758# ifndef PyExc_StopIteration
759# define PyExc_StopIteration PyExc_RuntimeError
760# endif
761# ifndef PyObject_GenericGetAttr
762# define PyObject_GenericGetAttr 0
763# endif
764#endif
765/* Py_NotImplemented is defined in 2.1 and up. */
766#if PY_VERSION_HEX < 0x02010000
767# ifndef Py_NotImplemented
768# define Py_NotImplemented PyExc_RuntimeError
769# endif
770#endif
771
772
773/* A crude PyString_AsStringAndSize implementation for old Pythons */
774#if PY_VERSION_HEX < 0x02010000
775# ifndef PyString_AsStringAndSize
776# define PyString_AsStringAndSize(obj, s, len) {*s = PyString_AsString(obj); *len = *s ? strlen(*s) : 0;}
777# endif
778#endif
779
780/* PySequence_Size for old Pythons */
781#if PY_VERSION_HEX < 0x02000000
782# ifndef PySequence_Size
783# define PySequence_Size PySequence_Length
784# endif
785#endif
786
787
788/* PyBool_FromLong for old Pythons */
789#if PY_VERSION_HEX < 0x02030000
790static
791PyObject *PyBool_FromLong(long ok)
792{
793 PyObject *result = ok ? Py_True : Py_False;
794 Py_INCREF(result);
795 return result;
796}
3004cfd8
RD
797#endif
798
0085ce49 799
3004cfd8 800/* -----------------------------------------------------------------------------
0085ce49 801 * error manipulation
3004cfd8
RD
802 * ----------------------------------------------------------------------------- */
803
0085ce49
RD
804SWIGRUNTIME PyObject*
805SWIG_Python_ErrorType(int code) {
806 PyObject* type = 0;
807 switch(code) {
808 case SWIG_MemoryError:
809 type = PyExc_MemoryError;
810 break;
811 case SWIG_IOError:
812 type = PyExc_IOError;
813 break;
814 case SWIG_RuntimeError:
815 type = PyExc_RuntimeError;
816 break;
817 case SWIG_IndexError:
818 type = PyExc_IndexError;
819 break;
820 case SWIG_TypeError:
821 type = PyExc_TypeError;
822 break;
823 case SWIG_DivisionByZero:
824 type = PyExc_ZeroDivisionError;
825 break;
826 case SWIG_OverflowError:
827 type = PyExc_OverflowError;
828 break;
829 case SWIG_SyntaxError:
830 type = PyExc_SyntaxError;
831 break;
832 case SWIG_ValueError:
833 type = PyExc_ValueError;
834 break;
835 case SWIG_SystemError:
836 type = PyExc_SystemError;
837 break;
838 case SWIG_AttributeError:
839 type = PyExc_AttributeError;
840 break;
841 default:
842 type = PyExc_RuntimeError;
843 }
844 return type;
845}
3004cfd8 846
0085ce49
RD
847
848SWIGRUNTIME void
849SWIG_Python_AddErrorMsg(const char* mesg)
850{
851 PyObject *type = 0;
852 PyObject *value = 0;
853 PyObject *traceback = 0;
854
855 if (PyErr_Occurred()) PyErr_Fetch(&type, &value, &traceback);
856 if (value) {
857 PyObject *old_str = PyObject_Str(value);
858 PyErr_Clear();
859 Py_XINCREF(type);
860 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
861 Py_DECREF(old_str);
862 Py_DECREF(value);
863 } else {
864 PyErr_Format(PyExc_RuntimeError, mesg);
865 }
866}
867
868
869
870#if defined(SWIG_PYTHON_NO_THREADS)
871# if defined(SWIG_PYTHON_THREADS)
872# undef SWIG_PYTHON_THREADS
873# endif
874#endif
875#if defined(SWIG_PYTHON_THREADS) /* Threading support is enabled */
876# if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL)
877# if (PY_VERSION_HEX >= 0x02030000) /* For 2.3 or later, use the PyGILState calls */
878# define SWIG_PYTHON_USE_GIL
879# endif
880# endif
881# if defined(SWIG_PYTHON_USE_GIL) /* Use PyGILState threads calls */
882# ifndef SWIG_PYTHON_INITIALIZE_THREADS
883# define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads()
884# endif
885# ifdef __cplusplus /* C++ code */
886 class SWIG_Python_Thread_Block {
887 bool status;
888 PyGILState_STATE state;
889 public:
890 void end() { if (status) { PyGILState_Release(state); status = false;} }
891 SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {}
892 ~SWIG_Python_Thread_Block() { end(); }
893 };
894 class SWIG_Python_Thread_Allow {
895 bool status;
896 PyThreadState *save;
897 public:
898 void end() { if (status) { PyEval_RestoreThread(save); status = false; }}
899 SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {}
900 ~SWIG_Python_Thread_Allow() { end(); }
901 };
902# define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block
903# define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end()
904# define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow
905# define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end()
906# else /* C code */
907# define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure()
908# define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block)
909# define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread()
910# define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow)
911# endif
912# else /* Old thread way, not implemented, user must provide it */
913# if !defined(SWIG_PYTHON_INITIALIZE_THREADS)
914# define SWIG_PYTHON_INITIALIZE_THREADS
915# endif
916# if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK)
917# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
918# endif
919# if !defined(SWIG_PYTHON_THREAD_END_BLOCK)
920# define SWIG_PYTHON_THREAD_END_BLOCK
921# endif
922# if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW)
923# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
924# endif
925# if !defined(SWIG_PYTHON_THREAD_END_ALLOW)
926# define SWIG_PYTHON_THREAD_END_ALLOW
927# endif
928# endif
929#else /* No thread support */
930# define SWIG_PYTHON_INITIALIZE_THREADS
931# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
932# define SWIG_PYTHON_THREAD_END_BLOCK
933# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
934# define SWIG_PYTHON_THREAD_END_ALLOW
3004cfd8
RD
935#endif
936
0085ce49
RD
937/* -----------------------------------------------------------------------------
938 * Python API portion that goes into the runtime
939 * ----------------------------------------------------------------------------- */
3004cfd8 940
0085ce49
RD
941#ifdef __cplusplus
942extern "C" {
943#if 0
944} /* cc-mode */
945#endif
946#endif
3004cfd8
RD
947
948/* -----------------------------------------------------------------------------
949 * Constant declarations
950 * ----------------------------------------------------------------------------- */
951
952/* Constant Types */
d14a1e28
RD
953#define SWIG_PY_POINTER 4
954#define SWIG_PY_BINARY 5
955
3004cfd8
RD
956/* Constant information structure */
957typedef struct swig_const_info {
0085ce49
RD
958 int type;
959 char *name;
960 long lvalue;
961 double dvalue;
962 void *pvalue;
963 swig_type_info **ptype;
3004cfd8
RD
964} swig_const_info;
965
3004cfd8 966#ifdef __cplusplus
0085ce49
RD
967#if 0
968{ /* cc-mode */
969#endif
3004cfd8
RD
970}
971#endif
972
973
0085ce49
RD
974/* -----------------------------------------------------------------------------
975 * See the LICENSE file for information on copyright, usage and redistribution
976 * of SWIG, and the README file for authors - http://www.swig.org/release.html.
977 *
3004cfd8
RD
978 * pyrun.swg
979 *
0085ce49
RD
980 * This file contains the runtime support for Python modules
981 * and includes code for managing global variables and pointer
982 * type checking.
3004cfd8 983 *
0085ce49 984 * ----------------------------------------------------------------------------- */
3004cfd8
RD
985
986/* Common SWIG API */
3004cfd8 987
d1a49b78
RD
988#if PY_VERSION_HEX < 0x02050000
989typedef int Py_ssize_t;
990#endif
991
0085ce49
RD
992/* for raw pointers */
993#define SWIG_Python_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
994#define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Python_ConvertPtr(obj, pptr, type, flags)
995#define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own)
996#define SWIG_NewPointerObj(ptr, type, flags) SWIG_Python_NewPointerObj(ptr, type, flags)
997#define SWIG_CheckImplicit(ty) SWIG_Python_CheckImplicit(ty)
998#define SWIG_AcquirePtr(ptr, src) SWIG_Python_AcquirePtr(ptr, src)
999#define swig_owntype int
3004cfd8 1000
0085ce49
RD
1001/* for raw packed data */
1002#define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1003#define SWIG_NewPackedObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
3004cfd8 1004
0085ce49
RD
1005/* for class or struct pointers */
1006#define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
1007#define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
3004cfd8 1008
0085ce49
RD
1009/* for C or C++ function pointers */
1010#define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_Python_ConvertFunctionPtr(obj, pptr, type)
1011#define SWIG_NewFunctionPtrObj(ptr, type) SWIG_Python_NewPointerObj(ptr, type, 0)
3004cfd8 1012
0085ce49
RD
1013/* for C++ member pointers, ie, member methods */
1014#define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Python_ConvertPacked(obj, ptr, sz, ty)
1015#define SWIG_NewMemberObj(ptr, sz, type) SWIG_Python_NewPackedObj(ptr, sz, type)
32fe5131 1016
3004cfd8 1017
0085ce49 1018/* Runtime API */
3004cfd8 1019
0085ce49
RD
1020#define SWIG_GetModule(clientdata) SWIG_Python_GetModule()
1021#define SWIG_SetModule(clientdata, pointer) SWIG_Python_SetModule(pointer)
1022#define SWIG_NewClientData(obj) PySwigClientData_New(obj)
32fe5131 1023
0085ce49
RD
1024#define SWIG_SetErrorObj SWIG_Python_SetErrorObj
1025#define SWIG_SetErrorMsg SWIG_Python_SetErrorMsg
1026#define SWIG_ErrorType(code) SWIG_Python_ErrorType(code)
1027#define SWIG_Error(code, msg) SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg)
1028#define SWIG_fail goto fail
32fe5131 1029
3004cfd8 1030
0085ce49 1031/* Runtime API implementation */
3004cfd8 1032
0085ce49 1033/* Error manipulation */
3004cfd8 1034
0085ce49
RD
1035SWIGINTERN void
1036SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj) {
1037 SWIG_PYTHON_THREAD_BEGIN_BLOCK;
1038 PyErr_SetObject(errtype, obj);
1039 Py_DECREF(obj);
1040 SWIG_PYTHON_THREAD_END_BLOCK;
3004cfd8
RD
1041}
1042
0085ce49
RD
1043SWIGINTERN void
1044SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg) {
1045 SWIG_PYTHON_THREAD_BEGIN_BLOCK;
1046 PyErr_SetString(errtype, (char *) msg);
1047 SWIG_PYTHON_THREAD_END_BLOCK;
3004cfd8
RD
1048}
1049
0085ce49 1050#define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj)
32fe5131 1051
0085ce49 1052/* Set a constant value */
3004cfd8 1053
0085ce49
RD
1054SWIGINTERN void
1055SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj) {
1056 PyDict_SetItemString(d, (char*) name, obj);
1057 Py_DECREF(obj);
3004cfd8
RD
1058}
1059
0085ce49 1060/* Append a value to the result obj */
3004cfd8 1061
0085ce49
RD
1062SWIGINTERN PyObject*
1063SWIG_Python_AppendOutput(PyObject* result, PyObject* obj) {
1064#if !defined(SWIG_PYTHON_OUTPUT_TUPLE)
1065 if (!result) {
1066 result = obj;
1067 } else if (result == Py_None) {
1068 Py_DECREF(result);
1069 result = obj;
1070 } else {
1071 if (!PyList_Check(result)) {
1072 PyObject *o2 = result;
1073 result = PyList_New(1);
1074 PyList_SetItem(result, 0, o2);
1075 }
1076 PyList_Append(result,obj);
1077 Py_DECREF(obj);
1078 }
1079 return result;
1080#else
1081 PyObject* o2;
1082 PyObject* o3;
1083 if (!result) {
1084 result = obj;
1085 } else if (result == Py_None) {
1086 Py_DECREF(result);
1087 result = obj;
3004cfd8 1088 } else {
0085ce49
RD
1089 if (!PyTuple_Check(result)) {
1090 o2 = result;
1091 result = PyTuple_New(1);
1092 PyTuple_SET_ITEM(result, 0, o2);
1093 }
1094 o3 = PyTuple_New(1);
1095 PyTuple_SET_ITEM(o3, 0, obj);
1096 o2 = result;
1097 result = PySequence_Concat(o2, o3);
1098 Py_DECREF(o2);
1099 Py_DECREF(o3);
3004cfd8 1100 }
0085ce49
RD
1101 return result;
1102#endif
3004cfd8
RD
1103}
1104
0085ce49 1105/* Unpack the argument tuple */
3004cfd8 1106
0085ce49
RD
1107SWIGINTERN int
1108SWIG_Python_UnpackTuple(PyObject *args, const char *name, int min, int max, PyObject **objs)
1109{
1110 if (!args) {
1111 if (!min && !max) {
1112 return 1;
1113 } else {
1114 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got none",
1115 name, (min == max ? "" : "at least "), min);
1116 return 0;
1117 }
1118 }
1119 if (!PyTuple_Check(args)) {
1120 PyErr_SetString(PyExc_SystemError, "UnpackTuple() argument list is not a tuple");
1121 return 0;
1122 } else {
1123 register int l = PyTuple_GET_SIZE(args);
1124 if (l < min) {
1125 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
1126 name, (min == max ? "" : "at least "), min, l);
1127 return 0;
1128 } else if (l > max) {
1129 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
1130 name, (min == max ? "" : "at most "), max, l);
1131 return 0;
1132 } else {
1133 register int i;
1134 for (i = 0; i < l; ++i) {
1135 objs[i] = PyTuple_GET_ITEM(args, i);
1136 }
1137 for (; l < max; ++l) {
1138 objs[l] = 0;
1139 }
1140 return i + 1;
1141 }
1142 }
1143}
1144
1145/* A functor is a function object with one single object argument */
1146#if PY_VERSION_HEX >= 0x02020000
1147#define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunctionObjArgs(functor, obj, NULL);
1148#else
1149#define SWIG_Python_CallFunctor(functor, obj) PyObject_CallFunction(functor, "O", obj);
1150#endif
1151
1152/*
1153 Helper for static pointer initialization for both C and C++ code, for example
1154 static PyObject *SWIG_STATIC_POINTER(MyVar) = NewSomething(...);
1155*/
1156#ifdef __cplusplus
1157#define SWIG_STATIC_POINTER(var) var
1158#else
1159#define SWIG_STATIC_POINTER(var) var = 0; if (!var) var
1160#endif
1161
1162/* -----------------------------------------------------------------------------
1163 * Pointer declarations
1164 * ----------------------------------------------------------------------------- */
1165
1166/* Flags for new pointer objects */
1167#define SWIG_POINTER_NOSHADOW (SWIG_POINTER_OWN << 1)
1168#define SWIG_POINTER_NEW (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN)
1169
1170#define SWIG_POINTER_IMPLICIT_CONV (SWIG_POINTER_DISOWN << 1)
1171
1172#ifdef __cplusplus
1173extern "C" {
1174#if 0
1175} /* cc-mode */
1176#endif
1177#endif
1178
1179/* How to access Py_None */
1180#if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
1181# ifndef SWIG_PYTHON_NO_BUILD_NONE
1182# ifndef SWIG_PYTHON_BUILD_NONE
1183# define SWIG_PYTHON_BUILD_NONE
1184# endif
1185# endif
1186#endif
1187
1188#ifdef SWIG_PYTHON_BUILD_NONE
1189# ifdef Py_None
1190# undef Py_None
1191# define Py_None SWIG_Py_None()
1192# endif
1193SWIGRUNTIMEINLINE PyObject *
1194_SWIG_Py_None(void)
1195{
1196 PyObject *none = Py_BuildValue("");
1197 Py_DECREF(none);
1198 return none;
1199}
1200SWIGRUNTIME PyObject *
1201SWIG_Py_None(void)
1202{
1203 static PyObject *SWIG_STATIC_POINTER(none) = _SWIG_Py_None();
1204 return none;
1205}
1206#endif
1207
1208/* The python void return value */
1209
1210SWIGRUNTIMEINLINE PyObject *
1211SWIG_Py_Void(void)
1212{
1213 PyObject *none = Py_None;
1214 Py_INCREF(none);
1215 return none;
1216}
1217
1218/* PySwigClientData */
1219
1220typedef struct {
1221 PyObject *klass;
1222 PyObject *newraw;
1223 PyObject *newargs;
1224 PyObject *destroy;
1225 int delargs;
1226 int implicitconv;
1227} PySwigClientData;
1228
1229SWIGRUNTIMEINLINE int
1230SWIG_Python_CheckImplicit(swig_type_info *ty)
1231{
1232 PySwigClientData *data = (PySwigClientData *)ty->clientdata;
1233 return data ? data->implicitconv : 0;
1234}
1235
1236SWIGRUNTIMEINLINE PyObject *
1237SWIG_Python_ExceptionType(swig_type_info *desc) {
1238 PySwigClientData *data = desc ? (PySwigClientData *) desc->clientdata : 0;
1239 PyObject *klass = data ? data->klass : 0;
1240 return (klass ? klass : PyExc_RuntimeError);
1241}
1242
1243
1244SWIGRUNTIME PySwigClientData *
1245PySwigClientData_New(PyObject* obj)
1246{
1247 if (!obj) {
1248 return 0;
1249 } else {
1250 PySwigClientData *data = (PySwigClientData *)malloc(sizeof(PySwigClientData));
1251 /* the klass element */
1252 data->klass = obj;
1253 Py_INCREF(data->klass);
1254 /* the newraw method and newargs arguments used to create a new raw instance */
1255 if (PyClass_Check(obj)) {
1256 data->newraw = 0;
1257 data->newargs = obj;
1258 Py_INCREF(obj);
1259 } else {
1260#if (PY_VERSION_HEX < 0x02020000)
1261 data->newraw = 0;
1262#else
1263 data->newraw = PyObject_GetAttrString(data->klass, (char *)"__new__");
1264#endif
1265 if (data->newraw) {
1266 Py_INCREF(data->newraw);
1267 data->newargs = PyTuple_New(1);
1268 PyTuple_SetItem(data->newargs, 0, obj);
1269 } else {
1270 data->newargs = obj;
1271 }
1272 Py_INCREF(data->newargs);
1273 }
1274 /* the destroy method, aka as the C++ delete method */
1275 data->destroy = PyObject_GetAttrString(data->klass, (char *)"__swig_destroy__");
1276 if (PyErr_Occurred()) {
1277 PyErr_Clear();
1278 data->destroy = 0;
1279 }
1280 if (data->destroy) {
1281 int flags;
1282 Py_INCREF(data->destroy);
1283 flags = PyCFunction_GET_FLAGS(data->destroy);
1284#ifdef METH_O
1285 data->delargs = !(flags & (METH_O));
1286#else
1287 data->delargs = 0;
1288#endif
1289 } else {
1290 data->delargs = 0;
1291 }
1292 data->implicitconv = 0;
1293 return data;
1294 }
1295}
1296
1297SWIGRUNTIME void
1298PySwigClientData_Del(PySwigClientData* data)
1299{
1300 Py_XDECREF(data->newraw);
1301 Py_XDECREF(data->newargs);
1302 Py_XDECREF(data->destroy);
1303}
1304
1305/* =============== PySwigObject =====================*/
1306
1307typedef struct {
1308 PyObject_HEAD
1309 void *ptr;
1310 swig_type_info *ty;
1311 int own;
1312 PyObject *next;
1313} PySwigObject;
1314
1315SWIGRUNTIME PyObject *
1316PySwigObject_long(PySwigObject *v)
1317{
1318 return PyLong_FromVoidPtr(v->ptr);
1319}
1320
1321SWIGRUNTIME PyObject *
1322PySwigObject_format(const char* fmt, PySwigObject *v)
1323{
1324 PyObject *res = NULL;
1325 PyObject *args = PyTuple_New(1);
1326 if (args) {
1327 if (PyTuple_SetItem(args, 0, PySwigObject_long(v)) == 0) {
1328 PyObject *ofmt = PyString_FromString(fmt);
1329 if (ofmt) {
1330 res = PyString_Format(ofmt,args);
1331 Py_DECREF(ofmt);
1332 }
1333 Py_DECREF(args);
1334 }
1335 }
1336 return res;
1337}
1338
1339SWIGRUNTIME PyObject *
1340PySwigObject_oct(PySwigObject *v)
1341{
1342 return PySwigObject_format("%o",v);
1343}
1344
1345SWIGRUNTIME PyObject *
1346PySwigObject_hex(PySwigObject *v)
1347{
1348 return PySwigObject_format("%x",v);
1349}
1350
1351SWIGRUNTIME PyObject *
1352#ifdef METH_NOARGS
1353PySwigObject_repr(PySwigObject *v)
1354#else
1355PySwigObject_repr(PySwigObject *v, PyObject *args)
1356#endif
1357{
1358 const char *name = SWIG_TypePrettyName(v->ty);
1359 PyObject *hex = PySwigObject_hex(v);
1360 PyObject *repr = PyString_FromFormat("<Swig Object of type '%s' at 0x%s>", name, PyString_AsString(hex));
1361 Py_DECREF(hex);
1362 if (v->next) {
1363#ifdef METH_NOARGS
1364 PyObject *nrep = PySwigObject_repr((PySwigObject *)v->next);
1365#else
1366 PyObject *nrep = PySwigObject_repr((PySwigObject *)v->next, args);
1367#endif
1368 PyString_ConcatAndDel(&repr,nrep);
1369 }
1370 return repr;
1371}
1372
1373SWIGRUNTIME int
1374PySwigObject_print(PySwigObject *v, FILE *fp, int SWIGUNUSEDPARM(flags))
1375{
1376#ifdef METH_NOARGS
1377 PyObject *repr = PySwigObject_repr(v);
1378#else
1379 PyObject *repr = PySwigObject_repr(v, NULL);
1380#endif
1381 if (repr) {
1382 fputs(PyString_AsString(repr), fp);
1383 Py_DECREF(repr);
1384 return 0;
1385 } else {
1386 return 1;
1387 }
1388}
1389
1390SWIGRUNTIME PyObject *
1391PySwigObject_str(PySwigObject *v)
1392{
1393 char result[SWIG_BUFFER_SIZE];
1394 return SWIG_PackVoidPtr(result, v->ptr, v->ty->name, sizeof(result)) ?
1395 PyString_FromString(result) : 0;
1396}
1397
1398SWIGRUNTIME int
1399PySwigObject_compare(PySwigObject *v, PySwigObject *w)
1400{
1401 void *i = v->ptr;
1402 void *j = w->ptr;
1403 return (i < j) ? -1 : ((i > j) ? 1 : 0);
1404}
1405
1406SWIGRUNTIME PyTypeObject* _PySwigObject_type(void);
1407
1408SWIGRUNTIME PyTypeObject*
1409PySwigObject_type(void) {
1410 static PyTypeObject *SWIG_STATIC_POINTER(type) = _PySwigObject_type();
1411 return type;
1412}
1413
1414SWIGRUNTIMEINLINE int
1415PySwigObject_Check(PyObject *op) {
1416 return ((op)->ob_type == PySwigObject_type())
1417 || (strcmp((op)->ob_type->tp_name,"PySwigObject") == 0);
1418}
1419
1420SWIGRUNTIME PyObject *
1421PySwigObject_New(void *ptr, swig_type_info *ty, int own);
1422
1423SWIGRUNTIME void
1424PySwigObject_dealloc(PyObject *v)
1425{
1426 PySwigObject *sobj = (PySwigObject *) v;
1427 PyObject *next = sobj->next;
1428 if (sobj->own) {
1429 swig_type_info *ty = sobj->ty;
1430 PySwigClientData *data = ty ? (PySwigClientData *) ty->clientdata : 0;
1431 PyObject *destroy = data ? data->destroy : 0;
1432 if (destroy) {
1433 /* destroy is always a VARARGS method */
1434 PyObject *res;
1435 if (data->delargs) {
1436 /* we need to create a temporal object to carry the destroy operation */
1437 PyObject *tmp = PySwigObject_New(sobj->ptr, ty, 0);
1438 res = SWIG_Python_CallFunctor(destroy, tmp);
1439 Py_DECREF(tmp);
1440 } else {
1441 PyCFunction meth = PyCFunction_GET_FUNCTION(destroy);
1442 PyObject *mself = PyCFunction_GET_SELF(destroy);
1443 res = ((*meth)(mself, v));
1444 }
1445 Py_XDECREF(res);
1446 } else {
1447 const char *name = SWIG_TypePrettyName(ty);
1448#if !defined(SWIG_PYTHON_SILENT_MEMLEAK)
1449 printf("swig/python detected a memory leak of type '%s', no destructor found.\n", name);
1450#endif
1451 }
1452 }
1453 Py_XDECREF(next);
1454 PyObject_DEL(v);
1455}
1456
1457SWIGRUNTIME PyObject*
1458PySwigObject_append(PyObject* v, PyObject* next)
1459{
1460 PySwigObject *sobj = (PySwigObject *) v;
1461#ifndef METH_O
1462 PyObject *tmp = 0;
1463 if (!PyArg_ParseTuple(next,(char *)"O:append", &tmp)) return NULL;
1464 next = tmp;
1465#endif
1466 if (!PySwigObject_Check(next)) {
1467 return NULL;
1468 }
1469 sobj->next = next;
1470 Py_INCREF(next);
1471 return SWIG_Py_Void();
1472}
1473
1474SWIGRUNTIME PyObject*
1475#ifdef METH_NOARGS
1476PySwigObject_next(PyObject* v)
1477#else
1478PySwigObject_next(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1479#endif
1480{
1481 PySwigObject *sobj = (PySwigObject *) v;
1482 if (sobj->next) {
1483 Py_INCREF(sobj->next);
1484 return sobj->next;
1485 } else {
1486 return SWIG_Py_Void();
1487 }
1488}
1489
1490SWIGINTERN PyObject*
1491#ifdef METH_NOARGS
1492PySwigObject_disown(PyObject *v)
1493#else
1494PySwigObject_disown(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1495#endif
1496{
1497 PySwigObject *sobj = (PySwigObject *)v;
1498 sobj->own = 0;
1499 return SWIG_Py_Void();
1500}
1501
1502SWIGINTERN PyObject*
1503#ifdef METH_NOARGS
1504PySwigObject_acquire(PyObject *v)
1505#else
1506PySwigObject_acquire(PyObject* v, PyObject *SWIGUNUSEDPARM(args))
1507#endif
1508{
1509 PySwigObject *sobj = (PySwigObject *)v;
1510 sobj->own = SWIG_POINTER_OWN;
1511 return SWIG_Py_Void();
1512}
1513
1514SWIGINTERN PyObject*
1515PySwigObject_own(PyObject *v, PyObject *args)
1516{
1517 PyObject *val = 0;
1518#if (PY_VERSION_HEX < 0x02020000)
1519 if (!PyArg_ParseTuple(args,(char *)"|O:own",&val))
1520#else
1521 if (!PyArg_UnpackTuple(args, (char *)"own", 0, 1, &val))
1522#endif
1523 {
1524 return NULL;
1525 }
1526 else
1527 {
1528 PySwigObject *sobj = (PySwigObject *)v;
1529 PyObject *obj = PyBool_FromLong(sobj->own);
1530 if (val) {
1531#ifdef METH_NOARGS
1532 if (PyObject_IsTrue(val)) {
1533 PySwigObject_acquire(v);
1534 } else {
1535 PySwigObject_disown(v);
1536 }
1537#else
1538 if (PyObject_IsTrue(val)) {
1539 PySwigObject_acquire(v,args);
1540 } else {
1541 PySwigObject_disown(v,args);
1542 }
1543#endif
1544 }
1545 return obj;
1546 }
1547}
1548
1549#ifdef METH_O
1550static PyMethodDef
1551swigobject_methods[] = {
1552 {(char *)"disown", (PyCFunction)PySwigObject_disown, METH_NOARGS, (char *)"releases ownership of the pointer"},
1553 {(char *)"acquire", (PyCFunction)PySwigObject_acquire, METH_NOARGS, (char *)"aquires ownership of the pointer"},
1554 {(char *)"own", (PyCFunction)PySwigObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
1555 {(char *)"append", (PyCFunction)PySwigObject_append, METH_O, (char *)"appends another 'this' object"},
1556 {(char *)"next", (PyCFunction)PySwigObject_next, METH_NOARGS, (char *)"returns the next 'this' object"},
1557 {(char *)"__repr__",(PyCFunction)PySwigObject_repr, METH_NOARGS, (char *)"returns object representation"},
1558 {0, 0, 0, 0}
1559};
1560#else
1561static PyMethodDef
1562swigobject_methods[] = {
1563 {(char *)"disown", (PyCFunction)PySwigObject_disown, METH_VARARGS, (char *)"releases ownership of the pointer"},
1564 {(char *)"acquire", (PyCFunction)PySwigObject_acquire, METH_VARARGS, (char *)"aquires ownership of the pointer"},
1565 {(char *)"own", (PyCFunction)PySwigObject_own, METH_VARARGS, (char *)"returns/sets ownership of the pointer"},
1566 {(char *)"append", (PyCFunction)PySwigObject_append, METH_VARARGS, (char *)"appends another 'this' object"},
1567 {(char *)"next", (PyCFunction)PySwigObject_next, METH_VARARGS, (char *)"returns the next 'this' object"},
1568 {(char *)"__repr__",(PyCFunction)PySwigObject_repr, METH_VARARGS, (char *)"returns object representation"},
1569 {0, 0, 0, 0}
1570};
1571#endif
1572
1573#if PY_VERSION_HEX < 0x02020000
1574SWIGINTERN PyObject *
1575PySwigObject_getattr(PySwigObject *sobj,char *name)
1576{
1577 return Py_FindMethod(swigobject_methods, (PyObject *)sobj, name);
1578}
1579#endif
1580
1581SWIGRUNTIME PyTypeObject*
1582_PySwigObject_type(void) {
1583 static char swigobject_doc[] = "Swig object carries a C/C++ instance pointer";
1584
1585 static PyNumberMethods PySwigObject_as_number = {
1586 (binaryfunc)0, /*nb_add*/
1587 (binaryfunc)0, /*nb_subtract*/
3004cfd8
RD
1588 (binaryfunc)0, /*nb_multiply*/
1589 (binaryfunc)0, /*nb_divide*/
1590 (binaryfunc)0, /*nb_remainder*/
1591 (binaryfunc)0, /*nb_divmod*/
1592 (ternaryfunc)0,/*nb_power*/
1593 (unaryfunc)0, /*nb_negative*/
1594 (unaryfunc)0, /*nb_positive*/
1595 (unaryfunc)0, /*nb_absolute*/
1596 (inquiry)0, /*nb_nonzero*/
1597 0, /*nb_invert*/
1598 0, /*nb_lshift*/
1599 0, /*nb_rshift*/
1600 0, /*nb_and*/
1601 0, /*nb_xor*/
1602 0, /*nb_or*/
1603 (coercion)0, /*nb_coerce*/
1604 (unaryfunc)PySwigObject_long, /*nb_int*/
1605 (unaryfunc)PySwigObject_long, /*nb_long*/
1606 (unaryfunc)0, /*nb_float*/
1607 (unaryfunc)PySwigObject_oct, /*nb_oct*/
1608 (unaryfunc)PySwigObject_hex, /*nb_hex*/
32fe5131 1609#if PY_VERSION_HEX >= 0x02020000
3004cfd8 1610 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */
32fe5131
RD
1611#elif PY_VERSION_HEX >= 0x02000000
1612 0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */
3004cfd8
RD
1613#endif
1614 };
1615
0085ce49 1616 static PyTypeObject pyswigobject_type;
32fe5131 1617 static int type_init = 0;
3004cfd8 1618 if (!type_init) {
0085ce49
RD
1619 const PyTypeObject tmp
1620 = {
1621 PyObject_HEAD_INIT(NULL)
1622 0, /* ob_size */
1623 (char *)"PySwigObject", /* tp_name */
1624 sizeof(PySwigObject), /* tp_basicsize */
1625 0, /* tp_itemsize */
1626 (destructor)PySwigObject_dealloc, /* tp_dealloc */
1627 (printfunc)PySwigObject_print, /* tp_print */
1628#if PY_VERSION_HEX < 0x02020000
1629 (getattrfunc)PySwigObject_getattr, /* tp_getattr */
1630#else
1631 (getattrfunc)0, /* tp_getattr */
3004cfd8 1632#endif
0085ce49
RD
1633 (setattrfunc)0, /* tp_setattr */
1634 (cmpfunc)PySwigObject_compare, /* tp_compare */
1635 (reprfunc)PySwigObject_repr, /* tp_repr */
1636 &PySwigObject_as_number, /* tp_as_number */
1637 0, /* tp_as_sequence */
1638 0, /* tp_as_mapping */
1639 (hashfunc)0, /* tp_hash */
1640 (ternaryfunc)0, /* tp_call */
1641 (reprfunc)PySwigObject_str, /* tp_str */
1642 PyObject_GenericGetAttr, /* tp_getattro */
1643 0, /* tp_setattro */
1644 0, /* tp_as_buffer */
1645 Py_TPFLAGS_DEFAULT, /* tp_flags */
1646 swigobject_doc, /* tp_doc */
1647 0, /* tp_traverse */
1648 0, /* tp_clear */
1649 0, /* tp_richcompare */
1650 0, /* tp_weaklistoffset */
3004cfd8 1651#if PY_VERSION_HEX >= 0x02020000
0085ce49
RD
1652 0, /* tp_iter */
1653 0, /* tp_iternext */
1654 swigobject_methods, /* tp_methods */
1655 0, /* tp_members */
1656 0, /* tp_getset */
1657 0, /* tp_base */
1658 0, /* tp_dict */
1659 0, /* tp_descr_get */
1660 0, /* tp_descr_set */
1661 0, /* tp_dictoffset */
1662 0, /* tp_init */
1663 0, /* tp_alloc */
1664 0, /* tp_new */
1665 0, /* tp_free */
1666 0, /* tp_is_gc */
1667 0, /* tp_bases */
1668 0, /* tp_mro */
1669 0, /* tp_cache */
1670 0, /* tp_subclasses */
1671 0, /* tp_weaklist */
3004cfd8
RD
1672#endif
1673#if PY_VERSION_HEX >= 0x02030000
0085ce49 1674 0, /* tp_del */
3004cfd8
RD
1675#endif
1676#ifdef COUNT_ALLOCS
0085ce49 1677 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 1678#endif
0085ce49 1679 };
32fe5131 1680 pyswigobject_type = tmp;
0085ce49 1681 pyswigobject_type.ob_type = &PyType_Type;
3004cfd8
RD
1682 type_init = 1;
1683 }
32fe5131 1684 return &pyswigobject_type;
3004cfd8
RD
1685}
1686
1687SWIGRUNTIME PyObject *
0085ce49 1688PySwigObject_New(void *ptr, swig_type_info *ty, int own)
3004cfd8 1689{
0085ce49
RD
1690 PySwigObject *sobj = PyObject_NEW(PySwigObject, PySwigObject_type());
1691 if (sobj) {
1692 sobj->ptr = ptr;
1693 sobj->ty = ty;
1694 sobj->own = own;
1695 sobj->next = 0;
32fe5131 1696 }
0085ce49 1697 return (PyObject *)sobj;
3004cfd8
RD
1698}
1699
1700/* -----------------------------------------------------------------------------
1701 * Implements a simple Swig Packed type, and use it instead of string
1702 * ----------------------------------------------------------------------------- */
1703
1704typedef struct {
1705 PyObject_HEAD
1706 void *pack;
0085ce49 1707 swig_type_info *ty;
3004cfd8
RD
1708 size_t size;
1709} PySwigPacked;
1710
1711SWIGRUNTIME int
0085ce49 1712PySwigPacked_print(PySwigPacked *v, FILE *fp, int SWIGUNUSEDPARM(flags))
3004cfd8
RD
1713{
1714 char result[SWIG_BUFFER_SIZE];
1715 fputs("<Swig Packed ", fp);
1716 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
1717 fputs("at ", fp);
1718 fputs(result, fp);
1719 }
0085ce49 1720 fputs(v->ty->name,fp);
3004cfd8
RD
1721 fputs(">", fp);
1722 return 0;
1723}
1724
1725SWIGRUNTIME PyObject *
1726PySwigPacked_repr(PySwigPacked *v)
1727{
1728 char result[SWIG_BUFFER_SIZE];
1729 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
0085ce49 1730 return PyString_FromFormat("<Swig Packed at %s%s>", result, v->ty->name);
3004cfd8 1731 } else {
0085ce49 1732 return PyString_FromFormat("<Swig Packed %s>", v->ty->name);
3004cfd8
RD
1733 }
1734}
1735
1736SWIGRUNTIME PyObject *
1737PySwigPacked_str(PySwigPacked *v)
1738{
1739 char result[SWIG_BUFFER_SIZE];
1740 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
0085ce49 1741 return PyString_FromFormat("%s%s", result, v->ty->name);
3004cfd8 1742 } else {
0085ce49 1743 return PyString_FromString(v->ty->name);
3004cfd8
RD
1744 }
1745}
1746
1747SWIGRUNTIME int
1748PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
1749{
0085ce49
RD
1750 size_t i = v->size;
1751 size_t j = w->size;
1752 int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
1753 return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
1754}
1755
1756SWIGRUNTIME PyTypeObject* _PySwigPacked_type(void);
1757
1758SWIGRUNTIME PyTypeObject*
1759PySwigPacked_type(void) {
1760 static PyTypeObject *SWIG_STATIC_POINTER(type) = _PySwigPacked_type();
1761 return type;
1762}
1763
1764SWIGRUNTIMEINLINE int
1765PySwigPacked_Check(PyObject *op) {
1766 return ((op)->ob_type == _PySwigPacked_type())
1767 || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
3004cfd8
RD
1768}
1769
1770SWIGRUNTIME void
0085ce49 1771PySwigPacked_dealloc(PyObject *v)
3004cfd8 1772{
0085ce49
RD
1773 if (PySwigPacked_Check(v)) {
1774 PySwigPacked *sobj = (PySwigPacked *) v;
1775 free(sobj->pack);
1776 }
1777 PyObject_DEL(v);
3004cfd8
RD
1778}
1779
1780SWIGRUNTIME PyTypeObject*
0085ce49
RD
1781_PySwigPacked_type(void) {
1782 static char swigpacked_doc[] = "Swig object carries a C/C++ instance pointer";
1783 static PyTypeObject pyswigpacked_type;
32fe5131 1784 static int type_init = 0;
3004cfd8 1785 if (!type_init) {
0085ce49
RD
1786 const PyTypeObject tmp
1787 = {
1788 PyObject_HEAD_INIT(NULL)
1789 0, /* ob_size */
1790 (char *)"PySwigPacked", /* tp_name */
1791 sizeof(PySwigPacked), /* tp_basicsize */
1792 0, /* tp_itemsize */
1793 (destructor)PySwigPacked_dealloc, /* tp_dealloc */
1794 (printfunc)PySwigPacked_print, /* tp_print */
1795 (getattrfunc)0, /* tp_getattr */
1796 (setattrfunc)0, /* tp_setattr */
1797 (cmpfunc)PySwigPacked_compare, /* tp_compare */
1798 (reprfunc)PySwigPacked_repr, /* tp_repr */
1799 0, /* tp_as_number */
1800 0, /* tp_as_sequence */
1801 0, /* tp_as_mapping */
1802 (hashfunc)0, /* tp_hash */
1803 (ternaryfunc)0, /* tp_call */
1804 (reprfunc)PySwigPacked_str, /* tp_str */
1805 PyObject_GenericGetAttr, /* tp_getattro */
1806 0, /* tp_setattro */
1807 0, /* tp_as_buffer */
1808 Py_TPFLAGS_DEFAULT, /* tp_flags */
1809 swigpacked_doc, /* tp_doc */
1810 0, /* tp_traverse */
1811 0, /* tp_clear */
1812 0, /* tp_richcompare */
1813 0, /* tp_weaklistoffset */
1814#if PY_VERSION_HEX >= 0x02020000
1815 0, /* tp_iter */
1816 0, /* tp_iternext */
1817 0, /* tp_methods */
1818 0, /* tp_members */
1819 0, /* tp_getset */
1820 0, /* tp_base */
1821 0, /* tp_dict */
1822 0, /* tp_descr_get */
1823 0, /* tp_descr_set */
1824 0, /* tp_dictoffset */
1825 0, /* tp_init */
1826 0, /* tp_alloc */
1827 0, /* tp_new */
1828 0, /* tp_free */
1829 0, /* tp_is_gc */
1830 0, /* tp_bases */
1831 0, /* tp_mro */
1832 0, /* tp_cache */
1833 0, /* tp_subclasses */
1834 0, /* tp_weaklist */
3004cfd8
RD
1835#endif
1836#if PY_VERSION_HEX >= 0x02030000
0085ce49 1837 0, /* tp_del */
3004cfd8
RD
1838#endif
1839#ifdef COUNT_ALLOCS
0085ce49 1840 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 1841#endif
0085ce49 1842 };
32fe5131 1843 pyswigpacked_type = tmp;
0085ce49 1844 pyswigpacked_type.ob_type = &PyType_Type;
3004cfd8
RD
1845 type_init = 1;
1846 }
32fe5131 1847 return &pyswigpacked_type;
3004cfd8
RD
1848}
1849
1850SWIGRUNTIME PyObject *
0085ce49 1851PySwigPacked_New(void *ptr, size_t size, swig_type_info *ty)
3004cfd8 1852{
0085ce49
RD
1853 PySwigPacked *sobj = PyObject_NEW(PySwigPacked, PySwigPacked_type());
1854 if (sobj) {
3004cfd8 1855 void *pack = malloc(size);
32fe5131
RD
1856 if (pack) {
1857 memcpy(pack, ptr, size);
0085ce49
RD
1858 sobj->pack = pack;
1859 sobj->ty = ty;
1860 sobj->size = size;
1861 } else {
1862 PyObject_DEL((PyObject *) sobj);
1863 sobj = 0;
32fe5131 1864 }
3004cfd8 1865 }
0085ce49 1866 return (PyObject *) sobj;
3004cfd8
RD
1867}
1868
0085ce49 1869SWIGRUNTIME swig_type_info *
3004cfd8
RD
1870PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
1871{
0085ce49
RD
1872 if (PySwigPacked_Check(obj)) {
1873 PySwigPacked *sobj = (PySwigPacked *)obj;
1874 if (sobj->size != size) return 0;
1875 memcpy(ptr, sobj->pack, size);
1876 return sobj->ty;
1877 } else {
1878 return 0;
1879 }
3004cfd8
RD
1880}
1881
3004cfd8 1882/* -----------------------------------------------------------------------------
0085ce49 1883 * pointers/data manipulation
3004cfd8
RD
1884 * ----------------------------------------------------------------------------- */
1885
0085ce49
RD
1886SWIGRUNTIMEINLINE PyObject *
1887_SWIG_This(void)
1888{
1889 return PyString_FromString("this");
1890}
3004cfd8 1891
0085ce49
RD
1892SWIGRUNTIME PyObject *
1893SWIG_This(void)
1894{
1895 static PyObject *SWIG_STATIC_POINTER(swig_this) = _SWIG_This();
1896 return swig_this;
1897}
3004cfd8 1898
0085ce49 1899/* #define SWIG_PYTHON_SLOW_GETSET_THIS */
3004cfd8 1900
0085ce49
RD
1901SWIGRUNTIME PySwigObject *
1902SWIG_Python_GetSwigThis(PyObject *pyobj)
3004cfd8 1903{
0085ce49
RD
1904 if (PySwigObject_Check(pyobj)) {
1905 return (PySwigObject *) pyobj;
1906 } else {
1907 PyObject *obj = 0;
1908#if (!defined(SWIG_PYTHON_SLOW_GETSET_THIS) && (PY_VERSION_HEX >= 0x02030000))
1909 if (PyInstance_Check(pyobj)) {
1910 obj = _PyInstance_Lookup(pyobj, SWIG_This());
1911 } else {
1912 PyObject **dictptr = _PyObject_GetDictPtr(pyobj);
1913 if (dictptr != NULL) {
1914 PyObject *dict = *dictptr;
1915 obj = dict ? PyDict_GetItem(dict, SWIG_This()) : 0;
1916 } else {
1917#ifdef PyWeakref_CheckProxy
1918 if (PyWeakref_CheckProxy(pyobj)) {
1919 PyObject *wobj = PyWeakref_GET_OBJECT(pyobj);
1920 return wobj ? SWIG_Python_GetSwigThis(wobj) : 0;
1921 }
1922#endif
1923 obj = PyObject_GetAttr(pyobj,SWIG_This());
1924 if (obj) {
1925 Py_DECREF(obj);
3004cfd8 1926 } else {
0085ce49
RD
1927 if (PyErr_Occurred()) PyErr_Clear();
1928 return 0;
3004cfd8 1929 }
3004cfd8 1930 }
0085ce49
RD
1931 }
1932#else
1933 obj = PyObject_GetAttr(pyobj,SWIG_This());
1934 if (obj) {
1935 Py_DECREF(obj);
1936 } else {
1937 if (PyErr_Occurred()) PyErr_Clear();
1938 return 0;
1939 }
1940#endif
1941 if (obj && !PySwigObject_Check(obj)) {
1942 /* a PyObject is called 'this', try to get the 'real this'
1943 PySwigObject from it */
1944 return SWIG_Python_GetSwigThis(obj);
1945 }
1946 return (PySwigObject *)obj;
3004cfd8
RD
1947 }
1948}
1949
0085ce49
RD
1950/* Acquire a pointer value */
1951
1952SWIGRUNTIME int
1953SWIG_Python_AcquirePtr(PyObject *obj, int own) {
1954 if (own) {
1955 PySwigObject *sobj = SWIG_Python_GetSwigThis(obj);
1956 if (sobj) {
1957 int oldown = sobj->own;
1958 sobj->own = own;
1959 return oldown;
1960 }
3004cfd8 1961 }
0085ce49 1962 return 0;
3004cfd8
RD
1963}
1964
0085ce49
RD
1965/* Convert a pointer value */
1966
3004cfd8 1967SWIGRUNTIME int
0085ce49
RD
1968SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own) {
1969 if (!obj) return SWIG_ERROR;
1970 if (obj == Py_None) {
1971 if (ptr) *ptr = 0;
1972 return SWIG_OK;
1973 } else {
1974 PySwigObject *sobj = SWIG_Python_GetSwigThis(obj);
1975 while (sobj) {
1976 void *vptr = sobj->ptr;
1977 if (ty) {
1978 swig_type_info *to = sobj->ty;
1979 if (to == ty) {
1980 /* no type cast needed */
1981 if (ptr) *ptr = vptr;
1982 break;
1983 } else {
1984 swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
1985 if (!tc) {
1986 sobj = (PySwigObject *)sobj->next;
1987 } else {
1988 if (ptr) *ptr = SWIG_TypeCast(tc,vptr);
1989 break;
1990 }
1991 }
3004cfd8 1992 } else {
0085ce49
RD
1993 if (ptr) *ptr = vptr;
1994 break;
3004cfd8 1995 }
3004cfd8 1996 }
0085ce49
RD
1997 if (sobj) {
1998 if (own) *own = sobj->own;
1999 if (flags & SWIG_POINTER_DISOWN) {
2000 sobj->own = 0;
2001 }
2002 return SWIG_OK;
2003 } else {
2004 int res = SWIG_ERROR;
2005 if (flags & SWIG_POINTER_IMPLICIT_CONV) {
2006 PySwigClientData *data = ty ? (PySwigClientData *) ty->clientdata : 0;
2007 if (data && !data->implicitconv) {
2008 PyObject *klass = data->klass;
2009 if (klass) {
2010 PyObject *impconv;
2011 data->implicitconv = 1; /* avoid recursion and call 'explicit' constructors*/
2012 impconv = SWIG_Python_CallFunctor(klass, obj);
2013 data->implicitconv = 0;
2014 if (PyErr_Occurred()) {
2015 PyErr_Clear();
2016 impconv = 0;
2017 }
2018 if (impconv) {
2019 PySwigObject *iobj = SWIG_Python_GetSwigThis(impconv);
2020 if (iobj) {
2021 void *vptr;
2022 res = SWIG_Python_ConvertPtrAndOwn((PyObject*)iobj, &vptr, ty, 0, 0);
2023 if (SWIG_IsOK(res)) {
2024 if (ptr) {
2025 *ptr = vptr;
2026 /* transfer the ownership to 'ptr' */
2027 iobj->own = 0;
2028 res = SWIG_AddCast(res);
2029 res = SWIG_AddNewMask(res);
2030 } else {
2031 res = SWIG_AddCast(res);
2032 }
2033 }
2034 }
2035 Py_DECREF(impconv);
2036 }
2037 }
2038 }
2039 }
2040 return res;
2041 }
3004cfd8
RD
2042 }
2043}
2044
0085ce49
RD
2045/* Convert a function ptr value */
2046
3004cfd8 2047SWIGRUNTIME int
0085ce49
RD
2048SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty) {
2049 if (!PyCFunction_Check(obj)) {
2050 return SWIG_ConvertPtr(obj, ptr, ty, 0);
3004cfd8 2051 } else {
0085ce49
RD
2052 void *vptr = 0;
2053
2054 /* here we get the method pointer for callbacks */
d1a49b78 2055 const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
0085ce49
RD
2056 const char *desc = doc ? strstr(doc, "swig_ptr: ") : 0;
2057 if (desc) {
2058 desc = ty ? SWIG_UnpackVoidPtr(desc + 10, &vptr, ty->name) : 0;
2059 if (!desc) return SWIG_ERROR;
2060 }
2061 if (ty) {
2062 swig_cast_info *tc = SWIG_TypeCheck(desc,ty);
2063 if (!tc) return SWIG_ERROR;
2064 *ptr = SWIG_TypeCast(tc,vptr);
2065 } else {
2066 *ptr = vptr;
2067 }
2068 return SWIG_OK;
3004cfd8
RD
2069 }
2070}
2071
0085ce49 2072/* Convert a packed value value */
3004cfd8 2073
3004cfd8 2074SWIGRUNTIME int
0085ce49
RD
2075SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty) {
2076 swig_type_info *to = PySwigPacked_UnpackData(obj, ptr, sz);
2077 if (!to) return SWIG_ERROR;
2078 if (ty) {
2079 if (to != ty) {
2080 /* check type cast? */
2081 swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
2082 if (!tc) return SWIG_ERROR;
2083 }
3004cfd8 2084 }
0085ce49
RD
2085 return SWIG_OK;
2086}
3004cfd8 2087
0085ce49
RD
2088/* -----------------------------------------------------------------------------
2089 * Create a new pointer object
2090 * ----------------------------------------------------------------------------- */
3004cfd8 2091
0085ce49
RD
2092/*
2093 Create a new instance object, whitout calling __init__, and set the
2094 'this' attribute.
2095*/
3004cfd8 2096
0085ce49
RD
2097SWIGRUNTIME PyObject*
2098SWIG_Python_NewShadowInstance(PySwigClientData *data, PyObject *swig_this)
2099{
2100#if (PY_VERSION_HEX >= 0x02020000)
2101 PyObject *inst = 0;
2102 PyObject *newraw = data->newraw;
2103 if (newraw) {
2104 inst = PyObject_Call(newraw, data->newargs, NULL);
2105 if (inst) {
2106#if !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2107 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2108 if (dictptr != NULL) {
2109 PyObject *dict = *dictptr;
2110 if (dict == NULL) {
2111 dict = PyDict_New();
2112 *dictptr = dict;
2113 PyDict_SetItem(dict, SWIG_This(), swig_this);
2114 }
3004cfd8 2115 }
0085ce49
RD
2116#else
2117 PyObject *key = SWIG_This();
2118 PyObject_SetAttr(inst, key, swig_this);
2119#endif
3004cfd8 2120 }
0085ce49
RD
2121 } else {
2122 PyObject *dict = PyDict_New();
2123 PyDict_SetItem(dict, SWIG_This(), swig_this);
2124 inst = PyInstance_NewRaw(data->newargs, dict);
2125 Py_DECREF(dict);
3004cfd8 2126 }
0085ce49
RD
2127 return inst;
2128#else
2129#if (PY_VERSION_HEX >= 0x02010000)
2130 PyObject *inst;
2131 PyObject *dict = PyDict_New();
2132 PyDict_SetItem(dict, SWIG_This(), swig_this);
2133 inst = PyInstance_NewRaw(data->newargs, dict);
2134 Py_DECREF(dict);
2135 return (PyObject *) inst;
2136#else
2137 PyInstanceObject *inst = PyObject_NEW(PyInstanceObject, &PyInstance_Type);
2138 if (inst == NULL) {
2139 return NULL;
3004cfd8 2140 }
0085ce49
RD
2141 inst->in_class = (PyClassObject *)data->newargs;
2142 Py_INCREF(inst->in_class);
2143 inst->in_dict = PyDict_New();
2144 if (inst->in_dict == NULL) {
2145 Py_DECREF(inst);
2146 return NULL;
3004cfd8 2147 }
0085ce49
RD
2148#ifdef Py_TPFLAGS_HAVE_WEAKREFS
2149 inst->in_weakreflist = NULL;
2150#endif
2151#ifdef Py_TPFLAGS_GC
2152 PyObject_GC_Init(inst);
2153#endif
2154 PyDict_SetItem(inst->in_dict, SWIG_This(), swig_this);
2155 return (PyObject *) inst;
2156#endif
2157#endif
3004cfd8 2158}
d14a1e28 2159
0085ce49
RD
2160SWIGRUNTIME void
2161SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
2162{
2163 PyObject *dict;
2164#if (PY_VERSION_HEX >= 0x02020000) && !defined(SWIG_PYTHON_SLOW_GETSET_THIS)
2165 PyObject **dictptr = _PyObject_GetDictPtr(inst);
2166 if (dictptr != NULL) {
2167 dict = *dictptr;
2168 if (dict == NULL) {
2169 dict = PyDict_New();
2170 *dictptr = dict;
2171 }
2172 PyDict_SetItem(dict, SWIG_This(), swig_this);
2173 return;
2174 }
3004cfd8 2175#endif
0085ce49
RD
2176 dict = PyObject_GetAttrString(inst, "__dict__");
2177 PyDict_SetItem(dict, SWIG_This(), swig_this);
2178 Py_DECREF(dict);
2179}
d14a1e28 2180
0085ce49
RD
2181
2182SWIGINTERN PyObject *
2183SWIG_Python_InitShadowInstance(PyObject *args) {
2184 PyObject *obj[2];
2185 if (!SWIG_Python_UnpackTuple(args,(char*)"swiginit", 2, 2, obj)) {
2186 return NULL;
2187 } else {
2188 PySwigObject *sthis = SWIG_Python_GetSwigThis(obj[0]);
2189 if (sthis) {
2190 PySwigObject_append((PyObject*) sthis, obj[1]);
3004cfd8 2191 } else {
0085ce49 2192 SWIG_Python_SetSwigThis(obj[0], obj[1]);
3004cfd8 2193 }
0085ce49 2194 return SWIG_Py_Void();
3004cfd8 2195 }
0085ce49
RD
2196}
2197
2198/* Create a new pointer object */
3004cfd8 2199
3004cfd8 2200SWIGRUNTIME PyObject *
0085ce49 2201SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
3004cfd8 2202 if (!ptr) {
0085ce49
RD
2203 return SWIG_Py_Void();
2204 } else {
2205 int own = (flags & SWIG_POINTER_OWN) ? SWIG_POINTER_OWN : 0;
2206 PyObject *robj = PySwigObject_New(ptr, type, own);
2207 PySwigClientData *clientdata = type ? (PySwigClientData *)(type->clientdata) : 0;
2208 if (clientdata && !(flags & SWIG_POINTER_NOSHADOW)) {
2209 PyObject *inst = SWIG_Python_NewShadowInstance(clientdata, robj);
2210 if (inst) {
2211 Py_DECREF(robj);
2212 robj = inst;
3004cfd8 2213 }
3004cfd8 2214 }
0085ce49 2215 return robj;
3004cfd8 2216 }
3004cfd8 2217}
d14a1e28 2218
0085ce49
RD
2219/* Create a new packed object */
2220
2221SWIGRUNTIMEINLINE PyObject *
3004cfd8 2222SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
0085ce49 2223 return ptr ? PySwigPacked_New((void *) ptr, sz, type) : SWIG_Py_Void();
3004cfd8 2224}
d14a1e28 2225
3004cfd8
RD
2226/* -----------------------------------------------------------------------------*
2227 * Get type list
2228 * -----------------------------------------------------------------------------*/
d14a1e28 2229
3004cfd8
RD
2230#ifdef SWIG_LINK_RUNTIME
2231void *SWIG_ReturnGlobalTypeList(void *);
2232#endif
d14a1e28 2233
32fe5131
RD
2234SWIGRUNTIME swig_module_info *
2235SWIG_Python_GetModule(void) {
3004cfd8
RD
2236 static void *type_pointer = (void *)0;
2237 /* first check if module already created */
2238 if (!type_pointer) {
2239#ifdef SWIG_LINK_RUNTIME
2240 type_pointer = SWIG_ReturnGlobalTypeList((void *)0);
2241#else
2242 type_pointer = PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
2243 (char*)"type_pointer" SWIG_TYPE_TABLE_NAME);
2244 if (PyErr_Occurred()) {
2245 PyErr_Clear();
2246 type_pointer = (void *)0;
2247 }
3004cfd8 2248#endif
32fe5131
RD
2249 }
2250 return (swig_module_info *) type_pointer;
3004cfd8 2251}
d14a1e28 2252
32fe5131
RD
2253#if PY_MAJOR_VERSION < 2
2254/* PyModule_AddObject function was introduced in Python 2.0. The following function
0085ce49 2255 is copied out of Python/modsupport.c in python version 2.3.4 */
32fe5131
RD
2256SWIGINTERN int
2257PyModule_AddObject(PyObject *m, char *name, PyObject *o)
2258{
2259 PyObject *dict;
2260 if (!PyModule_Check(m)) {
2261 PyErr_SetString(PyExc_TypeError,
2262 "PyModule_AddObject() needs module as first arg");
0085ce49 2263 return SWIG_ERROR;
32fe5131
RD
2264 }
2265 if (!o) {
2266 PyErr_SetString(PyExc_TypeError,
2267 "PyModule_AddObject() needs non-NULL value");
0085ce49 2268 return SWIG_ERROR;
32fe5131
RD
2269 }
2270
2271 dict = PyModule_GetDict(m);
2272 if (dict == NULL) {
2273 /* Internal error -- modules must have a dict! */
2274 PyErr_Format(PyExc_SystemError, "module '%s' has no __dict__",
2275 PyModule_GetName(m));
0085ce49 2276 return SWIG_ERROR;
32fe5131
RD
2277 }
2278 if (PyDict_SetItemString(dict, name, o))
0085ce49 2279 return SWIG_ERROR;
32fe5131 2280 Py_DECREF(o);
0085ce49 2281 return SWIG_OK;
3004cfd8 2282}
32fe5131 2283#endif
d14a1e28 2284
0085ce49
RD
2285SWIGRUNTIME void
2286SWIG_Python_DestroyModule(void *vptr)
2287{
2288 swig_module_info *swig_module = (swig_module_info *) vptr;
2289 swig_type_info **types = swig_module->types;
2290 size_t i;
2291 for (i =0; i < swig_module->size; ++i) {
2292 swig_type_info *ty = types[i];
2293 if (ty->owndata) {
2294 PySwigClientData *data = (PySwigClientData *) ty->clientdata;
2295 if (data) PySwigClientData_Del(data);
2296 }
2297 }
2298 Py_DECREF(SWIG_This());
2299}
2300
32fe5131
RD
2301SWIGRUNTIME void
2302SWIG_Python_SetModule(swig_module_info *swig_module) {
2303 static PyMethodDef swig_empty_runtime_method_table[] = { {NULL, NULL, 0, NULL} };/* Sentinel */
2304
2305 PyObject *module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION,
2306 swig_empty_runtime_method_table);
0085ce49 2307 PyObject *pointer = PyCObject_FromVoidPtr((void *) swig_module, SWIG_Python_DestroyModule);
32fe5131
RD
2308 if (pointer && module) {
2309 PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME, pointer);
0085ce49
RD
2310 } else {
2311 Py_XDECREF(pointer);
32fe5131
RD
2312 }
2313}
d14a1e28 2314
0085ce49
RD
2315/* The python cached type query */
2316SWIGRUNTIME PyObject *
2317SWIG_Python_TypeCache() {
2318 static PyObject *SWIG_STATIC_POINTER(cache) = PyDict_New();
2319 return cache;
d14a1e28 2320}
d14a1e28 2321
0085ce49
RD
2322SWIGRUNTIME swig_type_info *
2323SWIG_Python_TypeQuery(const char *type)
2324{
2325 PyObject *cache = SWIG_Python_TypeCache();
2326 PyObject *key = PyString_FromString(type);
2327 PyObject *obj = PyDict_GetItem(cache, key);
2328 swig_type_info *descriptor;
2329 if (obj) {
2330 descriptor = (swig_type_info *) PyCObject_AsVoidPtr(obj);
2331 } else {
2332 swig_module_info *swig_module = SWIG_Python_GetModule();
2333 descriptor = SWIG_TypeQueryModule(swig_module, swig_module, type);
2334 if (descriptor) {
2335 obj = PyCObject_FromVoidPtr(descriptor, NULL);
2336 PyDict_SetItem(cache, key, obj);
2337 Py_DECREF(obj);
2338 }
2339 }
2340 Py_DECREF(key);
2341 return descriptor;
2342}
d14a1e28 2343
0085ce49
RD
2344/*
2345 For backward compatibility only
2346*/
2347#define SWIG_POINTER_EXCEPTION 0
2348#define SWIG_arg_fail(arg) SWIG_Python_ArgFail(arg)
2349#define SWIG_MustGetPtr(p, type, argnum, flags) SWIG_Python_MustGetPtr(p, type, argnum, flags)
d14a1e28 2350
0085ce49
RD
2351SWIGRUNTIME int
2352SWIG_Python_AddErrMesg(const char* mesg, int infront)
2353{
2354 if (PyErr_Occurred()) {
2355 PyObject *type = 0;
2356 PyObject *value = 0;
2357 PyObject *traceback = 0;
2358 PyErr_Fetch(&type, &value, &traceback);
2359 if (value) {
2360 PyObject *old_str = PyObject_Str(value);
2361 Py_XINCREF(type);
2362 PyErr_Clear();
2363 if (infront) {
2364 PyErr_Format(type, "%s %s", mesg, PyString_AsString(old_str));
2365 } else {
2366 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
2367 }
2368 Py_DECREF(old_str);
2369 }
2370 return 1;
2371 } else {
2372 return 0;
2373 }
2374}
2375
2376SWIGRUNTIME int
2377SWIG_Python_ArgFail(int argnum)
2378{
2379 if (PyErr_Occurred()) {
2380 /* add information about failing argument */
2381 char mesg[256];
2382 PyOS_snprintf(mesg, sizeof(mesg), "argument number %d:", argnum);
2383 return SWIG_Python_AddErrMesg(mesg, 1);
2384 } else {
2385 return 0;
2386 }
2387}
2388
2389SWIGRUNTIMEINLINE const char *
2390PySwigObject_GetDesc(PyObject *self)
2391{
2392 PySwigObject *v = (PySwigObject *)self;
2393 swig_type_info *ty = v ? v->ty : 0;
2394 return ty ? ty->str : (char*)"";
2395}
2396
2397SWIGRUNTIME void
2398SWIG_Python_TypeError(const char *type, PyObject *obj)
2399{
2400 if (type) {
2401#if defined(SWIG_COBJECT_TYPES)
2402 if (obj && PySwigObject_Check(obj)) {
2403 const char *otype = (const char *) PySwigObject_GetDesc(obj);
2404 if (otype) {
2405 PyErr_Format(PyExc_TypeError, "a '%s' is expected, 'PySwigObject(%s)' is received",
2406 type, otype);
2407 return;
2408 }
2409 } else
2410#endif
2411 {
2412 const char *otype = (obj ? obj->ob_type->tp_name : 0);
2413 if (otype) {
2414 PyObject *str = PyObject_Str(obj);
2415 const char *cstr = str ? PyString_AsString(str) : 0;
2416 if (cstr) {
2417 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
2418 type, otype, cstr);
2419 } else {
2420 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
2421 type, otype);
2422 }
2423 Py_XDECREF(str);
2424 return;
2425 }
2426 }
2427 PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
2428 } else {
2429 PyErr_Format(PyExc_TypeError, "unexpected type is received");
2430 }
2431}
2432
2433
2434/* Convert a pointer value, signal an exception on a type mismatch */
2435SWIGRUNTIME void *
2436SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
2437 void *result;
2438 if (SWIG_Python_ConvertPtr(obj, &result, ty, flags) == -1) {
2439 PyErr_Clear();
2440 if (flags & SWIG_POINTER_EXCEPTION) {
2441 SWIG_Python_TypeError(SWIG_TypePrettyName(ty), obj);
2442 SWIG_Python_ArgFail(argnum);
2443 }
2444 }
2445 return result;
2446}
2447
2448
2449#ifdef __cplusplus
2450#if 0
2451{ /* cc-mode */
2452#endif
2453}
2454#endif
2455
2456
2457
2458#define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
2459
2460#define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
2461
2462
2463
2464/* -------- TYPES TABLE (BEGIN) -------- */
2465
2466#define SWIGTYPE_p_char swig_types[0]
2467#define SWIGTYPE_p_form_ops_t swig_types[1]
2468#define SWIGTYPE_p_int swig_types[2]
2469#define SWIGTYPE_p_unsigned_char swig_types[3]
2470#define SWIGTYPE_p_unsigned_int swig_types[4]
2471#define SWIGTYPE_p_unsigned_long swig_types[5]
2472#define SWIGTYPE_p_wxANIHandler swig_types[6]
2473#define SWIGTYPE_p_wxAcceleratorTable swig_types[7]
2474#define SWIGTYPE_p_wxActivateEvent swig_types[8]
2475#define SWIGTYPE_p_wxBMPHandler swig_types[9]
2476#define SWIGTYPE_p_wxBoxSizer swig_types[10]
32fe5131
RD
2477#define SWIGTYPE_p_wxCURHandler swig_types[11]
2478#define SWIGTYPE_p_wxChildFocusEvent swig_types[12]
2131d850
RD
2479#define SWIGTYPE_p_wxClipboardTextEvent swig_types[13]
2480#define SWIGTYPE_p_wxCloseEvent swig_types[14]
2481#define SWIGTYPE_p_wxCommandEvent swig_types[15]
2482#define SWIGTYPE_p_wxContextMenuEvent swig_types[16]
2483#define SWIGTYPE_p_wxControl swig_types[17]
2484#define SWIGTYPE_p_wxControlWithItems swig_types[18]
2485#define SWIGTYPE_p_wxDateEvent swig_types[19]
2486#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[20]
2487#define SWIGTYPE_p_wxDropFilesEvent swig_types[21]
2488#define SWIGTYPE_p_wxDuplexMode swig_types[22]
2489#define SWIGTYPE_p_wxEraseEvent swig_types[23]
2490#define SWIGTYPE_p_wxEvent swig_types[24]
2491#define SWIGTYPE_p_wxEvtHandler swig_types[25]
2492#define SWIGTYPE_p_wxFSFile swig_types[26]
2493#define SWIGTYPE_p_wxFileSystem swig_types[27]
2494#define SWIGTYPE_p_wxFlexGridSizer swig_types[28]
2495#define SWIGTYPE_p_wxFocusEvent swig_types[29]
2496#define SWIGTYPE_p_wxGBSizerItem swig_types[30]
2497#define SWIGTYPE_p_wxGIFHandler swig_types[31]
2498#define SWIGTYPE_p_wxGLCanvas swig_types[32]
2499#define SWIGTYPE_p_wxGLContext swig_types[33]
2500#define SWIGTYPE_p_wxGridBagSizer swig_types[34]
2501#define SWIGTYPE_p_wxGridSizer swig_types[35]
2502#define SWIGTYPE_p_wxICOHandler swig_types[36]
2503#define SWIGTYPE_p_wxIconizeEvent swig_types[37]
2504#define SWIGTYPE_p_wxIdleEvent swig_types[38]
2505#define SWIGTYPE_p_wxImage swig_types[39]
2506#define SWIGTYPE_p_wxImageHandler swig_types[40]
2507#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[41]
2508#define SWIGTYPE_p_wxInitDialogEvent swig_types[42]
2509#define SWIGTYPE_p_wxJPEGHandler swig_types[43]
2510#define SWIGTYPE_p_wxKeyEvent swig_types[44]
2511#define SWIGTYPE_p_wxLayoutConstraints swig_types[45]
2512#define SWIGTYPE_p_wxMaximizeEvent swig_types[46]
2513#define SWIGTYPE_p_wxMenu swig_types[47]
2514#define SWIGTYPE_p_wxMenuBar swig_types[48]
2515#define SWIGTYPE_p_wxMenuEvent swig_types[49]
2516#define SWIGTYPE_p_wxMenuItem swig_types[50]
2517#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[51]
34e0a3bb
RD
2518#define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[52]
2519#define SWIGTYPE_p_wxMouseEvent swig_types[53]
2520#define SWIGTYPE_p_wxMoveEvent swig_types[54]
2521#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[55]
2522#define SWIGTYPE_p_wxNcPaintEvent swig_types[56]
2523#define SWIGTYPE_p_wxNotifyEvent swig_types[57]
2524#define SWIGTYPE_p_wxObject swig_types[58]
2525#define SWIGTYPE_p_wxPCXHandler swig_types[59]
2526#define SWIGTYPE_p_wxPNGHandler swig_types[60]
2527#define SWIGTYPE_p_wxPNMHandler swig_types[61]
2528#define SWIGTYPE_p_wxPaintEvent swig_types[62]
2529#define SWIGTYPE_p_wxPalette swig_types[63]
2530#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[64]
2531#define SWIGTYPE_p_wxPaperSize swig_types[65]
2532#define SWIGTYPE_p_wxPyApp swig_types[66]
2533#define SWIGTYPE_p_wxPyCommandEvent swig_types[67]
2534#define SWIGTYPE_p_wxPyEvent swig_types[68]
2535#define SWIGTYPE_p_wxPyImageHandler swig_types[69]
2536#define SWIGTYPE_p_wxPySizer swig_types[70]
2537#define SWIGTYPE_p_wxPyValidator swig_types[71]
2538#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[72]
2539#define SWIGTYPE_p_wxScrollEvent swig_types[73]
2540#define SWIGTYPE_p_wxScrollWinEvent swig_types[74]
2541#define SWIGTYPE_p_wxSetCursorEvent swig_types[75]
2542#define SWIGTYPE_p_wxShowEvent swig_types[76]
2543#define SWIGTYPE_p_wxSizeEvent swig_types[77]
2544#define SWIGTYPE_p_wxSizer swig_types[78]
2545#define SWIGTYPE_p_wxSizerItem swig_types[79]
2546#define SWIGTYPE_p_wxStaticBoxSizer swig_types[80]
2547#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[81]
2548#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[82]
580080c5
RD
2549#define SWIGTYPE_p_wxTGAHandler swig_types[83]
2550#define SWIGTYPE_p_wxTIFFHandler swig_types[84]
2551#define SWIGTYPE_p_wxUpdateUIEvent swig_types[85]
2552#define SWIGTYPE_p_wxValidator swig_types[86]
2553#define SWIGTYPE_p_wxWindow swig_types[87]
2554#define SWIGTYPE_p_wxWindowCreateEvent swig_types[88]
2555#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[89]
2556#define SWIGTYPE_p_wxXPMHandler swig_types[90]
2557static swig_type_info *swig_types[92];
2558static swig_module_info swig_module = {swig_types, 91, 0, 0, 0, 0};
32fe5131
RD
2559#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
2560#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
d14a1e28
RD
2561
2562/* -------- TYPES TABLE (END) -------- */
2563
0085ce49
RD
2564#if (PY_VERSION_HEX <= 0x02000000)
2565# if !defined(SWIG_PYTHON_CLASSIC)
2566# error "This python version requires to use swig with the '-classic' option"
2567# endif
2568#endif
2569#if (PY_VERSION_HEX <= 0x02020000)
2570# error "This python version requires to use swig with the '-nomodern' option"
2571#endif
2572#if (PY_VERSION_HEX <= 0x02020000)
2573# error "This python version requires to use swig with the '-nomodernargs' option"
2574#endif
2575#ifndef METH_O
2576# error "This python version requires to use swig with the '-nofastunpack' option"
2577#endif
d14a1e28
RD
2578
2579/*-----------------------------------------------
2580 @(target):= _glcanvas.so
2581 ------------------------------------------------*/
2582#define SWIG_init init_glcanvas
2583
2584#define SWIG_name "_glcanvas"
2585
0085ce49 2586#define SWIGVERSION 0x010329
d14a1e28 2587
d14a1e28 2588
0085ce49
RD
2589#define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
2590#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
d14a1e28 2591
994141e6 2592
0085ce49 2593#include <stdexcept>
994141e6
RD
2594
2595
0085ce49
RD
2596namespace swig {
2597 class PyObject_ptr {
2598 protected:
2599 PyObject *_obj;
15afbcd0 2600
0085ce49
RD
2601 public:
2602 PyObject_ptr() :_obj(0)
2603 {
2604 }
15afbcd0 2605
0085ce49
RD
2606 PyObject_ptr(const PyObject_ptr& item) : _obj(item._obj)
2607 {
2608 Py_XINCREF(_obj);
15afbcd0 2609 }
0085ce49
RD
2610
2611 PyObject_ptr(PyObject *obj, bool initial_ref = true) :_obj(obj)
2612 {
2613 if (initial_ref) Py_XINCREF(_obj);
69223c70 2614 }
0085ce49
RD
2615
2616 PyObject_ptr & operator=(const PyObject_ptr& item)
2617 {
2618 Py_XINCREF(item._obj);
2619 Py_XDECREF(_obj);
2620 _obj = item._obj;
2621 return *this;
2622 }
2623
2624 ~PyObject_ptr()
2625 {
2626 Py_XDECREF(_obj);
2627 }
2628
2629 operator PyObject *() const
2630 {
2631 return _obj;
2632 }
2633
2634 PyObject *operator->() const
2635 {
2636 return _obj;
2637 }
2638 };
994141e6
RD
2639}
2640
15afbcd0 2641
0085ce49
RD
2642namespace swig {
2643 struct PyObject_var : PyObject_ptr {
2644 PyObject_var(PyObject* obj = 0) : PyObject_ptr(obj, false) { }
2645
2646 PyObject_var & operator = (PyObject* obj)
2647 {
2648 Py_XDECREF(_obj);
2649 _obj = obj;
2650 return *this;
c32bde28 2651 }
0085ce49 2652 };
15afbcd0 2653}
0085ce49
RD
2654
2655
2656#include "wx/wxPython/wxPython.h"
2657#include "wx/wxPython/pyclasses.h"
2658
2659#include <wx/glcanvas.h>
2660
2661
2662 static const wxString wxPyGLCanvasNameStr(wxT("GLCanvas"));
2663 static const wxString wxPyEmptyString(wxEmptyString);
2664
0085ce49 2665 #define SWIG_From_long PyInt_FromLong
c32bde28
RD
2666
2667
0085ce49
RD
2668SWIGINTERNINLINE PyObject *
2669SWIG_From_int (int value)
2670{
2671 return SWIG_From_long (value);
c32bde28
RD
2672}
2673
2674
0085ce49
RD
2675#include <limits.h>
2676#ifndef LLONG_MIN
2677# define LLONG_MIN LONG_LONG_MIN
2678#endif
2679#ifndef LLONG_MAX
2680# define LLONG_MAX LONG_LONG_MAX
2681#endif
2682#ifndef ULLONG_MAX
2683# define ULLONG_MAX ULONG_LONG_MAX
2684#endif
c32bde28 2685
c32bde28 2686
97ab0f6a
RD
2687SWIGINTERN int
2688SWIG_AsVal_long (PyObject* obj, long* val)
2689{
2690 if (PyNumber_Check(obj)) {
2691 if (val) *val = PyInt_AsLong(obj);
2692 return SWIG_OK;
2693 }
2694 return SWIG_TypeError;
2695}
2696
2697
0085ce49
RD
2698SWIGINTERN int
2699SWIG_AsVal_int (PyObject * obj, int *val)
c32bde28 2700{
0085ce49
RD
2701 long v;
2702 int res = SWIG_AsVal_long (obj, &v);
2703 if (SWIG_IsOK(res)) {
2704 if ((v < INT_MIN || v > INT_MAX)) {
2705 return SWIG_OverflowError;
2706 } else {
2707 if (val) *val = static_cast< int >(v);
2708 }
2709 }
2710 return res;
15afbcd0
RD
2711}
2712
d14a1e28
RD
2713#ifdef __cplusplus
2714extern "C" {
2715#endif
0085ce49
RD
2716SWIGINTERN int GLCanvasNameStr_set(PyObject *) {
2717 SWIG_Error(SWIG_AttributeError,"Variable GLCanvasNameStr is read-only.");
2718 return 1;
b2dc1044
RD
2719}
2720
2721
0085ce49
RD
2722SWIGINTERN PyObject *GLCanvasNameStr_get(void) {
2723 PyObject *pyobj = 0;
2724
2725 {
b2dc1044 2726#if wxUSE_UNICODE
0085ce49 2727 pyobj = PyUnicode_FromWideChar((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
b2dc1044 2728#else
0085ce49 2729 pyobj = PyString_FromStringAndSize((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
b2dc1044 2730#endif
0085ce49
RD
2731 }
2732 return pyobj;
2733}
2734
2735
2736SWIGINTERN PyObject *_wrap_new_GLContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2737 PyObject *resultobj = 0;
97ab0f6a
RD
2738 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
2739 wxGLContext *arg2 = (wxGLContext *) NULL ;
0085ce49 2740 wxGLContext *result = 0 ;
97ab0f6a
RD
2741 void *argp1 = 0 ;
2742 int res1 = 0 ;
0085ce49
RD
2743 void *argp2 = 0 ;
2744 int res2 = 0 ;
0085ce49
RD
2745 PyObject * obj0 = 0 ;
2746 PyObject * obj1 = 0 ;
0085ce49 2747 char * kwnames[] = {
97ab0f6a 2748 (char *) "win",(char *) "other", NULL
0085ce49
RD
2749 };
2750
97ab0f6a
RD
2751 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|O:new_GLContext",kwnames,&obj0,&obj1)) SWIG_fail;
2752 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
2753 if (!SWIG_IsOK(res1)) {
2754 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GLContext" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
0085ce49 2755 }
97ab0f6a
RD
2756 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
2757 if (obj1) {
2758 res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGLContext, 0 | 0 );
2759 if (!SWIG_IsOK(res2)) {
2760 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_GLContext" "', expected argument " "2"" of type '" "wxGLContext const *""'");
d14a1e28 2761 }
97ab0f6a 2762 arg2 = reinterpret_cast< wxGLContext * >(argp2);
0085ce49
RD
2763 }
2764 {
2765 if (!wxPyCheckForApp()) SWIG_fail;
2766 PyThreadState* __tstate = wxPyBeginAllowThreads();
97ab0f6a 2767 result = (wxGLContext *)new wxGLContext(arg1,(wxGLContext const *)arg2);
0085ce49
RD
2768 wxPyEndAllowThreads(__tstate);
2769 if (PyErr_Occurred()) SWIG_fail;
2770 }
2771 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLContext, SWIG_POINTER_NEW | 0 );
2772 return resultobj;
2773fail:
2774 return NULL;
d14a1e28
RD
2775}
2776
2777
0085ce49
RD
2778SWIGINTERN PyObject *_wrap_delete_GLContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2779 PyObject *resultobj = 0;
2780 wxGLContext *arg1 = (wxGLContext *) 0 ;
2781 void *argp1 = 0 ;
2782 int res1 = 0 ;
2783 PyObject *swig_obj[1] ;
2784
2785 if (!args) SWIG_fail;
2786 swig_obj[0] = args;
2787 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, SWIG_POINTER_DISOWN | 0 );
2788 if (!SWIG_IsOK(res1)) {
2789 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GLContext" "', expected argument " "1"" of type '" "wxGLContext *""'");
2790 }
2791 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2792 {
2793 PyThreadState* __tstate = wxPyBeginAllowThreads();
2794 delete arg1;
d14a1e28 2795
0085ce49
RD
2796 wxPyEndAllowThreads(__tstate);
2797 if (PyErr_Occurred()) SWIG_fail;
2798 }
2799 resultobj = SWIG_Py_Void();
2800 return resultobj;
2801fail:
2802 return NULL;
d14a1e28
RD
2803}
2804
2805
97ab0f6a 2806SWIGINTERN PyObject *_wrap_GLContext_SetCurrent(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
0085ce49
RD
2807 PyObject *resultobj = 0;
2808 wxGLContext *arg1 = (wxGLContext *) 0 ;
97ab0f6a 2809 wxGLCanvas *arg2 = 0 ;
0085ce49
RD
2810 void *argp1 = 0 ;
2811 int res1 = 0 ;
2812 void *argp2 = 0 ;
2813 int res2 = 0 ;
2814 PyObject * obj0 = 0 ;
2815 PyObject * obj1 = 0 ;
2816 char * kwnames[] = {
97ab0f6a 2817 (char *) "self",(char *) "win", NULL
0085ce49
RD
2818 };
2819
97ab0f6a 2820 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetCurrent",kwnames,&obj0,&obj1)) SWIG_fail;
0085ce49
RD
2821 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2822 if (!SWIG_IsOK(res1)) {
97ab0f6a 2823 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SetCurrent" "', expected argument " "1"" of type '" "wxGLContext *""'");
0085ce49
RD
2824 }
2825 arg1 = reinterpret_cast< wxGLContext * >(argp1);
97ab0f6a 2826 res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxGLCanvas, 0 | 0);
0085ce49 2827 if (!SWIG_IsOK(res2)) {
97ab0f6a 2828 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GLContext_SetCurrent" "', expected argument " "2"" of type '" "wxGLCanvas const &""'");
0085ce49
RD
2829 }
2830 if (!argp2) {
97ab0f6a 2831 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GLContext_SetCurrent" "', expected argument " "2"" of type '" "wxGLCanvas const &""'");
0085ce49 2832 }
97ab0f6a 2833 arg2 = reinterpret_cast< wxGLCanvas * >(argp2);
0085ce49
RD
2834 {
2835 PyThreadState* __tstate = wxPyBeginAllowThreads();
97ab0f6a 2836 (arg1)->SetCurrent((wxGLCanvas const &)*arg2);
0085ce49
RD
2837 wxPyEndAllowThreads(__tstate);
2838 if (PyErr_Occurred()) SWIG_fail;
2839 }
2840 resultobj = SWIG_Py_Void();
2841 return resultobj;
2842fail:
2843 return NULL;
d14a1e28
RD
2844}
2845
2846
0085ce49
RD
2847SWIGINTERN PyObject *GLContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2848 PyObject *obj;
2849 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
2850 SWIG_TypeNewClientData(SWIGTYPE_p_wxGLContext, SWIG_NewClientData(obj));
2851 return SWIG_Py_Void();
2852}
2853
2854SWIGINTERN PyObject *GLContext_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2855 return SWIG_Python_InitShadowInstance(args);
2856}
2857
2858SWIGINTERN PyObject *_wrap_new_GLCanvas(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2859 PyObject *resultobj = 0;
2860 wxWindow *arg1 = (wxWindow *) 0 ;
2861 int arg2 = (int) -1 ;
2862 wxPoint const &arg3_defvalue = wxDefaultPosition ;
2863 wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
2864 wxSize const &arg4_defvalue = wxDefaultSize ;
2865 wxSize *arg4 = (wxSize *) &arg4_defvalue ;
2866 long arg5 = (long) 0 ;
2867 wxString const &arg6_defvalue = wxPyGLCanvasNameStr ;
2868 wxString *arg6 = (wxString *) &arg6_defvalue ;
2869 int *arg7 = (int *) NULL ;
2870 wxPalette const &arg8_defvalue = wxNullPalette ;
2871 wxPalette *arg8 = (wxPalette *) &arg8_defvalue ;
2872 wxGLCanvas *result = 0 ;
2873 void *argp1 = 0 ;
2874 int res1 = 0 ;
2875 int val2 ;
2876 int ecode2 = 0 ;
2877 wxPoint temp3 ;
2878 wxSize temp4 ;
2879 long val5 ;
2880 int ecode5 = 0 ;
2881 bool temp6 = false ;
2882 int *temp7 ;
2883 void *argp8 = 0 ;
2884 int res8 = 0 ;
2885 PyObject * obj0 = 0 ;
2886 PyObject * obj1 = 0 ;
2887 PyObject * obj2 = 0 ;
2888 PyObject * obj3 = 0 ;
2889 PyObject * obj4 = 0 ;
2890 PyObject * obj5 = 0 ;
2891 PyObject * obj6 = 0 ;
2892 PyObject * obj7 = 0 ;
2893 char * kwnames[] = {
2894 (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
2895 };
2896
2897 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOO:new_GLCanvas",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
2898 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 );
2899 if (!SWIG_IsOK(res1)) {
2900 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GLCanvas" "', expected argument " "1"" of type '" "wxWindow *""'");
2901 }
2902 arg1 = reinterpret_cast< wxWindow * >(argp1);
2903 if (obj1) {
2904 ecode2 = SWIG_AsVal_int(obj1, &val2);
2905 if (!SWIG_IsOK(ecode2)) {
2906 SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_GLCanvas" "', expected argument " "2"" of type '" "int""'");
2907 }
2908 arg2 = static_cast< int >(val2);
2909 }
2910 if (obj2) {
d14a1e28 2911 {
0085ce49
RD
2912 arg3 = &temp3;
2913 if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
d14a1e28 2914 }
0085ce49
RD
2915 }
2916 if (obj3) {
d14a1e28 2917 {
0085ce49
RD
2918 arg4 = &temp4;
2919 if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
d14a1e28 2920 }
0085ce49
RD
2921 }
2922 if (obj4) {
2923 ecode5 = SWIG_AsVal_long(obj4, &val5);
2924 if (!SWIG_IsOK(ecode5)) {
2925 SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_GLCanvas" "', expected argument " "5"" of type '" "long""'");
2926 }
2927 arg5 = static_cast< long >(val5);
2928 }
2929 if (obj5) {
d14a1e28 2930 {
0085ce49
RD
2931 arg6 = wxString_in_helper(obj5);
2932 if (arg6 == NULL) SWIG_fail;
2933 temp6 = true;
d14a1e28 2934 }
0085ce49
RD
2935 }
2936 if (obj6) {
d14a1e28 2937 {
0085ce49
RD
2938 int i;
2939 if (PySequence_Check(obj6)) {
2940 int size = PyObject_Length(obj6);
2941 temp7 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
2942 for (i = 0; i < size; i++) {
2943 temp7[i] = PyInt_AsLong(PySequence_GetItem(obj6, i));
3004cfd8 2944 }
0085ce49
RD
2945 temp7[size] = 0;
2946 arg7 = temp7;
2947 }
994141e6 2948 }
0085ce49
RD
2949 }
2950 if (obj7) {
2951 res8 = SWIG_ConvertPtr(obj7, &argp8, SWIGTYPE_p_wxPalette, 0 | 0);
2952 if (!SWIG_IsOK(res8)) {
2953 SWIG_exception_fail(SWIG_ArgError(res8), "in method '" "new_GLCanvas" "', expected argument " "8"" of type '" "wxPalette const &""'");
d14a1e28 2954 }
0085ce49
RD
2955 if (!argp8) {
2956 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_GLCanvas" "', expected argument " "8"" of type '" "wxPalette const &""'");
d14a1e28 2957 }
0085ce49
RD
2958 arg8 = reinterpret_cast< wxPalette * >(argp8);
2959 }
2960 {
2961 if (!wxPyCheckForApp()) SWIG_fail;
2962 PyThreadState* __tstate = wxPyBeginAllowThreads();
2963 result = (wxGLCanvas *)new wxGLCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6,arg7,(wxPalette const &)*arg8);
2964 wxPyEndAllowThreads(__tstate);
2965 if (PyErr_Occurred()) SWIG_fail;
2966 }
2967 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_NEW | 0 );
2968 {
2969 if (temp6)
2970 delete arg6;
2971 }
2972 {
2973 delete [] arg7;
2974 }
2975 return resultobj;
2976fail:
2977 {
2978 if (temp6)
2979 delete arg6;
2980 }
2981 {
2982 delete [] arg7;
2983 }
2984 return NULL;
2985}
2986
2987
2988SWIGINTERN PyObject *_wrap_new_GLCanvasWithContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2989 PyObject *resultobj = 0;
2990 wxWindow *arg1 = (wxWindow *) 0 ;
2991 wxGLContext *arg2 = (wxGLContext *) NULL ;
2992 int arg3 = (int) -1 ;
2993 wxPoint const &arg4_defvalue = wxDefaultPosition ;
2994 wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
2995 wxSize const &arg5_defvalue = wxDefaultSize ;
2996 wxSize *arg5 = (wxSize *) &arg5_defvalue ;
2997 long arg6 = (long) 0 ;
2998 wxString const &arg7_defvalue = wxPyGLCanvasNameStr ;
2999 wxString *arg7 = (wxString *) &arg7_defvalue ;
3000 int *arg8 = (int *) NULL ;
3001 wxPalette const &arg9_defvalue = wxNullPalette ;
3002 wxPalette *arg9 = (wxPalette *) &arg9_defvalue ;
3003 wxGLCanvas *result = 0 ;
3004 void *argp1 = 0 ;
3005 int res1 = 0 ;
3006 void *argp2 = 0 ;
3007 int res2 = 0 ;
3008 int val3 ;
3009 int ecode3 = 0 ;
3010 wxPoint temp4 ;
3011 wxSize temp5 ;
3012 long val6 ;
3013 int ecode6 = 0 ;
3014 bool temp7 = false ;
3015 int *temp8 ;
3016 void *argp9 = 0 ;
3017 int res9 = 0 ;
3018 PyObject * obj0 = 0 ;
3019 PyObject * obj1 = 0 ;
3020 PyObject * obj2 = 0 ;
3021 PyObject * obj3 = 0 ;
3022 PyObject * obj4 = 0 ;
3023 PyObject * obj5 = 0 ;
3024 PyObject * obj6 = 0 ;
3025 PyObject * obj7 = 0 ;
3026 PyObject * obj8 = 0 ;
3027 char * kwnames[] = {
3028 (char *) "parent",(char *) "shared",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
3029 };
3030
3031 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_GLCanvasWithContext",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) SWIG_fail;
3032 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 );
3033 if (!SWIG_IsOK(res1)) {
3034 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GLCanvasWithContext" "', expected argument " "1"" of type '" "wxWindow *""'");
3035 }
3036 arg1 = reinterpret_cast< wxWindow * >(argp1);
3037 if (obj1) {
3038 res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGLContext, 0 | 0 );
3039 if (!SWIG_IsOK(res2)) {
3040 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_GLCanvasWithContext" "', expected argument " "2"" of type '" "wxGLContext const *""'");
d14a1e28 3041 }
0085ce49
RD
3042 arg2 = reinterpret_cast< wxGLContext * >(argp2);
3043 }
3044 if (obj2) {
3045 ecode3 = SWIG_AsVal_int(obj2, &val3);
3046 if (!SWIG_IsOK(ecode3)) {
3047 SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_GLCanvasWithContext" "', expected argument " "3"" of type '" "int""'");
3048 }
3049 arg3 = static_cast< int >(val3);
3050 }
3051 if (obj3) {
d14a1e28 3052 {
0085ce49
RD
3053 arg4 = &temp4;
3054 if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
d14a1e28 3055 }
0085ce49
RD
3056 }
3057 if (obj4) {
d14a1e28 3058 {
0085ce49
RD
3059 arg5 = &temp5;
3060 if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
d14a1e28 3061 }
0085ce49
RD
3062 }
3063 if (obj5) {
3064 ecode6 = SWIG_AsVal_long(obj5, &val6);
3065 if (!SWIG_IsOK(ecode6)) {
3066 SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_GLCanvasWithContext" "', expected argument " "6"" of type '" "long""'");
3067 }
3068 arg6 = static_cast< long >(val6);
3069 }
3070 if (obj6) {
d14a1e28 3071 {
0085ce49
RD
3072 arg7 = wxString_in_helper(obj6);
3073 if (arg7 == NULL) SWIG_fail;
3074 temp7 = true;
d14a1e28 3075 }
0085ce49
RD
3076 }
3077 if (obj7) {
d14a1e28 3078 {
0085ce49
RD
3079 int i;
3080 if (PySequence_Check(obj7)) {
3081 int size = PyObject_Length(obj7);
3082 temp8 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
3083 for (i = 0; i < size; i++) {
3084 temp8[i] = PyInt_AsLong(PySequence_GetItem(obj7, i));
3085 }
3086 temp8[size] = 0;
3087 arg8 = temp8;
3088 }
d14a1e28 3089 }
0085ce49
RD
3090 }
3091 if (obj8) {
3092 res9 = SWIG_ConvertPtr(obj8, &argp9, SWIGTYPE_p_wxPalette, 0 | 0);
3093 if (!SWIG_IsOK(res9)) {
3094 SWIG_exception_fail(SWIG_ArgError(res9), "in method '" "new_GLCanvasWithContext" "', expected argument " "9"" of type '" "wxPalette const &""'");
3095 }
3096 if (!argp9) {
3097 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_GLCanvasWithContext" "', expected argument " "9"" of type '" "wxPalette const &""'");
3098 }
3099 arg9 = reinterpret_cast< wxPalette * >(argp9);
3100 }
3101 {
3102 if (!wxPyCheckForApp()) SWIG_fail;
3103 PyThreadState* __tstate = wxPyBeginAllowThreads();
3104 result = (wxGLCanvas *)new wxGLCanvas(arg1,(wxGLContext const *)arg2,arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,arg8,(wxPalette const &)*arg9);
3105 wxPyEndAllowThreads(__tstate);
3106 if (PyErr_Occurred()) SWIG_fail;
3107 }
3108 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_OWN | 0 );
3109 {
3110 if (temp7)
3111 delete arg7;
3112 }
3113 {
3114 delete [] arg8;
3115 }
3116 return resultobj;
3117fail:
3118 {
3119 if (temp7)
3120 delete arg7;
3121 }
3122 {
3123 delete [] arg8;
3124 }
3125 return NULL;
d14a1e28
RD
3126}
3127
3128
7f442096
RD
3129SWIGINTERN PyObject *_wrap_GLCanvas_SetCurrent__SWIG_0(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
3130 PyObject *resultobj = 0;
3131 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3132 void *argp1 = 0 ;
3133 int res1 = 0 ;
3134
3135 if ((nobjs < 1) || (nobjs > 1)) SWIG_fail;
3136 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3137 if (!SWIG_IsOK(res1)) {
3138 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SetCurrent" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3139 }
3140 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3141 {
3142 PyThreadState* __tstate = wxPyBeginAllowThreads();
3143 (arg1)->SetCurrent();
3144 wxPyEndAllowThreads(__tstate);
3145 if (PyErr_Occurred()) SWIG_fail;
3146 }
3147 resultobj = SWIG_Py_Void();
3148 return resultobj;
3149fail:
3150 return NULL;
3151}
3152
3153
3154SWIGINTERN PyObject *_wrap_GLCanvas_SetCurrent__SWIG_1(PyObject *SWIGUNUSEDPARM(self), int nobjs, PyObject **swig_obj) {
0085ce49
RD
3155 PyObject *resultobj = 0;
3156 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
97ab0f6a 3157 wxGLContext *arg2 = 0 ;
0085ce49
RD
3158 void *argp1 = 0 ;
3159 int res1 = 0 ;
97ab0f6a
RD
3160 void *argp2 = 0 ;
3161 int res2 = 0 ;
0085ce49 3162
7f442096
RD
3163 if ((nobjs < 2) || (nobjs > 2)) SWIG_fail;
3164 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
0085ce49
RD
3165 if (!SWIG_IsOK(res1)) {
3166 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SetCurrent" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3167 }
3168 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
7f442096 3169 res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_wxGLContext, 0 | 0);
97ab0f6a
RD
3170 if (!SWIG_IsOK(res2)) {
3171 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GLCanvas_SetCurrent" "', expected argument " "2"" of type '" "wxGLContext const &""'");
3172 }
3173 if (!argp2) {
3174 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GLCanvas_SetCurrent" "', expected argument " "2"" of type '" "wxGLContext const &""'");
3175 }
3176 arg2 = reinterpret_cast< wxGLContext * >(argp2);
0085ce49
RD
3177 {
3178 PyThreadState* __tstate = wxPyBeginAllowThreads();
97ab0f6a 3179 (arg1)->SetCurrent((wxGLContext const &)*arg2);
0085ce49
RD
3180 wxPyEndAllowThreads(__tstate);
3181 if (PyErr_Occurred()) SWIG_fail;
3182 }
3183 resultobj = SWIG_Py_Void();
3184 return resultobj;
3185fail:
3186 return NULL;
3187}
3188
3189
7f442096
RD
3190SWIGINTERN PyObject *_wrap_GLCanvas_SetCurrent(PyObject *self, PyObject *args) {
3191 int argc;
3192 PyObject *argv[3];
3193
3194 if (!(argc = SWIG_Python_UnpackTuple(args,"GLCanvas_SetCurrent",0,2,argv))) SWIG_fail;
3195 --argc;
3196 if (argc == 1) {
3197 return _wrap_GLCanvas_SetCurrent__SWIG_0(self, argc, argv);
3198 }
3199 if (argc == 2) {
3200 return _wrap_GLCanvas_SetCurrent__SWIG_1(self, argc, argv);
3201 }
3202
3203fail:
3204 SWIG_SetErrorMsg(PyExc_NotImplementedError,"No matching function for overloaded 'GLCanvas_SetCurrent'");
3205 return NULL;
3206}
3207
3208
0085ce49
RD
3209SWIGINTERN PyObject *_wrap_GLCanvas_SetColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
3210 PyObject *resultobj = 0;
3211 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3212 wxString *arg2 = 0 ;
3213 void *argp1 = 0 ;
3214 int res1 = 0 ;
3215 bool temp2 = false ;
3216 PyObject * obj0 = 0 ;
3217 PyObject * obj1 = 0 ;
3218 char * kwnames[] = {
3219 (char *) "self",(char *) "colour", NULL
3220 };
3221
3222 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetColour",kwnames,&obj0,&obj1)) SWIG_fail;
3223 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3224 if (!SWIG_IsOK(res1)) {
3225 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SetColour" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3226 }
3227 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3228 {
3229 arg2 = wxString_in_helper(obj1);
3230 if (arg2 == NULL) SWIG_fail;
3231 temp2 = true;
3232 }
3233 {
3234 PyThreadState* __tstate = wxPyBeginAllowThreads();
3235 (arg1)->SetColour((wxString const &)*arg2);
3236 wxPyEndAllowThreads(__tstate);
3237 if (PyErr_Occurred()) SWIG_fail;
3238 }
3239 resultobj = SWIG_Py_Void();
3240 {
3241 if (temp2)
3242 delete arg2;
3243 }
3244 return resultobj;
3245fail:
3246 {
3247 if (temp2)
3248 delete arg2;
3249 }
3250 return NULL;
d14a1e28
RD
3251}
3252
3253
0085ce49
RD
3254SWIGINTERN PyObject *_wrap_GLCanvas_SwapBuffers(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3255 PyObject *resultobj = 0;
3256 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3257 void *argp1 = 0 ;
3258 int res1 = 0 ;
3259 PyObject *swig_obj[1] ;
3260
3261 if (!args) SWIG_fail;
3262 swig_obj[0] = args;
3263 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3264 if (!SWIG_IsOK(res1)) {
3265 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SwapBuffers" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3266 }
3267 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3268 {
3269 PyThreadState* __tstate = wxPyBeginAllowThreads();
3270 (arg1)->SwapBuffers();
3271 wxPyEndAllowThreads(__tstate);
3272 if (PyErr_Occurred()) SWIG_fail;
3273 }
3274 resultobj = SWIG_Py_Void();
3275 return resultobj;
3276fail:
3277 return NULL;
d14a1e28
RD
3278}
3279
3280
0085ce49
RD
3281SWIGINTERN PyObject *_wrap_GLCanvas_GetContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3282 PyObject *resultobj = 0;
3283 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3284 wxGLContext *result = 0 ;
3285 void *argp1 = 0 ;
3286 int res1 = 0 ;
3287 PyObject *swig_obj[1] ;
3288
3289 if (!args) SWIG_fail;
3290 swig_obj[0] = args;
3291 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3292 if (!SWIG_IsOK(res1)) {
3293 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_GetContext" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3294 }
3295 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3296 {
3297 PyThreadState* __tstate = wxPyBeginAllowThreads();
3298 result = (wxGLContext *)(arg1)->GetContext();
3299 wxPyEndAllowThreads(__tstate);
3300 if (PyErr_Occurred()) SWIG_fail;
3301 }
3302 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLContext, 0 | 0 );
3303 return resultobj;
3304fail:
3305 return NULL;
d14a1e28
RD
3306}
3307
3308
0085ce49
RD
3309SWIGINTERN PyObject *GLCanvas_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3310 PyObject *obj;
3311 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
3312 SWIG_TypeNewClientData(SWIGTYPE_p_wxGLCanvas, SWIG_NewClientData(obj));
3313 return SWIG_Py_Void();
d14a1e28
RD
3314}
3315
0085ce49
RD
3316SWIGINTERN PyObject *GLCanvas_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3317 return SWIG_Python_InitShadowInstance(args);
d14a1e28 3318}
0085ce49 3319
d14a1e28 3320static PyMethodDef SwigMethods[] = {
3004cfd8 3321 { (char *)"new_GLContext", (PyCFunction) _wrap_new_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49 3322 { (char *)"delete_GLContext", (PyCFunction)_wrap_delete_GLContext, METH_O, NULL},
97ab0f6a 3323 { (char *)"GLContext_SetCurrent", (PyCFunction) _wrap_GLContext_SetCurrent, METH_VARARGS | METH_KEYWORDS, NULL},
3004cfd8 3324 { (char *)"GLContext_swigregister", GLContext_swigregister, METH_VARARGS, NULL},
0085ce49 3325 { (char *)"GLContext_swiginit", GLContext_swiginit, METH_VARARGS, NULL},
3004cfd8
RD
3326 { (char *)"new_GLCanvas", (PyCFunction) _wrap_new_GLCanvas, METH_VARARGS | METH_KEYWORDS, NULL},
3327 { (char *)"new_GLCanvasWithContext", (PyCFunction) _wrap_new_GLCanvasWithContext, METH_VARARGS | METH_KEYWORDS, NULL},
7f442096 3328 { (char *)"GLCanvas_SetCurrent", _wrap_GLCanvas_SetCurrent, METH_VARARGS, NULL},
3004cfd8 3329 { (char *)"GLCanvas_SetColour", (PyCFunction) _wrap_GLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49
RD
3330 { (char *)"GLCanvas_SwapBuffers", (PyCFunction)_wrap_GLCanvas_SwapBuffers, METH_O, NULL},
3331 { (char *)"GLCanvas_GetContext", (PyCFunction)_wrap_GLCanvas_GetContext, METH_O, NULL},
3004cfd8 3332 { (char *)"GLCanvas_swigregister", GLCanvas_swigregister, METH_VARARGS, NULL},
0085ce49 3333 { (char *)"GLCanvas_swiginit", GLCanvas_swiginit, METH_VARARGS, NULL},
c32bde28 3334 { NULL, NULL, 0, NULL }
d14a1e28
RD
3335};
3336
3337
3338/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
3339
d14a1e28
RD
3340static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
3341 return (void *)((wxObject *) ((wxLayoutConstraints *) x));
3342}
d14a1e28
RD
3343static void *_p_wxSizerItemTo_p_wxObject(void *x) {
3344 return (void *)((wxObject *) ((wxSizerItem *) x));
3345}
34e0a3bb
RD
3346static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
3347 return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
3348}
d14a1e28
RD
3349static void *_p_wxScrollEventTo_p_wxObject(void *x) {
3350 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
3351}
3352static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
3353 return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x));
3354}
3355static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
3356 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
3357}
3358static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
3359 return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
3360}
3361static void *_p_wxSizerTo_p_wxObject(void *x) {
3362 return (void *)((wxObject *) ((wxSizer *) x));
3363}
3364static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
3365 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
3366}
3367static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
3368 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
3369}
3370static void *_p_wxEventTo_p_wxObject(void *x) {
3371 return (void *)((wxObject *) ((wxEvent *) x));
3372}
3373static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
3374 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
3375}
3376static void *_p_wxGridSizerTo_p_wxObject(void *x) {
3377 return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
3378}
3379static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
3380 return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
3381}
2131d850
RD
3382static void *_p_wxClipboardTextEventTo_p_wxObject(void *x) {
3383 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxClipboardTextEvent *) x));
3384}
d14a1e28
RD
3385static void *_p_wxPaintEventTo_p_wxObject(void *x) {
3386 return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
3387}
3388static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
3389 return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
3390}
3391static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
3392 return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
3393}
3394static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
3395 return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
3396}
3397static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
3398 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
3399}
3400static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
3401 return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
3402}
3403static void *_p_wxControlTo_p_wxObject(void *x) {
3404 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
3405}
3406static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
3407 return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
3408}
3409static void *_p_wxFSFileTo_p_wxObject(void *x) {
3410 return (void *)((wxObject *) ((wxFSFile *) x));
3411}
3412static void *_p_wxPySizerTo_p_wxObject(void *x) {
3413 return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
3414}
3415static void *_p_wxPyEventTo_p_wxObject(void *x) {
3416 return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
3417}
3418static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
3419 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
3420}
3421static void *_p_wxGLContextTo_p_wxObject(void *x) {
3422 return (void *)((wxObject *) ((wxGLContext *) x));
3423}
3424static void *_p_wxShowEventTo_p_wxObject(void *x) {
3425 return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
3426}
3427static void *_p_wxMenuItemTo_p_wxObject(void *x) {
3428 return (void *)((wxObject *) ((wxMenuItem *) x));
3429}
53aa7709
RD
3430static void *_p_wxDateEventTo_p_wxObject(void *x) {
3431 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
3432}
d14a1e28
RD
3433static void *_p_wxIdleEventTo_p_wxObject(void *x) {
3434 return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
3435}
3436static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
3437 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
3438}
3439static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
3440 return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
3441}
3442static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
3443 return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
3444}
3445static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
3446 return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
3447}
3448static void *_p_wxSizeEventTo_p_wxObject(void *x) {
3449 return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
3450}
3451static void *_p_wxMoveEventTo_p_wxObject(void *x) {
3452 return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
3453}
3454static void *_p_wxActivateEventTo_p_wxObject(void *x) {
3455 return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
3456}
d14a1e28
RD
3457static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
3458 return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
3459}
3460static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
3461 return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
3462}
3463static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
3464 return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
3465}
3466static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
3467 return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
3468}
3469static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
3470 return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
3471}
3472static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
3473 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
3474}
3475static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
3476 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
3477}
3478static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
3479 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
3480}
3481static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
3482 return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
3483}
943e8dfd
RD
3484static void *_p_wxPyImageHandlerTo_p_wxObject(void *x) {
3485 return (void *)((wxObject *) (wxImageHandler *) ((wxPyImageHandler *) x));
3486}
d14a1e28
RD
3487static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
3488 return (void *)((wxObject *) ((wxImageHandler *) x));
3489}
943e8dfd
RD
3490static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
3491 return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
3492}
d14a1e28
RD
3493static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
3494 return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
3495}
580080c5
RD
3496static void *_p_wxTGAHandlerTo_p_wxObject(void *x) {
3497 return (void *)((wxObject *) (wxImageHandler *) ((wxTGAHandler *) x));
3498}
d14a1e28
RD
3499static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
3500 return (void *)((wxObject *) ((wxEvtHandler *) x));
3501}
34e0a3bb
RD
3502static void *_p_wxMouseCaptureLostEventTo_p_wxObject(void *x) {
3503 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureLostEvent *) x));
3504}
d14a1e28
RD
3505static void *_p_wxGLCanvasTo_p_wxObject(void *x) {
3506 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxGLCanvas *) x));
3507}
0df68c9f
RD
3508static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
3509 return (void *)((wxObject *) ((wxAcceleratorTable *) x));
3510}
580080c5
RD
3511static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
3512 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
3513}
d14a1e28
RD
3514static void *_p_wxImageTo_p_wxObject(void *x) {
3515 return (void *)((wxObject *) ((wxImage *) x));
3516}
3517static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
3518 return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
3519}
3520static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
3521 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
3522}
3523static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
3524 return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
3525}
3526static void *_p_wxKeyEventTo_p_wxObject(void *x) {
3527 return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
3528}
3529static void *_p_wxWindowTo_p_wxObject(void *x) {
3530 return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
3531}
3532static void *_p_wxMenuTo_p_wxObject(void *x) {
3533 return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
3534}
3535static void *_p_wxMenuBarTo_p_wxObject(void *x) {
3536 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
3537}
3538static void *_p_wxFileSystemTo_p_wxObject(void *x) {
3539 return (void *)((wxObject *) ((wxFileSystem *) x));
3540}
3541static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
3542 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
3543}
3544static void *_p_wxMenuEventTo_p_wxObject(void *x) {
3545 return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
3546}
3547static void *_p_wxPyAppTo_p_wxObject(void *x) {
3548 return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
3549}
3550static void *_p_wxCloseEventTo_p_wxObject(void *x) {
3551 return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
3552}
3553static void *_p_wxMouseEventTo_p_wxObject(void *x) {
3554 return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
3555}
3556static void *_p_wxEraseEventTo_p_wxObject(void *x) {
3557 return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
3558}
3559static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
3560 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
3561}
3562static void *_p_wxCommandEventTo_p_wxObject(void *x) {
3563 return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
3564}
3565static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
3566 return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
3567}
3568static void *_p_wxFocusEventTo_p_wxObject(void *x) {
3569 return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
3570}
3571static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
3572 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
3573}
3574static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
3575 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
3576}
3577static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
3578 return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
3579}
3580static void *_p_wxValidatorTo_p_wxObject(void *x) {
3581 return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
3582}
3004cfd8
RD
3583static void *_p_wxControlTo_p_wxWindow(void *x) {
3584 return (void *)((wxWindow *) ((wxControl *) x));
3585}
3586static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
3587 return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
3588}
3589static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
3590 return (void *)((wxWindow *) ((wxMenuBar *) x));
3591}
3592static void *_p_wxGLCanvasTo_p_wxWindow(void *x) {
3593 return (void *)((wxWindow *) ((wxGLCanvas *) x));
3594}
d14a1e28
RD
3595static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
3596 return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
3597}
3598static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
3599 return (void *)((wxEvtHandler *) ((wxWindow *) x));
3600}
3601static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
3602 return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
3603}
3604static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
3605 return (void *)((wxEvtHandler *) ((wxPyApp *) x));
3606}
3607static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
3608 return (void *)((wxEvtHandler *) ((wxValidator *) x));
3609}
3610static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
3611 return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
3612}
3613static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
3614 return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
3615}
3616static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x) {
3617 return (void *)((wxEvtHandler *) (wxWindow *) ((wxGLCanvas *) x));
3618}
3619static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
3620 return (void *)((wxEvtHandler *) ((wxMenu *) x));
3621}
0085ce49
RD
3622static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
3623static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0};
3624static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
3625static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *|byte *", 0, 0, (void*)0, 0};
3626static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|time_t *", 0, 0, (void*)0, 0};
3627static swig_type_info _swigt__p_unsigned_long = {"_p_unsigned_long", "unsigned long *|wxUIntPtr *", 0, 0, (void*)0, 0};
3628static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
3629static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", "wxEvtHandler *", 0, 0, (void*)0, 0};
3630static swig_type_info _swigt__p_wxControl = {"_p_wxControl", 0, 0, 0, 0, 0};
3631static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0, 0};
3632static swig_type_info _swigt__p_wxPyApp = {"_p_wxPyApp", 0, 0, 0, 0, 0};
3633static swig_type_info _swigt__p_wxMenuBar = {"_p_wxMenuBar", 0, 0, 0, 0, 0};
3634static swig_type_info _swigt__p_wxValidator = {"_p_wxValidator", 0, 0, 0, 0, 0};
3635static swig_type_info _swigt__p_wxPyValidator = {"_p_wxPyValidator", 0, 0, 0, 0, 0};
3636static swig_type_info _swigt__p_wxMenu = {"_p_wxMenu", 0, 0, 0, 0, 0};
3637static swig_type_info _swigt__p_wxGLCanvas = {"_p_wxGLCanvas", "wxGLCanvas *", 0, 0, (void*)0, 0};
3638static swig_type_info _swigt__p_wxGLContext = {"_p_wxGLContext", "wxGLContext *", 0, 0, (void*)0, 0};
3639static swig_type_info _swigt__p_wxObject = {"_p_wxObject", "wxObject *", 0, 0, (void*)0, 0};
3640static swig_type_info _swigt__p_wxLayoutConstraints = {"_p_wxLayoutConstraints", 0, 0, 0, 0, 0};
0085ce49 3641static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", 0, 0, 0, 0, 0};
34e0a3bb 3642static swig_type_info _swigt__p_wxGBSizerItem = {"_p_wxGBSizerItem", 0, 0, 0, 0, 0};
0085ce49
RD
3643static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", 0, 0, 0, 0, 0};
3644static swig_type_info _swigt__p_wxIndividualLayoutConstraint = {"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0, 0};
3645static swig_type_info _swigt__p_wxStaticBoxSizer = {"_p_wxStaticBoxSizer", 0, 0, 0, 0, 0};
3646static swig_type_info _swigt__p_wxBoxSizer = {"_p_wxBoxSizer", 0, 0, 0, 0, 0};
3647static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", 0, 0, 0, 0, 0};
3648static swig_type_info _swigt__p_wxGridBagSizer = {"_p_wxGridBagSizer", 0, 0, 0, 0, 0};
3649static swig_type_info _swigt__p_wxUpdateUIEvent = {"_p_wxUpdateUIEvent", 0, 0, 0, 0, 0};
3650static swig_type_info _swigt__p_wxEvent = {"_p_wxEvent", 0, 0, 0, 0, 0};
3651static swig_type_info _swigt__p_wxGridSizer = {"_p_wxGridSizer", 0, 0, 0, 0, 0};
3652static swig_type_info _swigt__p_wxFlexGridSizer = {"_p_wxFlexGridSizer", 0, 0, 0, 0, 0};
3653static swig_type_info _swigt__p_wxInitDialogEvent = {"_p_wxInitDialogEvent", 0, 0, 0, 0, 0};
2131d850 3654static swig_type_info _swigt__p_wxClipboardTextEvent = {"_p_wxClipboardTextEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3655static swig_type_info _swigt__p_wxPaintEvent = {"_p_wxPaintEvent", 0, 0, 0, 0, 0};
3656static swig_type_info _swigt__p_wxNcPaintEvent = {"_p_wxNcPaintEvent", 0, 0, 0, 0, 0};
3657static swig_type_info _swigt__p_wxPaletteChangedEvent = {"_p_wxPaletteChangedEvent", 0, 0, 0, 0, 0};
3658static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", 0, 0, 0, 0, 0};
3659static swig_type_info _swigt__p_wxMouseCaptureChangedEvent = {"_p_wxMouseCaptureChangedEvent", 0, 0, 0, 0, 0};
3660static swig_type_info _swigt__p_wxSysColourChangedEvent = {"_p_wxSysColourChangedEvent", 0, 0, 0, 0, 0};
3661static swig_type_info _swigt__p_wxSetCursorEvent = {"_p_wxSetCursorEvent", 0, 0, 0, 0, 0};
3662static swig_type_info _swigt__p_wxFSFile = {"_p_wxFSFile", 0, 0, 0, 0, 0};
3663static swig_type_info _swigt__p_wxPySizer = {"_p_wxPySizer", 0, 0, 0, 0, 0};
3664static swig_type_info _swigt__p_wxPyEvent = {"_p_wxPyEvent", 0, 0, 0, 0, 0};
3665static swig_type_info _swigt__p_wxNotifyEvent = {"_p_wxNotifyEvent", 0, 0, 0, 0, 0};
3666static swig_type_info _swigt__p_wxShowEvent = {"_p_wxShowEvent", 0, 0, 0, 0, 0};
3667static swig_type_info _swigt__p_wxMenuItem = {"_p_wxMenuItem", 0, 0, 0, 0, 0};
0085ce49
RD
3668static swig_type_info _swigt__p_wxWindowCreateEvent = {"_p_wxWindowCreateEvent", 0, 0, 0, 0, 0};
3669static swig_type_info _swigt__p_wxIdleEvent = {"_p_wxIdleEvent", 0, 0, 0, 0, 0};
3670static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", 0, 0, 0, 0, 0};
2131d850 3671static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3672static swig_type_info _swigt__p_wxMaximizeEvent = {"_p_wxMaximizeEvent", 0, 0, 0, 0, 0};
3673static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0, 0, 0};
2131d850 3674static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3675static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0, 0};
3676static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3677static swig_type_info _swigt__p_wxPNMHandler = {"_p_wxPNMHandler", 0, 0, 0, 0, 0};
3678static swig_type_info _swigt__p_wxJPEGHandler = {"_p_wxJPEGHandler", 0, 0, 0, 0, 0};
3679static swig_type_info _swigt__p_wxPCXHandler = {"_p_wxPCXHandler", 0, 0, 0, 0, 0};
3680static swig_type_info _swigt__p_wxGIFHandler = {"_p_wxGIFHandler", 0, 0, 0, 0, 0};
3681static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0, 0};
3682static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0, 0};
3683static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0, 0};
3684static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
3685static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
3686static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
3687static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
3688static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
3689static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
580080c5 3690static swig_type_info _swigt__p_wxTGAHandler = {"_p_wxTGAHandler", 0, 0, 0, 0, 0};
34e0a3bb 3691static swig_type_info _swigt__p_wxMouseCaptureLostEvent = {"_p_wxMouseCaptureLostEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3692static swig_type_info _swigt__p_wxStdDialogButtonSizer = {"_p_wxStdDialogButtonSizer", 0, 0, 0, 0, 0};
3693static swig_type_info _swigt__p_wxAcceleratorTable = {"_p_wxAcceleratorTable", 0, 0, 0, 0, 0};
3694static swig_type_info _swigt__p_wxImage = {"_p_wxImage", 0, 0, 0, 0, 0};
3695static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", 0, 0, 0, 0, 0};
3696static swig_type_info _swigt__p_wxWindowDestroyEvent = {"_p_wxWindowDestroyEvent", 0, 0, 0, 0, 0};
3697static swig_type_info _swigt__p_wxNavigationKeyEvent = {"_p_wxNavigationKeyEvent", 0, 0, 0, 0, 0};
3698static swig_type_info _swigt__p_wxKeyEvent = {"_p_wxKeyEvent", 0, 0, 0, 0, 0};
3699static swig_type_info _swigt__p_wxFileSystem = {"_p_wxFileSystem", 0, 0, 0, 0, 0};
3700static swig_type_info _swigt__p_wxContextMenuEvent = {"_p_wxContextMenuEvent", 0, 0, 0, 0, 0};
3701static swig_type_info _swigt__p_wxMenuEvent = {"_p_wxMenuEvent", 0, 0, 0, 0, 0};
0085ce49 3702static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", 0, 0, 0, 0, 0};
34e0a3bb 3703static swig_type_info _swigt__p_wxMouseEvent = {"_p_wxMouseEvent", 0, 0, 0, 0, 0};
2131d850 3704static swig_type_info _swigt__p_wxCloseEvent = {"_p_wxCloseEvent", 0, 0, 0, 0, 0};
0085ce49 3705static swig_type_info _swigt__p_wxPyCommandEvent = {"_p_wxPyCommandEvent", 0, 0, 0, 0, 0};
34e0a3bb 3706static swig_type_info _swigt__p_wxCommandEvent = {"_p_wxCommandEvent", 0, 0, 0, 0, 0};
0085ce49
RD
3707static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", 0, 0, 0, 0, 0};
3708static swig_type_info _swigt__p_wxFocusEvent = {"_p_wxFocusEvent", 0, 0, 0, 0, 0};
3709static swig_type_info _swigt__p_wxChildFocusEvent = {"_p_wxChildFocusEvent", 0, 0, 0, 0, 0};
3710static swig_type_info _swigt__p_wxPalette = {"_p_wxPalette", "wxPalette *", 0, 0, (void*)0, 0};
3711static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0};
3712static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0};
32fe5131
RD
3713
3714static swig_type_info *swig_type_initial[] = {
3715 &_swigt__p_char,
3716 &_swigt__p_form_ops_t,
3717 &_swigt__p_int,
3718 &_swigt__p_unsigned_char,
3719 &_swigt__p_unsigned_int,
3720 &_swigt__p_unsigned_long,
3721 &_swigt__p_wxANIHandler,
3722 &_swigt__p_wxAcceleratorTable,
3723 &_swigt__p_wxActivateEvent,
3724 &_swigt__p_wxBMPHandler,
3725 &_swigt__p_wxBoxSizer,
3726 &_swigt__p_wxCURHandler,
3727 &_swigt__p_wxChildFocusEvent,
2131d850 3728 &_swigt__p_wxClipboardTextEvent,
32fe5131
RD
3729 &_swigt__p_wxCloseEvent,
3730 &_swigt__p_wxCommandEvent,
3731 &_swigt__p_wxContextMenuEvent,
3732 &_swigt__p_wxControl,
3733 &_swigt__p_wxControlWithItems,
3734 &_swigt__p_wxDateEvent,
3735 &_swigt__p_wxDisplayChangedEvent,
3736 &_swigt__p_wxDropFilesEvent,
3737 &_swigt__p_wxDuplexMode,
3738 &_swigt__p_wxEraseEvent,
3739 &_swigt__p_wxEvent,
3740 &_swigt__p_wxEvtHandler,
3741 &_swigt__p_wxFSFile,
3742 &_swigt__p_wxFileSystem,
3743 &_swigt__p_wxFlexGridSizer,
3744 &_swigt__p_wxFocusEvent,
3745 &_swigt__p_wxGBSizerItem,
3746 &_swigt__p_wxGIFHandler,
3747 &_swigt__p_wxGLCanvas,
3748 &_swigt__p_wxGLContext,
3749 &_swigt__p_wxGridBagSizer,
3750 &_swigt__p_wxGridSizer,
3751 &_swigt__p_wxICOHandler,
3752 &_swigt__p_wxIconizeEvent,
3753 &_swigt__p_wxIdleEvent,
3754 &_swigt__p_wxImage,
3755 &_swigt__p_wxImageHandler,
3756 &_swigt__p_wxIndividualLayoutConstraint,
3757 &_swigt__p_wxInitDialogEvent,
3758 &_swigt__p_wxJPEGHandler,
3759 &_swigt__p_wxKeyEvent,
3760 &_swigt__p_wxLayoutConstraints,
3761 &_swigt__p_wxMaximizeEvent,
3762 &_swigt__p_wxMenu,
3763 &_swigt__p_wxMenuBar,
3764 &_swigt__p_wxMenuEvent,
3765 &_swigt__p_wxMenuItem,
3766 &_swigt__p_wxMouseCaptureChangedEvent,
34e0a3bb 3767 &_swigt__p_wxMouseCaptureLostEvent,
32fe5131
RD
3768 &_swigt__p_wxMouseEvent,
3769 &_swigt__p_wxMoveEvent,
3770 &_swigt__p_wxNavigationKeyEvent,
3771 &_swigt__p_wxNcPaintEvent,
3772 &_swigt__p_wxNotifyEvent,
3773 &_swigt__p_wxObject,
3774 &_swigt__p_wxPCXHandler,
3775 &_swigt__p_wxPNGHandler,
3776 &_swigt__p_wxPNMHandler,
3777 &_swigt__p_wxPaintEvent,
3778 &_swigt__p_wxPalette,
3779 &_swigt__p_wxPaletteChangedEvent,
3780 &_swigt__p_wxPaperSize,
3781 &_swigt__p_wxPyApp,
3782 &_swigt__p_wxPyCommandEvent,
3783 &_swigt__p_wxPyEvent,
3784 &_swigt__p_wxPyImageHandler,
3785 &_swigt__p_wxPySizer,
3786 &_swigt__p_wxPyValidator,
3787 &_swigt__p_wxQueryNewPaletteEvent,
3788 &_swigt__p_wxScrollEvent,
3789 &_swigt__p_wxScrollWinEvent,
3790 &_swigt__p_wxSetCursorEvent,
3791 &_swigt__p_wxShowEvent,
3792 &_swigt__p_wxSizeEvent,
3793 &_swigt__p_wxSizer,
3794 &_swigt__p_wxSizerItem,
3795 &_swigt__p_wxStaticBoxSizer,
3796 &_swigt__p_wxStdDialogButtonSizer,
3797 &_swigt__p_wxSysColourChangedEvent,
580080c5 3798 &_swigt__p_wxTGAHandler,
32fe5131
RD
3799 &_swigt__p_wxTIFFHandler,
3800 &_swigt__p_wxUpdateUIEvent,
3801 &_swigt__p_wxValidator,
3802 &_swigt__p_wxWindow,
3803 &_swigt__p_wxWindowCreateEvent,
3804 &_swigt__p_wxWindowDestroyEvent,
3805 &_swigt__p_wxXPMHandler,
32fe5131
RD
3806};
3807
3808static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
3809static swig_cast_info _swigc__p_form_ops_t[] = { {&_swigt__p_form_ops_t, 0, 0, 0},{0, 0, 0, 0}};
3810static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
3811static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
3812static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
3813static swig_cast_info _swigc__p_unsigned_long[] = { {&_swigt__p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}};
3814static swig_cast_info _swigc__p_wxDuplexMode[] = { {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
3815static swig_cast_info _swigc__p_wxControl[] = {{&_swigt__p_wxControl, 0, 0, 0},{0, 0, 0, 0}};
3816static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
3817static swig_cast_info _swigc__p_wxPyApp[] = {{&_swigt__p_wxPyApp, 0, 0, 0},{0, 0, 0, 0}};
3818static swig_cast_info _swigc__p_wxMenuBar[] = {{&_swigt__p_wxMenuBar, 0, 0, 0},{0, 0, 0, 0}};
3819static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
3820static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
3821static swig_cast_info _swigc__p_wxMenu[] = {{&_swigt__p_wxMenu, 0, 0, 0},{0, 0, 0, 0}};
3822static swig_cast_info _swigc__p_wxEvtHandler[] = { {&_swigt__p_wxControl, _p_wxControlTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxEvtHandler, 0, 0, 0}, {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxEvtHandler, 0, 0}, {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxEvtHandler, 0, 0},{0, 0, 0, 0}};
3823static swig_cast_info _swigc__p_wxGLCanvas[] = { {&_swigt__p_wxGLCanvas, 0, 0, 0},{0, 0, 0, 0}};
3824static swig_cast_info _swigc__p_wxGLContext[] = { {&_swigt__p_wxGLContext, 0, 0, 0},{0, 0, 0, 0}};
3825static swig_cast_info _swigc__p_wxLayoutConstraints[] = {{&_swigt__p_wxLayoutConstraints, 0, 0, 0},{0, 0, 0, 0}};
32fe5131 3826static swig_cast_info _swigc__p_wxSizerItem[] = {{&_swigt__p_wxSizerItem, 0, 0, 0},{0, 0, 0, 0}};
34e0a3bb 3827static swig_cast_info _swigc__p_wxGBSizerItem[] = {{&_swigt__p_wxGBSizerItem, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3828static swig_cast_info _swigc__p_wxScrollEvent[] = {{&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
3829static swig_cast_info _swigc__p_wxIndividualLayoutConstraint[] = {{&_swigt__p_wxIndividualLayoutConstraint, 0, 0, 0},{0, 0, 0, 0}};
3830static swig_cast_info _swigc__p_wxStaticBoxSizer[] = {{&_swigt__p_wxStaticBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
3831static swig_cast_info _swigc__p_wxBoxSizer[] = {{&_swigt__p_wxBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
3832static swig_cast_info _swigc__p_wxSizer[] = {{&_swigt__p_wxSizer, 0, 0, 0},{0, 0, 0, 0}};
3833static swig_cast_info _swigc__p_wxGridBagSizer[] = {{&_swigt__p_wxGridBagSizer, 0, 0, 0},{0, 0, 0, 0}};
3834static swig_cast_info _swigc__p_wxUpdateUIEvent[] = {{&_swigt__p_wxUpdateUIEvent, 0, 0, 0},{0, 0, 0, 0}};
3835static swig_cast_info _swigc__p_wxEvent[] = {{&_swigt__p_wxEvent, 0, 0, 0},{0, 0, 0, 0}};
3836static swig_cast_info _swigc__p_wxGridSizer[] = {{&_swigt__p_wxGridSizer, 0, 0, 0},{0, 0, 0, 0}};
3837static swig_cast_info _swigc__p_wxFlexGridSizer[] = {{&_swigt__p_wxFlexGridSizer, 0, 0, 0},{0, 0, 0, 0}};
3838static swig_cast_info _swigc__p_wxInitDialogEvent[] = {{&_swigt__p_wxInitDialogEvent, 0, 0, 0},{0, 0, 0, 0}};
2131d850 3839static swig_cast_info _swigc__p_wxClipboardTextEvent[] = {{&_swigt__p_wxClipboardTextEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3840static swig_cast_info _swigc__p_wxPaintEvent[] = {{&_swigt__p_wxPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
3841static swig_cast_info _swigc__p_wxNcPaintEvent[] = {{&_swigt__p_wxNcPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
3842static swig_cast_info _swigc__p_wxPaletteChangedEvent[] = {{&_swigt__p_wxPaletteChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
3843static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {{&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
3844static swig_cast_info _swigc__p_wxMouseCaptureChangedEvent[] = {{&_swigt__p_wxMouseCaptureChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
3845static swig_cast_info _swigc__p_wxSysColourChangedEvent[] = {{&_swigt__p_wxSysColourChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
3846static swig_cast_info _swigc__p_wxSetCursorEvent[] = {{&_swigt__p_wxSetCursorEvent, 0, 0, 0},{0, 0, 0, 0}};
3847static swig_cast_info _swigc__p_wxFSFile[] = {{&_swigt__p_wxFSFile, 0, 0, 0},{0, 0, 0, 0}};
3848static swig_cast_info _swigc__p_wxPySizer[] = {{&_swigt__p_wxPySizer, 0, 0, 0},{0, 0, 0, 0}};
3849static swig_cast_info _swigc__p_wxPyEvent[] = {{&_swigt__p_wxPyEvent, 0, 0, 0},{0, 0, 0, 0}};
3850static swig_cast_info _swigc__p_wxNotifyEvent[] = {{&_swigt__p_wxNotifyEvent, 0, 0, 0},{0, 0, 0, 0}};
3851static swig_cast_info _swigc__p_wxShowEvent[] = {{&_swigt__p_wxShowEvent, 0, 0, 0},{0, 0, 0, 0}};
3852static swig_cast_info _swigc__p_wxMenuItem[] = {{&_swigt__p_wxMenuItem, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3853static swig_cast_info _swigc__p_wxWindowCreateEvent[] = {{&_swigt__p_wxWindowCreateEvent, 0, 0, 0},{0, 0, 0, 0}};
3854static swig_cast_info _swigc__p_wxIdleEvent[] = {{&_swigt__p_wxIdleEvent, 0, 0, 0},{0, 0, 0, 0}};
3855static swig_cast_info _swigc__p_wxDateEvent[] = {{&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
2131d850 3856static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {{&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3857static swig_cast_info _swigc__p_wxMaximizeEvent[] = {{&_swigt__p_wxMaximizeEvent, 0, 0, 0},{0, 0, 0, 0}};
3858static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent, 0, 0, 0},{0, 0, 0, 0}};
2131d850 3859static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3860static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
3861static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3862static swig_cast_info _swigc__p_wxPNMHandler[] = {{&_swigt__p_wxPNMHandler, 0, 0, 0},{0, 0, 0, 0}};
3863static swig_cast_info _swigc__p_wxJPEGHandler[] = {{&_swigt__p_wxJPEGHandler, 0, 0, 0},{0, 0, 0, 0}};
3864static swig_cast_info _swigc__p_wxPCXHandler[] = {{&_swigt__p_wxPCXHandler, 0, 0, 0},{0, 0, 0, 0}};
3865static swig_cast_info _swigc__p_wxGIFHandler[] = {{&_swigt__p_wxGIFHandler, 0, 0, 0},{0, 0, 0, 0}};
3866static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
3867static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
3868static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
3869static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
3870static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
3871static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
3872static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
3873static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
3874static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
580080c5 3875static swig_cast_info _swigc__p_wxTGAHandler[] = {{&_swigt__p_wxTGAHandler, 0, 0, 0},{0, 0, 0, 0}};
34e0a3bb 3876static swig_cast_info _swigc__p_wxMouseCaptureLostEvent[] = {{&_swigt__p_wxMouseCaptureLostEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3877static swig_cast_info _swigc__p_wxStdDialogButtonSizer[] = {{&_swigt__p_wxStdDialogButtonSizer, 0, 0, 0},{0, 0, 0, 0}};
3878static swig_cast_info _swigc__p_wxAcceleratorTable[] = {{&_swigt__p_wxAcceleratorTable, 0, 0, 0},{0, 0, 0, 0}};
3879static swig_cast_info _swigc__p_wxImage[] = {{&_swigt__p_wxImage, 0, 0, 0},{0, 0, 0, 0}};
3880static swig_cast_info _swigc__p_wxScrollWinEvent[] = {{&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
3881static swig_cast_info _swigc__p_wxWindowDestroyEvent[] = {{&_swigt__p_wxWindowDestroyEvent, 0, 0, 0},{0, 0, 0, 0}};
3882static swig_cast_info _swigc__p_wxNavigationKeyEvent[] = {{&_swigt__p_wxNavigationKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
3883static swig_cast_info _swigc__p_wxKeyEvent[] = {{&_swigt__p_wxKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
3884static swig_cast_info _swigc__p_wxFileSystem[] = {{&_swigt__p_wxFileSystem, 0, 0, 0},{0, 0, 0, 0}};
3885static swig_cast_info _swigc__p_wxContextMenuEvent[] = {{&_swigt__p_wxContextMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
3886static swig_cast_info _swigc__p_wxMenuEvent[] = {{&_swigt__p_wxMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131 3887static swig_cast_info _swigc__p_wxEraseEvent[] = {{&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
34e0a3bb 3888static swig_cast_info _swigc__p_wxMouseEvent[] = {{&_swigt__p_wxMouseEvent, 0, 0, 0},{0, 0, 0, 0}};
2131d850 3889static swig_cast_info _swigc__p_wxCloseEvent[] = {{&_swigt__p_wxCloseEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131 3890static swig_cast_info _swigc__p_wxPyCommandEvent[] = {{&_swigt__p_wxPyCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
34e0a3bb 3891static swig_cast_info _swigc__p_wxCommandEvent[] = {{&_swigt__p_wxCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3892static swig_cast_info _swigc__p_wxDropFilesEvent[] = {{&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
3893static swig_cast_info _swigc__p_wxFocusEvent[] = {{&_swigt__p_wxFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
3894static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
580080c5 3895static swig_cast_info _swigc__p_wxObject[] = { {&_swigt__p_wxLayoutConstraints, _p_wxLayoutConstraintsTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizerItem, _p_wxSizerItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxGBSizerItem, _p_wxGBSizerItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxScrollEvent, _p_wxScrollEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIndividualLayoutConstraint, _p_wxIndividualLayoutConstraintTo_p_wxObject, 0, 0}, {&_swigt__p_wxStaticBoxSizer, _p_wxStaticBoxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxBoxSizer, _p_wxBoxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizer, _p_wxSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxGridBagSizer, _p_wxGridBagSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxUpdateUIEvent, _p_wxUpdateUIEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenu, _p_wxMenuTo_p_wxObject, 0, 0}, {&_swigt__p_wxEvent, _p_wxEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxGridSizer, _p_wxGridSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxFlexGridSizer, _p_wxFlexGridSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxInitDialogEvent, _p_wxInitDialogEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxClipboardTextEvent, _p_wxClipboardTextEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPaintEvent, _p_wxPaintEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNcPaintEvent, _p_wxNcPaintEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPaletteChangedEvent, _p_wxPaletteChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDisplayChangedEvent, _p_wxDisplayChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseCaptureChangedEvent, _p_wxMouseCaptureChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxSysColourChangedEvent, _p_wxSysColourChangedEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxControl, _p_wxControlTo_p_wxObject, 0, 0}, {&_swigt__p_wxSetCursorEvent, _p_wxSetCursorEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxFSFile, _p_wxFSFileTo_p_wxObject, 0, 0}, {&_swigt__p_wxPySizer, _p_wxPySizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyEvent, _p_wxPyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNotifyEvent, _p_wxNotifyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxGLContext, _p_wxGLContextTo_p_wxObject, 0, 0}, {&_swigt__p_wxShowEvent, _p_wxShowEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuItem, _p_wxMenuItemTo_p_wxObject, 0, 0}, {&_swigt__p_wxWindowCreateEvent, _p_wxWindowCreateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIdleEvent, _p_wxIdleEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDateEvent, _p_wxDateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPNMHandler, _p_wxPNMHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxJPEGHandler, _p_wxJPEGHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPCXHandler, _p_wxPCXHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxGIFHandler, _p_wxGIFHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPNGHandler, _p_wxPNGHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxANIHandler, _p_wxANIHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxCURHandler, _p_wxCURHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxICOHandler, _p_wxICOHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxBMPHandler, _p_wxBMPHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyImageHandler, _p_wxPyImageHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxImageHandler, _p_wxImageHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxXPMHandler, _p_wxXPMHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxTIFFHandler, _p_wxTIFFHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxTGAHandler, _p_wxTGAHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxEvtHandler, _p_wxEvtHandlerTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseCaptureLostEvent, _p_wxMouseCaptureLostEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxObject, 0, 0}, {&_swigt__p_wxStdDialogButtonSizer, _p_wxStdDialogButtonSizerTo_p_wxObject, 0, 0}, {&_swigt__p_wxAcceleratorTable, _p_wxAcceleratorTableTo_p_wxObject, 0, 0}, {&_swigt__p_wxImage, _p_wxImageTo_p_wxObject, 0, 0}, {&_swigt__p_wxScrollWinEvent, _p_wxScrollWinEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxObject, 0, 0, 0}, {&_swigt__p_wxWindowDestroyEvent, _p_wxWindowDestroyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxNavigationKeyEvent, _p_wxNavigationKeyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxKeyEvent, _p_wxKeyEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxWindow, _p_wxWindowTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxObject, 0, 0}, {&_swigt__p_wxFileSystem, _p_wxFileSystemTo_p_wxObject, 0, 0}, {&_swigt__p_wxContextMenuEvent, _p_wxContextMenuEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMenuEvent, _p_wxMenuEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyApp, _p_wxPyAppTo_p_wxObject, 0, 0}, {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyCommandEvent, _p_wxPyCommandEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxCommandEvent, _p_wxCommandEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxDropFilesEvent, _p_wxDropFilesEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxFocusEvent, _p_wxFocusEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxChildFocusEvent, _p_wxChildFocusEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxObject, 0, 0}, {&_swigt__p_wxPyValidator, _p_wxPyValidatorTo_p_wxObject, 0, 0}, {&_swigt__p_wxValidator, _p_wxValidatorTo_p_wxObject, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3896static swig_cast_info _swigc__p_wxPalette[] = { {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
3897static swig_cast_info _swigc__p_wxPaperSize[] = { {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
3898static swig_cast_info _swigc__p_wxWindow[] = { {&_swigt__p_wxControl, _p_wxControlTo_p_wxWindow, 0, 0}, {&_swigt__p_wxWindow, 0, 0, 0}, {&_swigt__p_wxControlWithItems, _p_wxControlWithItemsTo_p_wxWindow, 0, 0}, {&_swigt__p_wxMenuBar, _p_wxMenuBarTo_p_wxWindow, 0, 0}, {&_swigt__p_wxGLCanvas, _p_wxGLCanvasTo_p_wxWindow, 0, 0},{0, 0, 0, 0}};
32fe5131
RD
3899
3900static swig_cast_info *swig_cast_initial[] = {
3901 _swigc__p_char,
3902 _swigc__p_form_ops_t,
3903 _swigc__p_int,
3904 _swigc__p_unsigned_char,
3905 _swigc__p_unsigned_int,
3906 _swigc__p_unsigned_long,
3907 _swigc__p_wxANIHandler,
3908 _swigc__p_wxAcceleratorTable,
3909 _swigc__p_wxActivateEvent,
3910 _swigc__p_wxBMPHandler,
3911 _swigc__p_wxBoxSizer,
3912 _swigc__p_wxCURHandler,
3913 _swigc__p_wxChildFocusEvent,
2131d850 3914 _swigc__p_wxClipboardTextEvent,
32fe5131
RD
3915 _swigc__p_wxCloseEvent,
3916 _swigc__p_wxCommandEvent,
3917 _swigc__p_wxContextMenuEvent,
3918 _swigc__p_wxControl,
3919 _swigc__p_wxControlWithItems,
3920 _swigc__p_wxDateEvent,
3921 _swigc__p_wxDisplayChangedEvent,
3922 _swigc__p_wxDropFilesEvent,
3923 _swigc__p_wxDuplexMode,
3924 _swigc__p_wxEraseEvent,
3925 _swigc__p_wxEvent,
3926 _swigc__p_wxEvtHandler,
3927 _swigc__p_wxFSFile,
3928 _swigc__p_wxFileSystem,
3929 _swigc__p_wxFlexGridSizer,
3930 _swigc__p_wxFocusEvent,
3931 _swigc__p_wxGBSizerItem,
3932 _swigc__p_wxGIFHandler,
3933 _swigc__p_wxGLCanvas,
3934 _swigc__p_wxGLContext,
3935 _swigc__p_wxGridBagSizer,
3936 _swigc__p_wxGridSizer,
3937 _swigc__p_wxICOHandler,
3938 _swigc__p_wxIconizeEvent,
3939 _swigc__p_wxIdleEvent,
3940 _swigc__p_wxImage,
3941 _swigc__p_wxImageHandler,
3942 _swigc__p_wxIndividualLayoutConstraint,
3943 _swigc__p_wxInitDialogEvent,
3944 _swigc__p_wxJPEGHandler,
3945 _swigc__p_wxKeyEvent,
3946 _swigc__p_wxLayoutConstraints,
3947 _swigc__p_wxMaximizeEvent,
3948 _swigc__p_wxMenu,
3949 _swigc__p_wxMenuBar,
3950 _swigc__p_wxMenuEvent,
3951 _swigc__p_wxMenuItem,
3952 _swigc__p_wxMouseCaptureChangedEvent,
34e0a3bb 3953 _swigc__p_wxMouseCaptureLostEvent,
32fe5131
RD
3954 _swigc__p_wxMouseEvent,
3955 _swigc__p_wxMoveEvent,
3956 _swigc__p_wxNavigationKeyEvent,
3957 _swigc__p_wxNcPaintEvent,
3958 _swigc__p_wxNotifyEvent,
3959 _swigc__p_wxObject,
3960 _swigc__p_wxPCXHandler,
3961 _swigc__p_wxPNGHandler,
3962 _swigc__p_wxPNMHandler,
3963 _swigc__p_wxPaintEvent,
3964 _swigc__p_wxPalette,
3965 _swigc__p_wxPaletteChangedEvent,
3966 _swigc__p_wxPaperSize,
3967 _swigc__p_wxPyApp,
3968 _swigc__p_wxPyCommandEvent,
3969 _swigc__p_wxPyEvent,
3970 _swigc__p_wxPyImageHandler,
3971 _swigc__p_wxPySizer,
3972 _swigc__p_wxPyValidator,
3973 _swigc__p_wxQueryNewPaletteEvent,
3974 _swigc__p_wxScrollEvent,
3975 _swigc__p_wxScrollWinEvent,
3976 _swigc__p_wxSetCursorEvent,
3977 _swigc__p_wxShowEvent,
3978 _swigc__p_wxSizeEvent,
3979 _swigc__p_wxSizer,
3980 _swigc__p_wxSizerItem,
3981 _swigc__p_wxStaticBoxSizer,
3982 _swigc__p_wxStdDialogButtonSizer,
3983 _swigc__p_wxSysColourChangedEvent,
580080c5 3984 _swigc__p_wxTGAHandler,
32fe5131
RD
3985 _swigc__p_wxTIFFHandler,
3986 _swigc__p_wxUpdateUIEvent,
3987 _swigc__p_wxValidator,
3988 _swigc__p_wxWindow,
3989 _swigc__p_wxWindowCreateEvent,
3990 _swigc__p_wxWindowDestroyEvent,
3991 _swigc__p_wxXPMHandler,
d14a1e28
RD
3992};
3993
3994
3995/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
3996
3997static swig_const_info swig_const_table[] = {
c32bde28 3998{0, 0, 0, 0.0, 0, 0}};
d14a1e28
RD
3999
4000#ifdef __cplusplus
4001}
4002#endif
0085ce49 4003/* -----------------------------------------------------------------------------
32fe5131
RD
4004 * Type initialization:
4005 * This problem is tough by the requirement that no dynamic
4006 * memory is used. Also, since swig_type_info structures store pointers to
4007 * swig_cast_info structures and swig_cast_info structures store pointers back
4008 * to swig_type_info structures, we need some lookup code at initialization.
4009 * The idea is that swig generates all the structures that are needed.
4010 * The runtime then collects these partially filled structures.
4011 * The SWIG_InitializeModule function takes these initial arrays out of
4012 * swig_module, and does all the lookup, filling in the swig_module.types
4013 * array with the correct data and linking the correct swig_cast_info
4014 * structures together.
0085ce49 4015 *
32fe5131
RD
4016 * The generated swig_type_info structures are assigned staticly to an initial
4017 * array. We just loop though that array, and handle each type individually.
4018 * First we lookup if this type has been already loaded, and if so, use the
4019 * loaded structure instead of the generated one. Then we have to fill in the
4020 * cast linked list. The cast data is initially stored in something like a
4021 * two-dimensional array. Each row corresponds to a type (there are the same
4022 * number of rows as there are in the swig_type_initial array). Each entry in
4023 * a column is one of the swig_cast_info structures for that type.
4024 * The cast_initial array is actually an array of arrays, because each row has
4025 * a variable number of columns. So to actually build the cast linked list,
4026 * we find the array of casts associated with the type, and loop through it
4027 * adding the casts to the list. The one last trick we need to do is making
4028 * sure the type pointer in the swig_cast_info struct is correct.
0085ce49 4029 *
32fe5131
RD
4030 * First off, we lookup the cast->type name to see if it is already loaded.
4031 * There are three cases to handle:
4032 * 1) If the cast->type has already been loaded AND the type we are adding
4033 * casting info to has not been loaded (it is in this module), THEN we
4034 * replace the cast->type pointer with the type pointer that has already
4035 * been loaded.
4036 * 2) If BOTH types (the one we are adding casting info to, and the
4037 * cast->type) are loaded, THEN the cast info has already been loaded by
4038 * the previous module so we just ignore it.
4039 * 3) Finally, if cast->type has not already been loaded, then we add that
4040 * swig_cast_info to the linked list (because the cast->type) pointer will
4041 * be correct.
0085ce49 4042 * ----------------------------------------------------------------------------- */
32fe5131
RD
4043
4044#ifdef __cplusplus
4045extern "C" {
4046#if 0
4047} /* c-mode */
4048#endif
4049#endif
4050
4051#if 0
4052#define SWIGRUNTIME_DEBUG
4053#endif
4054
4055SWIGRUNTIME void
4056SWIG_InitializeModule(void *clientdata) {
0085ce49
RD
4057 size_t i;
4058 swig_module_info *module_head;
4059 static int init_run = 0;
4060
4061 clientdata = clientdata;
4062
4063 if (init_run) return;
4064 init_run = 1;
4065
4066 /* Initialize the swig_module */
4067 swig_module.type_initial = swig_type_initial;
4068 swig_module.cast_initial = swig_cast_initial;
4069
4070 /* Try and load any already created modules */
4071 module_head = SWIG_GetModule(clientdata);
4072 if (module_head) {
4073 swig_module.next = module_head->next;
4074 module_head->next = &swig_module;
4075 } else {
4076 /* This is the first module loaded */
4077 swig_module.next = &swig_module;
4078 SWIG_SetModule(clientdata, &swig_module);
4079 }
4080
4081 /* Now work on filling in swig_module.types */
32fe5131 4082#ifdef SWIGRUNTIME_DEBUG
0085ce49 4083 printf("SWIG_InitializeModule: size %d\n", swig_module.size);
32fe5131 4084#endif
0085ce49
RD
4085 for (i = 0; i < swig_module.size; ++i) {
4086 swig_type_info *type = 0;
4087 swig_type_info *ret;
4088 swig_cast_info *cast;
4089
32fe5131 4090#ifdef SWIGRUNTIME_DEBUG
0085ce49 4091 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
32fe5131 4092#endif
0085ce49
RD
4093
4094 /* if there is another module already loaded */
4095 if (swig_module.next != &swig_module) {
4096 type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
4097 }
4098 if (type) {
4099 /* Overwrite clientdata field */
32fe5131 4100#ifdef SWIGRUNTIME_DEBUG
0085ce49 4101 printf("SWIG_InitializeModule: found type %s\n", type->name);
32fe5131 4102#endif
0085ce49
RD
4103 if (swig_module.type_initial[i]->clientdata) {
4104 type->clientdata = swig_module.type_initial[i]->clientdata;
32fe5131 4105#ifdef SWIGRUNTIME_DEBUG
0085ce49 4106 printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
32fe5131 4107#endif
0085ce49
RD
4108 }
4109 } else {
4110 type = swig_module.type_initial[i];
4111 }
4112
4113 /* Insert casting types */
4114 cast = swig_module.cast_initial[i];
4115 while (cast->type) {
4116 /* Don't need to add information already in the list */
4117 ret = 0;
32fe5131 4118#ifdef SWIGRUNTIME_DEBUG
0085ce49 4119 printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
32fe5131 4120#endif
0085ce49
RD
4121 if (swig_module.next != &swig_module) {
4122 ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
32fe5131 4123#ifdef SWIGRUNTIME_DEBUG
0085ce49 4124 if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
32fe5131 4125#endif
0085ce49
RD
4126 }
4127 if (ret) {
4128 if (type == swig_module.type_initial[i]) {
32fe5131 4129#ifdef SWIGRUNTIME_DEBUG
0085ce49 4130 printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
32fe5131 4131#endif
0085ce49
RD
4132 cast->type = ret;
4133 ret = 0;
4134 } else {
4135 /* Check for casting already in the list */
4136 swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
32fe5131 4137#ifdef SWIGRUNTIME_DEBUG
0085ce49 4138 if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
32fe5131 4139#endif
0085ce49
RD
4140 if (!ocast) ret = 0;
4141 }
4142 }
4143
4144 if (!ret) {
32fe5131 4145#ifdef SWIGRUNTIME_DEBUG
0085ce49 4146 printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
32fe5131 4147#endif
0085ce49
RD
4148 if (type->cast) {
4149 type->cast->prev = cast;
4150 cast->next = type->cast;
32fe5131 4151 }
0085ce49
RD
4152 type->cast = cast;
4153 }
4154 cast++;
32fe5131 4155 }
0085ce49
RD
4156 /* Set entry in modules->types array equal to the type */
4157 swig_module.types[i] = type;
4158 }
4159 swig_module.types[i] = 0;
4160
32fe5131 4161#ifdef SWIGRUNTIME_DEBUG
0085ce49
RD
4162 printf("**** SWIG_InitializeModule: Cast List ******\n");
4163 for (i = 0; i < swig_module.size; ++i) {
4164 int j = 0;
4165 swig_cast_info *cast = swig_module.cast_initial[i];
4166 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
4167 while (cast->type) {
4168 printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
4169 cast++;
4170 ++j;
32fe5131 4171 }
0085ce49
RD
4172 printf("---- Total casts: %d\n",j);
4173 }
4174 printf("**** SWIG_InitializeModule: Cast List ******\n");
32fe5131
RD
4175#endif
4176}
4177
4178/* This function will propagate the clientdata field of type to
4179* any new swig_type_info structures that have been added into the list
4180* of equivalent types. It is like calling
4181* SWIG_TypeClientData(type, clientdata) a second time.
4182*/
4183SWIGRUNTIME void
4184SWIG_PropagateClientData(void) {
0085ce49
RD
4185 size_t i;
4186 swig_cast_info *equiv;
4187 static int init_run = 0;
4188
4189 if (init_run) return;
4190 init_run = 1;
4191
4192 for (i = 0; i < swig_module.size; i++) {
4193 if (swig_module.types[i]->clientdata) {
4194 equiv = swig_module.types[i]->cast;
4195 while (equiv) {
4196 if (!equiv->converter) {
4197 if (equiv->type && !equiv->type->clientdata)
4198 SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
32fe5131 4199 }
0085ce49
RD
4200 equiv = equiv->next;
4201 }
32fe5131 4202 }
0085ce49 4203 }
32fe5131
RD
4204}
4205
4206#ifdef __cplusplus
4207#if 0
4208{
0085ce49 4209 /* c-mode */
32fe5131
RD
4210#endif
4211}
4212#endif
4213
d14a1e28 4214
3004cfd8
RD
4215
4216#ifdef __cplusplus
4217extern "C" {
4218#endif
0085ce49
RD
4219
4220 /* Python-specific SWIG API */
3004cfd8
RD
4221#define SWIG_newvarlink() SWIG_Python_newvarlink()
4222#define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
4223#define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
0085ce49
RD
4224
4225 /* -----------------------------------------------------------------------------
4226 * global variable support code.
4227 * ----------------------------------------------------------------------------- */
4228
4229 typedef struct swig_globalvar {
4230 char *name; /* Name of global variable */
4231 PyObject *(*get_attr)(void); /* Return the current value */
4232 int (*set_attr)(PyObject *); /* Set the value */
4233 struct swig_globalvar *next;
4234 } swig_globalvar;
4235
4236 typedef struct swig_varlinkobject {
4237 PyObject_HEAD
4238 swig_globalvar *vars;
4239 } swig_varlinkobject;
4240
4241 SWIGINTERN PyObject *
4242 swig_varlink_repr(swig_varlinkobject *SWIGUNUSEDPARM(v)) {
4243 return PyString_FromString("<Swig global variables>");
4244 }
4245
4246 SWIGINTERN PyObject *
4247 swig_varlink_str(swig_varlinkobject *v) {
4248 PyObject *str = PyString_FromString("(");
4249 swig_globalvar *var;
4250 for (var = v->vars; var; var=var->next) {
4251 PyString_ConcatAndDel(&str,PyString_FromString(var->name));
4252 if (var->next) PyString_ConcatAndDel(&str,PyString_FromString(", "));
3004cfd8 4253 }
0085ce49
RD
4254 PyString_ConcatAndDel(&str,PyString_FromString(")"));
4255 return str;
4256 }
4257
4258 SWIGINTERN int
4259 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int SWIGUNUSEDPARM(flags)) {
4260 PyObject *str = swig_varlink_str(v);
4261 fprintf(fp,"Swig global variables ");
4262 fprintf(fp,"%s\n", PyString_AsString(str));
4263 Py_DECREF(str);
4264 return 0;
4265 }
4266
4267 SWIGINTERN void
4268 swig_varlink_dealloc(swig_varlinkobject *v) {
4269 swig_globalvar *var = v->vars;
4270 while (var) {
4271 swig_globalvar *n = var->next;
4272 free(var->name);
4273 free(var);
4274 var = n;
3004cfd8 4275 }
0085ce49
RD
4276 }
4277
4278 SWIGINTERN PyObject *
4279 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
4280 PyObject *res = NULL;
4281 swig_globalvar *var = v->vars;
4282 while (var) {
4283 if (strcmp(var->name,n) == 0) {
4284 res = (*var->get_attr)();
4285 break;
4286 }
4287 var = var->next;
3004cfd8 4288 }
0085ce49
RD
4289 if (res == NULL && !PyErr_Occurred()) {
4290 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
3004cfd8 4291 }
0085ce49
RD
4292 return res;
4293 }
4294
4295 SWIGINTERN int
4296 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
4297 int res = 1;
4298 swig_globalvar *var = v->vars;
4299 while (var) {
4300 if (strcmp(var->name,n) == 0) {
4301 res = (*var->set_attr)(p);
4302 break;
4303 }
4304 var = var->next;
4305 }
4306 if (res == 1 && !PyErr_Occurred()) {
4307 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
4308 }
4309 return res;
4310 }
4311
4312 SWIGINTERN PyTypeObject*
4313 swig_varlink_type(void) {
4314 static char varlink__doc__[] = "Swig var link object";
4315 static PyTypeObject varlink_type;
4316 static int type_init = 0;
4317 if (!type_init) {
4318 const PyTypeObject tmp
4319 = {
4320 PyObject_HEAD_INIT(NULL)
4321 0, /* Number of items in variable part (ob_size) */
4322 (char *)"swigvarlink", /* Type name (tp_name) */
4323 sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */
4324 0, /* Itemsize (tp_itemsize) */
4325 (destructor) swig_varlink_dealloc, /* Deallocator (tp_dealloc) */
4326 (printfunc) swig_varlink_print, /* Print (tp_print) */
4327 (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
4328 (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
4329 0, /* tp_compare */
4330 (reprfunc) swig_varlink_repr, /* tp_repr */
4331 0, /* tp_as_number */
4332 0, /* tp_as_sequence */
4333 0, /* tp_as_mapping */
4334 0, /* tp_hash */
4335 0, /* tp_call */
4336 (reprfunc)swig_varlink_str, /* tp_str */
4337 0, /* tp_getattro */
4338 0, /* tp_setattro */
4339 0, /* tp_as_buffer */
4340 0, /* tp_flags */
4341 varlink__doc__, /* tp_doc */
4342 0, /* tp_traverse */
4343 0, /* tp_clear */
4344 0, /* tp_richcompare */
4345 0, /* tp_weaklistoffset */
3004cfd8 4346#if PY_VERSION_HEX >= 0x02020000
0085ce49 4347 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
3004cfd8
RD
4348#endif
4349#if PY_VERSION_HEX >= 0x02030000
0085ce49 4350 0, /* tp_del */
3004cfd8
RD
4351#endif
4352#ifdef COUNT_ALLOCS
0085ce49 4353 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 4354#endif
0085ce49
RD
4355 };
4356 varlink_type = tmp;
4357 varlink_type.ob_type = &PyType_Type;
4358 type_init = 1;
32fe5131 4359 }
0085ce49
RD
4360 return &varlink_type;
4361 }
4362
4363 /* Create a variable linking object for use later */
4364 SWIGINTERN PyObject *
4365 SWIG_Python_newvarlink(void) {
4366 swig_varlinkobject *result = PyObject_NEW(swig_varlinkobject, swig_varlink_type());
4367 if (result) {
4368 result->vars = 0;
3004cfd8 4369 }
0085ce49
RD
4370 return ((PyObject*) result);
4371 }
4372
4373 SWIGINTERN void
4374 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
4375 swig_varlinkobject *v = (swig_varlinkobject *) p;
4376 swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
4377 if (gv) {
4378 size_t size = strlen(name)+1;
4379 gv->name = (char *)malloc(size);
4380 if (gv->name) {
4381 strncpy(gv->name,name,size);
4382 gv->get_attr = get_attr;
4383 gv->set_attr = set_attr;
4384 gv->next = v->vars;
4385 }
3004cfd8 4386 }
0085ce49
RD
4387 v->vars = gv;
4388 }
4389
4390 SWIGINTERN PyObject *
4391 SWIG_globals() {
4392 static PyObject *_SWIG_globals = 0;
4393 if (!_SWIG_globals) _SWIG_globals = SWIG_newvarlink();
4394 return _SWIG_globals;
4395 }
4396
4397 /* -----------------------------------------------------------------------------
4398 * constants/methods manipulation
4399 * ----------------------------------------------------------------------------- */
4400
4401 /* Install Constants */
4402 SWIGINTERN void
4403 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
4404 PyObject *obj = 0;
4405 size_t i;
4406 for (i = 0; constants[i].type; ++i) {
4407 switch(constants[i].type) {
4408 case SWIG_PY_POINTER:
4409 obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
4410 break;
4411 case SWIG_PY_BINARY:
4412 obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
4413 break;
4414 default:
4415 obj = 0;
4416 break;
4417 }
4418 if (obj) {
4419 PyDict_SetItemString(d, constants[i].name, obj);
4420 Py_DECREF(obj);
4421 }
3004cfd8 4422 }
0085ce49
RD
4423 }
4424
4425 /* -----------------------------------------------------------------------------*/
4426 /* Fix SwigMethods to carry the callback ptrs when needed */
4427 /* -----------------------------------------------------------------------------*/
4428
4429 SWIGINTERN void
4430 SWIG_Python_FixMethods(PyMethodDef *methods,
3004cfd8
RD
4431 swig_const_info *const_table,
4432 swig_type_info **types,
4433 swig_type_info **types_initial) {
0085ce49
RD
4434 size_t i;
4435 for (i = 0; methods[i].ml_name; ++i) {
453fb36b 4436 const char *c = methods[i].ml_doc;
0085ce49
RD
4437 if (c && (c = strstr(c, "swig_ptr: "))) {
4438 int j;
4439 swig_const_info *ci = 0;
453fb36b 4440 const char *name = c + 10;
0085ce49
RD
4441 for (j = 0; const_table[j].type; ++j) {
4442 if (strncmp(const_table[j].name, name,
4443 strlen(const_table[j].name)) == 0) {
4444 ci = &(const_table[j]);
4445 break;
4446 }
4447 }
4448 if (ci) {
4449 size_t shift = (ci->ptype) - types;
4450 swig_type_info *ty = types_initial[shift];
4451 size_t ldoc = (c - methods[i].ml_doc);
4452 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
4453 char *ndoc = (char*)malloc(ldoc + lptr + 10);
4454 if (ndoc) {
4455 char *buff = ndoc;
4456 void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue : 0;
4457 if (ptr) {
4458 strncpy(buff, methods[i].ml_doc, ldoc);
4459 buff += ldoc;
4460 strncpy(buff, "swig_ptr: ", 10);
4461 buff += 10;
4462 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
4463 methods[i].ml_doc = ndoc;
3004cfd8 4464 }
0085ce49 4465 }
3004cfd8 4466 }
0085ce49 4467 }
3004cfd8 4468 }
0085ce49
RD
4469 }
4470
3004cfd8
RD
4471#ifdef __cplusplus
4472}
4473#endif
4474
4475/* -----------------------------------------------------------------------------*
4476 * Partial Init method
4477 * -----------------------------------------------------------------------------*/
4478
3004cfd8
RD
4479#ifdef __cplusplus
4480extern "C"
4481#endif
32fe5131 4482SWIGEXPORT void SWIG_init(void) {
0085ce49
RD
4483 PyObject *m, *d;
4484
4485 /* Fix SwigMethods to carry the callback ptrs when needed */
4486 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial);
4487
4488 m = Py_InitModule((char *) SWIG_name, SwigMethods);
4489 d = PyModule_GetDict(m);
4490
4491 SWIG_InitializeModule(0);
4492 SWIG_InstallConstants(d,swig_const_table);
4493
4494
4495 PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
4496 SWIG_addvarlink(SWIG_globals(),(char*)"GLCanvasNameStr",GLCanvasNameStr_get, GLCanvasNameStr_set);
4497 SWIG_Python_SetConstant(d, "WX_GL_RGBA",SWIG_From_int(static_cast< int >(WX_GL_RGBA)));
4498 SWIG_Python_SetConstant(d, "WX_GL_BUFFER_SIZE",SWIG_From_int(static_cast< int >(WX_GL_BUFFER_SIZE)));
4499 SWIG_Python_SetConstant(d, "WX_GL_LEVEL",SWIG_From_int(static_cast< int >(WX_GL_LEVEL)));
4500 SWIG_Python_SetConstant(d, "WX_GL_DOUBLEBUFFER",SWIG_From_int(static_cast< int >(WX_GL_DOUBLEBUFFER)));
4501 SWIG_Python_SetConstant(d, "WX_GL_STEREO",SWIG_From_int(static_cast< int >(WX_GL_STEREO)));
4502 SWIG_Python_SetConstant(d, "WX_GL_AUX_BUFFERS",SWIG_From_int(static_cast< int >(WX_GL_AUX_BUFFERS)));
4503 SWIG_Python_SetConstant(d, "WX_GL_MIN_RED",SWIG_From_int(static_cast< int >(WX_GL_MIN_RED)));
4504 SWIG_Python_SetConstant(d, "WX_GL_MIN_GREEN",SWIG_From_int(static_cast< int >(WX_GL_MIN_GREEN)));
4505 SWIG_Python_SetConstant(d, "WX_GL_MIN_BLUE",SWIG_From_int(static_cast< int >(WX_GL_MIN_BLUE)));
4506 SWIG_Python_SetConstant(d, "WX_GL_MIN_ALPHA",SWIG_From_int(static_cast< int >(WX_GL_MIN_ALPHA)));
4507 SWIG_Python_SetConstant(d, "WX_GL_DEPTH_SIZE",SWIG_From_int(static_cast< int >(WX_GL_DEPTH_SIZE)));
4508 SWIG_Python_SetConstant(d, "WX_GL_STENCIL_SIZE",SWIG_From_int(static_cast< int >(WX_GL_STENCIL_SIZE)));
4509 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_RED",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_RED)));
4510 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_GREEN",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_GREEN)));
4511 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_BLUE",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_BLUE)));
4512 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_ALPHA",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_ALPHA)));
4513
4514
4515
d14a1e28
RD
4516}
4517