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