]> git.saurik.com Git - wxWidgets.git/blame - wxPython/contrib/glcanvas/gtk/glcanvas_wrap.cpp
memory dc must have bitmap selected into it before it can be used for measuring
[wxWidgets.git] / wxPython / contrib / glcanvas / gtk / glcanvas_wrap.cpp
CommitLineData
d14a1e28
RD
1/* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (http://www.swig.org).
0085ce49 3 * Version 1.3.29
d14a1e28
RD
4 *
5 * This file is not intended to be easily readable and contains a number of
6 * coding conventions designed to improve portability and efficiency. Do not make
7 * changes to this file unless you know what you are doing--modify the SWIG
8 * interface file instead.
9 * ----------------------------------------------------------------------------- */
10
11#define SWIGPYTHON
0085ce49 12#define SWIG_PYTHON_DIRECTOR_NO_VTABLE
d14a1e28
RD
13
14#ifdef __cplusplus
15template<class T> class SwigValueWrapper {
16 T *tt;
17public:
18 SwigValueWrapper() : tt(0) { }
19 SwigValueWrapper(const SwigValueWrapper<T>& rhs) : tt(new T(*rhs.tt)) { }
20 SwigValueWrapper(const T& t) : tt(new T(t)) { }
21 ~SwigValueWrapper() { delete tt; }
22 SwigValueWrapper& operator=(const T& t) { delete tt; tt = new T(t); return *this; }
23 operator T&() const { return *tt; }
24 T *operator&() { return tt; }
25private:
26 SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
3004cfd8 27};
d14a1e28
RD
28#endif
29
0085ce49 30/* -----------------------------------------------------------------------------
32fe5131
RD
31 * This section contains generic SWIG labels for method/variable
32 * declarations/attributes, and other compiler dependent labels.
0085ce49 33 * ----------------------------------------------------------------------------- */
d14a1e28 34
32fe5131
RD
35/* template workaround for compilers that cannot correctly implement the C++ standard */
36#ifndef SWIGTEMPLATEDISAMBIGUATOR
0085ce49
RD
37# if defined(__SUNPRO_CC)
38# if (__SUNPRO_CC <= 0x560)
39# define SWIGTEMPLATEDISAMBIGUATOR template
40# else
41# define SWIGTEMPLATEDISAMBIGUATOR
42# endif
43# else
44# define SWIGTEMPLATEDISAMBIGUATOR
45# endif
3004cfd8 46#endif
d14a1e28 47
32fe5131
RD
48/* inline attribute */
49#ifndef SWIGINLINE
50# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
51# define SWIGINLINE inline
52# else
53# define SWIGINLINE
54# endif
55#endif
56
57/* attribute recognised by some compilers to avoid 'unused' warnings */
58#ifndef SWIGUNUSED
0085ce49
RD
59# if defined(__GNUC__)
60# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
61# define SWIGUNUSED __attribute__ ((__unused__))
62# else
63# define SWIGUNUSED
64# endif
65# elif defined(__ICC)
66# define SWIGUNUSED __attribute__ ((__unused__))
32fe5131
RD
67# else
68# define SWIGUNUSED
69# endif
70#endif
71
0085ce49
RD
72#ifndef SWIGUNUSEDPARM
73# ifdef __cplusplus
74# define SWIGUNUSEDPARM(p)
75# else
76# define SWIGUNUSEDPARM(p) p SWIGUNUSED
77# endif
78#endif
79
32fe5131
RD
80/* internal SWIG method */
81#ifndef SWIGINTERN
82# define SWIGINTERN static SWIGUNUSED
83#endif
84
85/* internal inline SWIG method */
86#ifndef SWIGINTERNINLINE
87# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
88#endif
89
0085ce49
RD
90/* exporting methods */
91#if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
92# ifndef GCC_HASCLASSVISIBILITY
93# define GCC_HASCLASSVISIBILITY
94# endif
95#endif
96
32fe5131
RD
97#ifndef SWIGEXPORT
98# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
99# if defined(STATIC_LINKED)
100# define SWIGEXPORT
101# else
102# define SWIGEXPORT __declspec(dllexport)
103# endif
104# else
0085ce49
RD
105# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
106# define SWIGEXPORT __attribute__ ((visibility("default")))
107# else
108# define SWIGEXPORT
109# endif
32fe5131
RD
110# endif
111#endif
112
113/* calling conventions for Windows */
114#ifndef SWIGSTDCALL
115# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
116# define SWIGSTDCALL __stdcall
117# else
118# define SWIGSTDCALL
119# endif
120#endif
121
0085ce49
RD
122/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
123#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER)
124# define _CRT_SECURE_NO_DEPRECATE
125#endif
32fe5131 126
c9c7117a 127
0085ce49 128/* Python.h has to appear first */
3004cfd8 129#include <Python.h>
d14a1e28 130
0085ce49 131/* -----------------------------------------------------------------------------
3004cfd8 132 * swigrun.swg
d14a1e28 133 *
0085ce49
RD
134 * This file contains generic CAPI SWIG runtime support for pointer
135 * type checking.
136 * ----------------------------------------------------------------------------- */
d14a1e28 137
3004cfd8
RD
138/* This should only be incremented when either the layout of swig_type_info changes,
139 or for whatever reason, the runtime changes incompatibly */
32fe5131 140#define SWIG_RUNTIME_VERSION "2"
d14a1e28 141
3004cfd8
RD
142/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
143#ifdef SWIG_TYPE_TABLE
32fe5131
RD
144# define SWIG_QUOTE_STRING(x) #x
145# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
146# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
d14a1e28 147#else
32fe5131 148# define SWIG_TYPE_TABLE_NAME
3004cfd8
RD
149#endif
150
151/*
152 You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
153 creating a static or dynamic library from the swig runtime code.
154 In 99.9% of the cases, swig just needs to declare them as 'static'.
155
156 But only do this if is strictly necessary, ie, if you have problems
157 with your compiler or so.
158*/
32fe5131 159
3004cfd8 160#ifndef SWIGRUNTIME
32fe5131 161# define SWIGRUNTIME SWIGINTERN
3004cfd8 162#endif
32fe5131 163
3004cfd8 164#ifndef SWIGRUNTIMEINLINE
32fe5131 165# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
d14a1e28
RD
166#endif
167
0085ce49
RD
168/* Generic buffer size */
169#ifndef SWIG_BUFFER_SIZE
170# define SWIG_BUFFER_SIZE 1024
171#endif
172
173/* Flags for pointer conversions */
174#define SWIG_POINTER_DISOWN 0x1
175
176/* Flags for new pointer objects */
177#define SWIG_POINTER_OWN 0x1
178
179
180/*
181 Flags/methods for returning states.
182
183 The swig conversion methods, as ConvertPtr, return and integer
184 that tells if the conversion was successful or not. And if not,
185 an error code can be returned (see swigerrors.swg for the codes).
186
187 Use the following macros/flags to set or process the returning
188 states.
189
190 In old swig versions, you usually write code as:
191
192 if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
193 // success code
194 } else {
195 //fail code
196 }
197
198 Now you can be more explicit as:
199
200 int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
201 if (SWIG_IsOK(res)) {
202 // success code
203 } else {
204 // fail code
205 }
206
207 that seems to be the same, but now you can also do
208
209 Type *ptr;
210 int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
211 if (SWIG_IsOK(res)) {
212 // success code
213 if (SWIG_IsNewObj(res) {
214 ...
215 delete *ptr;
216 } else {
217 ...
218 }
219 } else {
220 // fail code
221 }
222
223 I.e., now SWIG_ConvertPtr can return new objects and you can
224 identify the case and take care of the deallocation. Of course that
225 requires also to SWIG_ConvertPtr to return new result values, as
226
227 int SWIG_ConvertPtr(obj, ptr,...) {
228 if (<obj is ok>) {
229 if (<need new object>) {
230 *ptr = <ptr to new allocated object>;
231 return SWIG_NEWOBJ;
232 } else {
233 *ptr = <ptr to old object>;
234 return SWIG_OLDOBJ;
235 }
236 } else {
237 return SWIG_BADOBJ;
238 }
239 }
240
241 Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
242 more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
243 swig errors code.
244
245 Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
246 allows to return the 'cast rank', for example, if you have this
247
248 int food(double)
249 int fooi(int);
250
251 and you call
252
253 food(1) // cast rank '1' (1 -> 1.0)
254 fooi(1) // cast rank '0'
255
256 just use the SWIG_AddCast()/SWIG_CheckState()
257
258
259 */
260#define SWIG_OK (0)
261#define SWIG_ERROR (-1)
262#define SWIG_IsOK(r) (r >= 0)
263#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
264
265/* The CastRankLimit says how many bits are used for the cast rank */
266#define SWIG_CASTRANKLIMIT (1 << 8)
267/* The NewMask denotes the object was created (using new/malloc) */
268#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
269/* The TmpMask is for in/out typemaps that use temporal objects */
270#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
271/* Simple returning values */
272#define SWIG_BADOBJ (SWIG_ERROR)
273#define SWIG_OLDOBJ (SWIG_OK)
274#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
275#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
276/* Check, add and del mask methods */
277#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
278#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
279#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
280#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
281#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
282#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
283
284
285/* Cast-Rank Mode */
286#if defined(SWIG_CASTRANK_MODE)
287# ifndef SWIG_TypeRank
288# define SWIG_TypeRank unsigned long
289# endif
290# ifndef SWIG_MAXCASTRANK /* Default cast allowed */
291# define SWIG_MAXCASTRANK (2)
292# endif
293# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
294# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
295SWIGINTERNINLINE int SWIG_AddCast(int r) {
296 return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
297}
298SWIGINTERNINLINE int SWIG_CheckState(int r) {
299 return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
300}
301#else /* no cast-rank mode */
302# define SWIG_AddCast
303# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
304#endif
305
306
307
308
32fe5131
RD
309#include <string.h>
310
d14a1e28
RD
311#ifdef __cplusplus
312extern "C" {
313#endif
314
315typedef void *(*swig_converter_func)(void *);
316typedef struct swig_type_info *(*swig_dycast_func)(void **);
317
32fe5131 318/* Structure to store inforomation on one type */
d14a1e28 319typedef struct swig_type_info {
32fe5131
RD
320 const char *name; /* mangled name of this type */
321 const char *str; /* human readable name of this type */
322 swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
323 struct swig_cast_info *cast; /* linked list of types that can cast into this type */
324 void *clientdata; /* language specific type data */
0085ce49 325 int owndata; /* flag if the structure owns the clientdata */
d14a1e28
RD
326} swig_type_info;
327
32fe5131
RD
328/* Structure to store a type and conversion function used for casting */
329typedef struct swig_cast_info {
330 swig_type_info *type; /* pointer to type that is equivalent to this type */
331 swig_converter_func converter; /* function to cast the void pointers */
332 struct swig_cast_info *next; /* pointer to next cast in linked list */
333 struct swig_cast_info *prev; /* pointer to the previous cast */
334} swig_cast_info;
335
336/* Structure used to store module information
337 * Each module generates one structure like this, and the runtime collects
338 * all of these structures and stores them in a circularly linked list.*/
339typedef struct swig_module_info {
340 swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
341 size_t size; /* Number of types in this module */
342 struct swig_module_info *next; /* Pointer to next element in circularly linked list */
343 swig_type_info **type_initial; /* Array of initially generated type structures */
344 swig_cast_info **cast_initial; /* Array of initially generated casting structures */
345 void *clientdata; /* Language specific module data */
346} swig_module_info;
347
3004cfd8
RD
348/*
349 Compare two type names skipping the space characters, therefore
350 "char*" == "char *" and "Class<int>" == "Class<int >", etc.
351
352 Return 0 when the two name types are equivalent, as in
353 strncmp, but skipping ' '.
354*/
355SWIGRUNTIME int
356SWIG_TypeNameComp(const char *f1, const char *l1,
357 const char *f2, const char *l2) {
358 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
359 while ((*f1 == ' ') && (f1 != l1)) ++f1;
360 while ((*f2 == ' ') && (f2 != l2)) ++f2;
0085ce49 361 if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
3004cfd8
RD
362 }
363 return (l1 - f1) - (l2 - f2);
364}
365
366/*
367 Check type equivalence in a name list like <name1>|<name2>|...
32fe5131 368 Return 0 if not equal, 1 if equal
3004cfd8
RD
369*/
370SWIGRUNTIME int
371SWIG_TypeEquiv(const char *nb, const char *tb) {
372 int equiv = 0;
373 const char* te = tb + strlen(tb);
374 const char* ne = nb;
375 while (!equiv && *ne) {
376 for (nb = ne; *ne; ++ne) {
377 if (*ne == '|') break;
378 }
32fe5131 379 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
3004cfd8
RD
380 if (*ne) ++ne;
381 }
382 return equiv;
383}
384
385/*
32fe5131
RD
386 Check type equivalence in a name list like <name1>|<name2>|...
387 Return 0 if equal, -1 if nb < tb, 1 if nb > tb
3004cfd8 388*/
32fe5131
RD
389SWIGRUNTIME int
390SWIG_TypeCompare(const char *nb, const char *tb) {
391 int equiv = 0;
392 const char* te = tb + strlen(tb);
393 const char* ne = nb;
394 while (!equiv && *ne) {
395 for (nb = ne; *ne; ++ne) {
396 if (*ne == '|') break;
3004cfd8 397 }
32fe5131
RD
398 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
399 if (*ne) ++ne;
3004cfd8 400 }
32fe5131 401 return equiv;
3004cfd8
RD
402}
403
32fe5131
RD
404
405/* think of this as a c++ template<> or a scheme macro */
406#define SWIG_TypeCheck_Template(comparison, ty) \
407 if (ty) { \
408 swig_cast_info *iter = ty->cast; \
409 while (iter) { \
410 if (comparison) { \
411 if (iter == ty->cast) return iter; \
412 /* Move iter to the top of the linked list */ \
413 iter->prev->next = iter->next; \
414 if (iter->next) \
415 iter->next->prev = iter->prev; \
416 iter->next = ty->cast; \
417 iter->prev = 0; \
418 if (ty->cast) ty->cast->prev = iter; \
419 ty->cast = iter; \
420 return iter; \
421 } \
422 iter = iter->next; \
423 } \
424 } \
425 return 0
426
3004cfd8
RD
427/*
428 Check the typename
429*/
32fe5131 430SWIGRUNTIME swig_cast_info *
3004cfd8 431SWIG_TypeCheck(const char *c, swig_type_info *ty) {
32fe5131
RD
432 SWIG_TypeCheck_Template(strcmp(iter->type->name, c) == 0, ty);
433}
434
435/* Same as previous function, except strcmp is replaced with a pointer comparison */
436SWIGRUNTIME swig_cast_info *
437SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *into) {
438 SWIG_TypeCheck_Template(iter->type == from, into);
3004cfd8 439}
d14a1e28 440
3004cfd8
RD
441/*
442 Cast a pointer up an inheritance hierarchy
443*/
444SWIGRUNTIMEINLINE void *
32fe5131 445SWIG_TypeCast(swig_cast_info *ty, void *ptr) {
3004cfd8
RD
446 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr);
447}
448
449/*
450 Dynamic pointer casting. Down an inheritance hierarchy
451*/
452SWIGRUNTIME swig_type_info *
453SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
454 swig_type_info *lastty = ty;
455 if (!ty || !ty->dcast) return ty;
456 while (ty && (ty->dcast)) {
457 ty = (*ty->dcast)(ptr);
458 if (ty) lastty = ty;
459 }
460 return lastty;
461}
462
463/*
464 Return the name associated with this type
465*/
466SWIGRUNTIMEINLINE const char *
467SWIG_TypeName(const swig_type_info *ty) {
468 return ty->name;
469}
470
471/*
472 Return the pretty name associated with this type,
473 that is an unmangled type name in a form presentable to the user.
474*/
475SWIGRUNTIME const char *
476SWIG_TypePrettyName(const swig_type_info *type) {
477 /* The "str" field contains the equivalent pretty names of the
478 type, separated by vertical-bar characters. We choose
479 to print the last name, as it is often (?) the most
480 specific. */
0085ce49 481 if (!type) return NULL;
3004cfd8
RD
482 if (type->str != NULL) {
483 const char *last_name = type->str;
484 const char *s;
485 for (s = type->str; *s; s++)
486 if (*s == '|') last_name = s+1;
487 return last_name;
488 }
489 else
490 return type->name;
491}
492
3004cfd8
RD
493/*
494 Set the clientdata field for a type
495*/
496SWIGRUNTIME void
32fe5131
RD
497SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
498 swig_cast_info *cast = ti->cast;
3004cfd8
RD
499 /* if (ti->clientdata == clientdata) return; */
500 ti->clientdata = clientdata;
32fe5131
RD
501
502 while (cast) {
503 if (!cast->converter) {
504 swig_type_info *tc = cast->type;
505 if (!tc->clientdata) {
506 SWIG_TypeClientData(tc, clientdata);
3004cfd8 507 }
32fe5131
RD
508 }
509 cast = cast->next;
510 }
511}
0085ce49
RD
512SWIGRUNTIME void
513SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
514 SWIG_TypeClientData(ti, clientdata);
515 ti->owndata = 1;
516}
517
32fe5131
RD
518/*
519 Search for a swig_type_info structure only by mangled name
520 Search is a O(log #types)
521
522 We start searching at module start, and finish searching when start == end.
523 Note: if start == end at the beginning of the function, we go all the way around
524 the circular list.
525*/
526SWIGRUNTIME swig_type_info *
527SWIG_MangledTypeQueryModule(swig_module_info *start,
528 swig_module_info *end,
529 const char *name) {
530 swig_module_info *iter = start;
531 do {
532 if (iter->size) {
533 register size_t l = 0;
534 register size_t r = iter->size - 1;
535 do {
536 /* since l+r >= 0, we can (>> 1) instead (/ 2) */
537 register size_t i = (l + r) >> 1;
538 const char *iname = iter->types[i]->name;
539 if (iname) {
540 register int compare = strcmp(name, iname);
541 if (compare == 0) {
542 return iter->types[i];
543 } else if (compare < 0) {
544 if (i) {
545 r = i - 1;
546 } else {
547 break;
548 }
549 } else if (compare > 0) {
550 l = i + 1;
551 }
552 } else {
553 break; /* should never happen */
554 }
555 } while (l <= r);
3004cfd8 556 }
32fe5131
RD
557 iter = iter->next;
558 } while (iter != end);
559 return 0;
560}
561
562/*
563 Search for a swig_type_info structure for either a mangled name or a human readable name.
564 It first searches the mangled names of the types, which is a O(log #types)
565 If a type is not found it then searches the human readable names, which is O(#types).
566
567 We start searching at module start, and finish searching when start == end.
568 Note: if start == end at the beginning of the function, we go all the way around
569 the circular list.
570*/
571SWIGRUNTIME swig_type_info *
572SWIG_TypeQueryModule(swig_module_info *start,
573 swig_module_info *end,
574 const char *name) {
575 /* STEP 1: Search the name field using binary search */
576 swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
577 if (ret) {
578 return ret;
579 } else {
580 /* STEP 2: If the type hasn't been found, do a complete search
581 of the str field (the human readable name) */
582 swig_module_info *iter = start;
583 do {
584 register size_t i = 0;
585 for (; i < iter->size; ++i) {
586 if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
587 return iter->types[i];
588 }
589 iter = iter->next;
590 } while (iter != end);
3004cfd8 591 }
32fe5131
RD
592
593 /* neither found a match */
594 return 0;
3004cfd8
RD
595}
596
597/*
598 Pack binary data into a string
599*/
600SWIGRUNTIME char *
601SWIG_PackData(char *c, void *ptr, size_t sz) {
32fe5131
RD
602 static const char hex[17] = "0123456789abcdef";
603 register const unsigned char *u = (unsigned char *) ptr;
604 register const unsigned char *eu = u + sz;
3004cfd8 605 for (; u != eu; ++u) {
32fe5131 606 register unsigned char uu = *u;
3004cfd8
RD
607 *(c++) = hex[(uu & 0xf0) >> 4];
608 *(c++) = hex[uu & 0xf];
609 }
610 return c;
611}
612
613/*
614 Unpack binary data from a string
615*/
616SWIGRUNTIME const char *
617SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
618 register unsigned char *u = (unsigned char *) ptr;
32fe5131 619 register const unsigned char *eu = u + sz;
3004cfd8 620 for (; u != eu; ++u) {
32fe5131 621 register char d = *(c++);
0085ce49 622 register unsigned char uu;
3004cfd8
RD
623 if ((d >= '0') && (d <= '9'))
624 uu = ((d - '0') << 4);
625 else if ((d >= 'a') && (d <= 'f'))
626 uu = ((d - ('a'-10)) << 4);
627 else
628 return (char *) 0;
629 d = *(c++);
630 if ((d >= '0') && (d <= '9'))
631 uu |= (d - '0');
632 else if ((d >= 'a') && (d <= 'f'))
633 uu |= (d - ('a'-10));
634 else
635 return (char *) 0;
636 *u = uu;
637 }
638 return c;
639}
640
3004cfd8
RD
641/*
642 Pack 'void *' into a string buffer.
643*/
644SWIGRUNTIME char *
645SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
646 char *r = buff;
647 if ((2*sizeof(void *) + 2) > bsz) return 0;
648 *(r++) = '_';
649 r = SWIG_PackData(r,&ptr,sizeof(void *));
650 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
651 strcpy(r,name);
652 return buff;
653}
654
655SWIGRUNTIME const char *
656SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
657 if (*c != '_') {
658 if (strcmp(c,"NULL") == 0) {
659 *ptr = (void *) 0;
660 return name;
661 } else {
662 return 0;
663 }
664 }
665 return SWIG_UnpackData(++c,ptr,sizeof(void *));
666}
667
668SWIGRUNTIME char *
669SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
670 char *r = buff;
671 size_t lname = (name ? strlen(name) : 0);
672 if ((2*sz + 2 + lname) > bsz) return 0;
673 *(r++) = '_';
674 r = SWIG_PackData(r,ptr,sz);
675 if (lname) {
676 strncpy(r,name,lname+1);
677 } else {
678 *r = 0;
679 }
680 return buff;
681}
682
683SWIGRUNTIME const char *
684SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
685 if (*c != '_') {
686 if (strcmp(c,"NULL") == 0) {
687 memset(ptr,0,sz);
688 return name;
689 } else {
690 return 0;
691 }
692 }
693 return SWIG_UnpackData(++c,ptr,sz);
694}
d14a1e28
RD
695
696#ifdef __cplusplus
697}
698#endif
699
0085ce49
RD
700/* Errors in SWIG */
701#define SWIG_UnknownError -1
702#define SWIG_IOError -2
703#define SWIG_RuntimeError -3
704#define SWIG_IndexError -4
705#define SWIG_TypeError -5
706#define SWIG_DivisionByZero -6
707#define SWIG_OverflowError -7
708#define SWIG_SyntaxError -8
709#define SWIG_ValueError -9
710#define SWIG_SystemError -10
711#define SWIG_AttributeError -11
712#define SWIG_MemoryError -12
713#define SWIG_NullReferenceError -13
3004cfd8 714
0085ce49
RD
715
716
717/* Python.h has to appear first */
718#include <Python.h>
719
720/* Add PyOS_snprintf for old Pythons */
721#if PY_VERSION_HEX < 0x02020000
722# if defined(_MSC_VER) || defined(__BORLANDC__) || defined(_WATCOM)
723# define PyOS_snprintf _snprintf
724# else
725# define PyOS_snprintf snprintf
726# endif
727#endif
728
729/* A crude PyString_FromFormat implementation for old Pythons */
730#if PY_VERSION_HEX < 0x02020000
731
732#ifndef SWIG_PYBUFFER_SIZE
733# define SWIG_PYBUFFER_SIZE 1024
734#endif
735
736static PyObject *
737PyString_FromFormat(const char *fmt, ...) {
738 va_list ap;
739 char buf[SWIG_PYBUFFER_SIZE * 2];
740 int res;
741 va_start(ap, fmt);
742 res = vsnprintf(buf, sizeof(buf), fmt, ap);
743 va_end(ap);
744 return (res < 0 || res >= (int)sizeof(buf)) ? 0 : PyString_FromString(buf);
745}
746#endif
747
748/* Add PyObject_Del for old Pythons */
749#if PY_VERSION_HEX < 0x01060000
750# define PyObject_Del(op) PyMem_DEL((op))
751#endif
752#ifndef PyObject_DEL
753# define PyObject_DEL PyObject_Del
754#endif
755
756/* A crude PyExc_StopIteration exception for old Pythons */
757#if PY_VERSION_HEX < 0x02020000
758# ifndef PyExc_StopIteration
759# define PyExc_StopIteration PyExc_RuntimeError
760# endif
761# ifndef PyObject_GenericGetAttr
762# define PyObject_GenericGetAttr 0
763# endif
764#endif
765/* Py_NotImplemented is defined in 2.1 and up. */
766#if PY_VERSION_HEX < 0x02010000
767# ifndef Py_NotImplemented
768# define Py_NotImplemented PyExc_RuntimeError
769# endif
770#endif
771
772
773/* A crude PyString_AsStringAndSize implementation for old Pythons */
774#if PY_VERSION_HEX < 0x02010000
775# ifndef PyString_AsStringAndSize
776# define PyString_AsStringAndSize(obj, s, len) {*s = PyString_AsString(obj); *len = *s ? strlen(*s) : 0;}
777# endif
778#endif
779
780/* PySequence_Size for old Pythons */
781#if PY_VERSION_HEX < 0x02000000
782# ifndef PySequence_Size
783# define PySequence_Size PySequence_Length
784# endif
785#endif
786
787
788/* PyBool_FromLong for old Pythons */
789#if PY_VERSION_HEX < 0x02030000
790static
791PyObject *PyBool_FromLong(long ok)
792{
793 PyObject *result = ok ? Py_True : Py_False;
794 Py_INCREF(result);
795 return result;
796}
3004cfd8
RD
797#endif
798
0085ce49 799
3004cfd8 800/* -----------------------------------------------------------------------------
0085ce49 801 * error manipulation
3004cfd8
RD
802 * ----------------------------------------------------------------------------- */
803
0085ce49
RD
804SWIGRUNTIME PyObject*
805SWIG_Python_ErrorType(int code) {
806 PyObject* type = 0;
807 switch(code) {
808 case SWIG_MemoryError:
809 type = PyExc_MemoryError;
810 break;
811 case SWIG_IOError:
812 type = PyExc_IOError;
813 break;
814 case SWIG_RuntimeError:
815 type = PyExc_RuntimeError;
816 break;
817 case SWIG_IndexError:
818 type = PyExc_IndexError;
819 break;
820 case SWIG_TypeError:
821 type = PyExc_TypeError;
822 break;
823 case SWIG_DivisionByZero:
824 type = PyExc_ZeroDivisionError;
825 break;
826 case SWIG_OverflowError:
827 type = PyExc_OverflowError;
828 break;
829 case SWIG_SyntaxError:
830 type = PyExc_SyntaxError;
831 break;
832 case SWIG_ValueError:
833 type = PyExc_ValueError;
834 break;
835 case SWIG_SystemError:
836 type = PyExc_SystemError;
837 break;
838 case SWIG_AttributeError:
839 type = PyExc_AttributeError;
840 break;
841 default:
842 type = PyExc_RuntimeError;
843 }
844 return type;
845}
3004cfd8 846
0085ce49
RD
847
848SWIGRUNTIME void
849SWIG_Python_AddErrorMsg(const char* mesg)
850{
851 PyObject *type = 0;
852 PyObject *value = 0;
853 PyObject *traceback = 0;
854
855 if (PyErr_Occurred()) PyErr_Fetch(&type, &value, &traceback);
856 if (value) {
857 PyObject *old_str = PyObject_Str(value);
858 PyErr_Clear();
859 Py_XINCREF(type);
860 PyErr_Format(type, "%s %s", PyString_AsString(old_str), mesg);
861 Py_DECREF(old_str);
862 Py_DECREF(value);
863 } else {
864 PyErr_Format(PyExc_RuntimeError, mesg);
865 }
866}
867
868
869
870#if defined(SWIG_PYTHON_NO_THREADS)
871# if defined(SWIG_PYTHON_THREADS)
872# undef SWIG_PYTHON_THREADS
873# endif
874#endif
875#if defined(SWIG_PYTHON_THREADS) /* Threading support is enabled */
876# if !defined(SWIG_PYTHON_USE_GIL) && !defined(SWIG_PYTHON_NO_USE_GIL)
877# if (PY_VERSION_HEX >= 0x02030000) /* For 2.3 or later, use the PyGILState calls */
878# define SWIG_PYTHON_USE_GIL
879# endif
880# endif
881# if defined(SWIG_PYTHON_USE_GIL) /* Use PyGILState threads calls */
882# ifndef SWIG_PYTHON_INITIALIZE_THREADS
883# define SWIG_PYTHON_INITIALIZE_THREADS PyEval_InitThreads()
884# endif
885# ifdef __cplusplus /* C++ code */
886 class SWIG_Python_Thread_Block {
887 bool status;
888 PyGILState_STATE state;
889 public:
890 void end() { if (status) { PyGILState_Release(state); status = false;} }
891 SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {}
892 ~SWIG_Python_Thread_Block() { end(); }
893 };
894 class SWIG_Python_Thread_Allow {
895 bool status;
896 PyThreadState *save;
897 public:
898 void end() { if (status) { PyEval_RestoreThread(save); status = false; }}
899 SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {}
900 ~SWIG_Python_Thread_Allow() { end(); }
901 };
902# define SWIG_PYTHON_THREAD_BEGIN_BLOCK SWIG_Python_Thread_Block _swig_thread_block
903# define SWIG_PYTHON_THREAD_END_BLOCK _swig_thread_block.end()
904# define SWIG_PYTHON_THREAD_BEGIN_ALLOW SWIG_Python_Thread_Allow _swig_thread_allow
905# define SWIG_PYTHON_THREAD_END_ALLOW _swig_thread_allow.end()
906# else /* C code */
907# define SWIG_PYTHON_THREAD_BEGIN_BLOCK PyGILState_STATE _swig_thread_block = PyGILState_Ensure()
908# define SWIG_PYTHON_THREAD_END_BLOCK PyGILState_Release(_swig_thread_block)
909# define SWIG_PYTHON_THREAD_BEGIN_ALLOW PyThreadState *_swig_thread_allow = PyEval_SaveThread()
910# define SWIG_PYTHON_THREAD_END_ALLOW PyEval_RestoreThread(_swig_thread_allow)
911# endif
912# else /* Old thread way, not implemented, user must provide it */
913# if !defined(SWIG_PYTHON_INITIALIZE_THREADS)
914# define SWIG_PYTHON_INITIALIZE_THREADS
915# endif
916# if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK)
917# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
918# endif
919# if !defined(SWIG_PYTHON_THREAD_END_BLOCK)
920# define SWIG_PYTHON_THREAD_END_BLOCK
921# endif
922# if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW)
923# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
924# endif
925# if !defined(SWIG_PYTHON_THREAD_END_ALLOW)
926# define SWIG_PYTHON_THREAD_END_ALLOW
927# endif
928# endif
929#else /* No thread support */
930# define SWIG_PYTHON_INITIALIZE_THREADS
931# define SWIG_PYTHON_THREAD_BEGIN_BLOCK
932# define SWIG_PYTHON_THREAD_END_BLOCK
933# define SWIG_PYTHON_THREAD_BEGIN_ALLOW
934# define SWIG_PYTHON_THREAD_END_ALLOW
3004cfd8
RD
935#endif
936
0085ce49
RD
937/* -----------------------------------------------------------------------------
938 * Python API portion that goes into the runtime
939 * ----------------------------------------------------------------------------- */
3004cfd8 940
0085ce49
RD
941#ifdef __cplusplus
942extern "C" {
943#if 0
944} /* cc-mode */
945#endif
946#endif
3004cfd8
RD
947
948/* -----------------------------------------------------------------------------
949 * Constant declarations
950 * ----------------------------------------------------------------------------- */
951
952/* Constant Types */
d14a1e28
RD
953#define SWIG_PY_POINTER 4
954#define SWIG_PY_BINARY 5
955
3004cfd8
RD
956/* Constant information structure */
957typedef struct swig_const_info {
0085ce49
RD
958 int type;
959 char *name;
960 long lvalue;
961 double dvalue;
962 void *pvalue;
963 swig_type_info **ptype;
3004cfd8
RD
964} swig_const_info;
965
3004cfd8 966#ifdef __cplusplus
0085ce49
RD
967#if 0
968{ /* cc-mode */
969#endif
3004cfd8
RD
970}
971#endif
972
973
0085ce49
RD
974/* -----------------------------------------------------------------------------
975 * See the LICENSE file for information on copyright, usage and redistribution
976 * of SWIG, and the README file for authors - http://www.swig.org/release.html.
977 *
3004cfd8
RD
978 * pyrun.swg
979 *
0085ce49
RD
980 * This file contains the runtime support for Python modules
981 * and includes code for managing global variables and pointer
982 * type checking.
3004cfd8 983 *
0085ce49 984 * ----------------------------------------------------------------------------- */
3004cfd8
RD
985
986/* Common SWIG API */
3004cfd8 987
0085ce49
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
3004cfd8 996
0085ce49
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)
3004cfd8 1000
0085ce49
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)
3004cfd8 1004
0085ce49
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)
3004cfd8 1008
0085ce49
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
3004cfd8 1013
0085ce49 1014/* Runtime API */
3004cfd8 1015
0085ce49
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
0085ce49
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
3004cfd8 1026
0085ce49 1027/* Runtime API implementation */
3004cfd8 1028
0085ce49 1029/* Error manipulation */
3004cfd8 1030
0085ce49
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;
3004cfd8
RD
1037}
1038
0085ce49
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;
3004cfd8
RD
1044}
1045
0085ce49 1046#define SWIG_Python_Raise(obj, type, desc) SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj)
32fe5131 1047
0085ce49 1048/* Set a constant value */
3004cfd8 1049
0085ce49
RD
1050SWIGINTERN void
1051SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj) {
1052 PyDict_SetItemString(d, (char*) name, obj);
1053 Py_DECREF(obj);
3004cfd8
RD
1054}
1055
0085ce49 1056/* Append a value to the result obj */
3004cfd8 1057
0085ce49
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;
3004cfd8 1084 } else {
0085ce49
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);
3004cfd8 1096 }
0085ce49
RD
1097 return result;
1098#endif
3004cfd8
RD
1099}
1100
0085ce49 1101/* Unpack the argument tuple */
3004cfd8 1102
0085ce49
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*/
3004cfd8
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
3004cfd8 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 */
3004cfd8
RD
1609#endif
1610 };
1611
0085ce49 1612 static PyTypeObject pyswigobject_type;
32fe5131 1613 static int type_init = 0;
3004cfd8 1614 if (!type_init) {
0085ce49
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 */
3004cfd8 1628#endif
0085ce49
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 */
3004cfd8 1647#if PY_VERSION_HEX >= 0x02020000
0085ce49
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 */
3004cfd8
RD
1668#endif
1669#if PY_VERSION_HEX >= 0x02030000
0085ce49 1670 0, /* tp_del */
3004cfd8
RD
1671#endif
1672#ifdef COUNT_ALLOCS
0085ce49 1673 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 1674#endif
0085ce49 1675 };
32fe5131 1676 pyswigobject_type = tmp;
0085ce49 1677 pyswigobject_type.ob_type = &PyType_Type;
3004cfd8
RD
1678 type_init = 1;
1679 }
32fe5131 1680 return &pyswigobject_type;
3004cfd8
RD
1681}
1682
1683SWIGRUNTIME PyObject *
0085ce49 1684PySwigObject_New(void *ptr, swig_type_info *ty, int own)
3004cfd8 1685{
0085ce49
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 }
0085ce49 1693 return (PyObject *)sobj;
3004cfd8
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;
0085ce49 1703 swig_type_info *ty;
3004cfd8
RD
1704 size_t size;
1705} PySwigPacked;
1706
1707SWIGRUNTIME int
0085ce49 1708PySwigPacked_print(PySwigPacked *v, FILE *fp, int SWIGUNUSEDPARM(flags))
3004cfd8
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 }
0085ce49 1716 fputs(v->ty->name,fp);
3004cfd8
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))) {
0085ce49 1726 return PyString_FromFormat("<Swig Packed at %s%s>", result, v->ty->name);
3004cfd8 1727 } else {
0085ce49 1728 return PyString_FromFormat("<Swig Packed %s>", v->ty->name);
3004cfd8
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))){
0085ce49 1737 return PyString_FromFormat("%s%s", result, v->ty->name);
3004cfd8 1738 } else {
0085ce49 1739 return PyString_FromString(v->ty->name);
3004cfd8
RD
1740 }
1741}
1742
1743SWIGRUNTIME int
1744PySwigPacked_compare(PySwigPacked *v, PySwigPacked *w)
1745{
0085ce49
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);
1750}
1751
1752SWIGRUNTIME PyTypeObject* _PySwigPacked_type(void);
1753
1754SWIGRUNTIME PyTypeObject*
1755PySwigPacked_type(void) {
1756 static PyTypeObject *SWIG_STATIC_POINTER(type) = _PySwigPacked_type();
1757 return type;
1758}
1759
1760SWIGRUNTIMEINLINE int
1761PySwigPacked_Check(PyObject *op) {
1762 return ((op)->ob_type == _PySwigPacked_type())
1763 || (strcmp((op)->ob_type->tp_name,"PySwigPacked") == 0);
3004cfd8
RD
1764}
1765
1766SWIGRUNTIME void
0085ce49 1767PySwigPacked_dealloc(PyObject *v)
3004cfd8 1768{
0085ce49
RD
1769 if (PySwigPacked_Check(v)) {
1770 PySwigPacked *sobj = (PySwigPacked *) v;
1771 free(sobj->pack);
1772 }
1773 PyObject_DEL(v);
3004cfd8
RD
1774}
1775
1776SWIGRUNTIME PyTypeObject*
0085ce49
RD
1777_PySwigPacked_type(void) {
1778 static char swigpacked_doc[] = "Swig object carries a C/C++ instance pointer";
1779 static PyTypeObject pyswigpacked_type;
32fe5131 1780 static int type_init = 0;
3004cfd8 1781 if (!type_init) {
0085ce49
RD
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 */
3004cfd8
RD
1831#endif
1832#if PY_VERSION_HEX >= 0x02030000
0085ce49 1833 0, /* tp_del */
3004cfd8
RD
1834#endif
1835#ifdef COUNT_ALLOCS
0085ce49 1836 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 1837#endif
0085ce49 1838 };
32fe5131 1839 pyswigpacked_type = tmp;
0085ce49 1840 pyswigpacked_type.ob_type = &PyType_Type;
3004cfd8
RD
1841 type_init = 1;
1842 }
32fe5131 1843 return &pyswigpacked_type;
3004cfd8
RD
1844}
1845
1846SWIGRUNTIME PyObject *
0085ce49 1847PySwigPacked_New(void *ptr, size_t size, swig_type_info *ty)
3004cfd8 1848{
0085ce49
RD
1849 PySwigPacked *sobj = PyObject_NEW(PySwigPacked, PySwigPacked_type());
1850 if (sobj) {
3004cfd8 1851 void *pack = malloc(size);
32fe5131
RD
1852 if (pack) {
1853 memcpy(pack, ptr, size);
0085ce49
RD
1854 sobj->pack = pack;
1855 sobj->ty = ty;
1856 sobj->size = size;
1857 } else {
1858 PyObject_DEL((PyObject *) sobj);
1859 sobj = 0;
32fe5131 1860 }
3004cfd8 1861 }
0085ce49 1862 return (PyObject *) sobj;
3004cfd8
RD
1863}
1864
0085ce49 1865SWIGRUNTIME swig_type_info *
3004cfd8
RD
1866PySwigPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
1867{
0085ce49
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;
1873 } else {
1874 return 0;
1875 }
3004cfd8
RD
1876}
1877
3004cfd8 1878/* -----------------------------------------------------------------------------
0085ce49 1879 * pointers/data manipulation
3004cfd8
RD
1880 * ----------------------------------------------------------------------------- */
1881
0085ce49
RD
1882SWIGRUNTIMEINLINE PyObject *
1883_SWIG_This(void)
1884{
1885 return PyString_FromString("this");
1886}
3004cfd8 1887
0085ce49
RD
1888SWIGRUNTIME PyObject *
1889SWIG_This(void)
1890{
1891 static PyObject *SWIG_STATIC_POINTER(swig_this) = _SWIG_This();
1892 return swig_this;
1893}
3004cfd8 1894
0085ce49 1895/* #define SWIG_PYTHON_SLOW_GETSET_THIS */
3004cfd8 1896
0085ce49
RD
1897SWIGRUNTIME PySwigObject *
1898SWIG_Python_GetSwigThis(PyObject *pyobj)
3004cfd8 1899{
0085ce49
RD
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);
3004cfd8 1922 } else {
0085ce49
RD
1923 if (PyErr_Occurred()) PyErr_Clear();
1924 return 0;
3004cfd8 1925 }
3004cfd8 1926 }
0085ce49
RD
1927 }
1928#else
1929 obj = PyObject_GetAttr(pyobj,SWIG_This());
1930 if (obj) {
1931 Py_DECREF(obj);
1932 } else {
1933 if (PyErr_Occurred()) PyErr_Clear();
1934 return 0;
1935 }
1936#endif
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;
3004cfd8
RD
1943 }
1944}
1945
0085ce49
RD
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 }
3004cfd8 1957 }
0085ce49 1958 return 0;
3004cfd8
RD
1959}
1960
0085ce49
RD
1961/* Convert a pointer value */
1962
3004cfd8 1963SWIGRUNTIME int
0085ce49
RD
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 }
3004cfd8 1988 } else {
0085ce49
RD
1989 if (ptr) *ptr = vptr;
1990 break;
3004cfd8 1991 }
3004cfd8 1992 }
0085ce49
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;
1999 } else {
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;
2037 }
3004cfd8
RD
2038 }
2039}
2040
0085ce49
RD
2041/* Convert a function ptr value */
2042
3004cfd8 2043SWIGRUNTIME int
0085ce49
RD
2044SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty) {
2045 if (!PyCFunction_Check(obj)) {
2046 return SWIG_ConvertPtr(obj, ptr, ty, 0);
3004cfd8 2047 } else {
0085ce49
RD
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;
2063 }
2064 return SWIG_OK;
3004cfd8
RD
2065 }
2066}
2067
0085ce49 2068/* Convert a packed value value */
3004cfd8 2069
3004cfd8 2070SWIGRUNTIME int
0085ce49
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 }
3004cfd8 2080 }
0085ce49
RD
2081 return SWIG_OK;
2082}
3004cfd8 2083
0085ce49
RD
2084/* -----------------------------------------------------------------------------
2085 * Create a new pointer object
2086 * ----------------------------------------------------------------------------- */
3004cfd8 2087
0085ce49
RD
2088/*
2089 Create a new instance object, whitout calling __init__, and set the
2090 'this' attribute.
2091*/
3004cfd8 2092
0085ce49
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 }
3004cfd8 2111 }
0085ce49
RD
2112#else
2113 PyObject *key = SWIG_This();
2114 PyObject_SetAttr(inst, key, swig_this);
2115#endif
3004cfd8 2116 }
0085ce49
RD
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);
3004cfd8 2122 }
0085ce49
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;
3004cfd8 2136 }
0085ce49
RD
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;
3004cfd8 2143 }
0085ce49
RD
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
3004cfd8 2154}
d14a1e28 2155
0085ce49
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 }
3004cfd8 2171#endif
0085ce49
RD
2172 dict = PyObject_GetAttrString(inst, "__dict__");
2173 PyDict_SetItem(dict, SWIG_This(), swig_this);
2174 Py_DECREF(dict);
2175}
d14a1e28 2176
0085ce49
RD
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]);
3004cfd8 2187 } else {
0085ce49 2188 SWIG_Python_SetSwigThis(obj[0], obj[1]);
3004cfd8 2189 }
0085ce49 2190 return SWIG_Py_Void();
3004cfd8 2191 }
0085ce49
RD
2192}
2193
2194/* Create a new pointer object */
3004cfd8 2195
3004cfd8 2196SWIGRUNTIME PyObject *
0085ce49 2197SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
3004cfd8 2198 if (!ptr) {
0085ce49
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;
3004cfd8 2209 }
3004cfd8 2210 }
0085ce49 2211 return robj;
3004cfd8 2212 }
3004cfd8 2213}
d14a1e28 2214
0085ce49
RD
2215/* Create a new packed object */
2216
2217SWIGRUNTIMEINLINE PyObject *
3004cfd8 2218SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
0085ce49 2219 return ptr ? PySwigPacked_New((void *) ptr, sz, type) : SWIG_Py_Void();
3004cfd8 2220}
d14a1e28 2221
3004cfd8
RD
2222/* -----------------------------------------------------------------------------*
2223 * Get type list
2224 * -----------------------------------------------------------------------------*/
d14a1e28 2225
3004cfd8
RD
2226#ifdef SWIG_LINK_RUNTIME
2227void *SWIG_ReturnGlobalTypeList(void *);
2228#endif
d14a1e28 2229
32fe5131
RD
2230SWIGRUNTIME swig_module_info *
2231SWIG_Python_GetModule(void) {
3004cfd8
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 }
3004cfd8 2244#endif
32fe5131
RD
2245 }
2246 return (swig_module_info *) type_pointer;
3004cfd8 2247}
d14a1e28 2248
32fe5131
RD
2249#if PY_MAJOR_VERSION < 2
2250/* PyModule_AddObject function was introduced in Python 2.0. The following function
0085ce49 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");
0085ce49 2259 return SWIG_ERROR;
32fe5131
RD
2260 }
2261 if (!o) {
2262 PyErr_SetString(PyExc_TypeError,
2263 "PyModule_AddObject() needs non-NULL value");
0085ce49 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));
0085ce49 2272 return SWIG_ERROR;
32fe5131
RD
2273 }
2274 if (PyDict_SetItemString(dict, name, o))
0085ce49 2275 return SWIG_ERROR;
32fe5131 2276 Py_DECREF(o);
0085ce49 2277 return SWIG_OK;
3004cfd8 2278}
32fe5131 2279#endif
d14a1e28 2280
0085ce49
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);
0085ce49 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);
0085ce49
RD
2306 } else {
2307 Py_XDECREF(pointer);
32fe5131
RD
2308 }
2309}
d14a1e28 2310
0085ce49
RD
2311/* The python cached type query */
2312SWIGRUNTIME PyObject *
2313SWIG_Python_TypeCache() {
2314 static PyObject *SWIG_STATIC_POINTER(cache) = PyDict_New();
2315 return cache;
d14a1e28 2316}
d14a1e28 2317
0085ce49
RD
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}
d14a1e28 2339
0085ce49
RD
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)
d14a1e28 2346
0085ce49
RD
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 }
2440 }
2441 return result;
2442}
2443
2444
2445#ifdef __cplusplus
2446#if 0
2447{ /* cc-mode */
2448#endif
2449}
2450#endif
2451
2452
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
2460/* -------- TYPES TABLE (BEGIN) -------- */
2461
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]
32fe5131
RD
2473#define SWIGTYPE_p_wxCURHandler swig_types[11]
2474#define SWIGTYPE_p_wxChildFocusEvent swig_types[12]
2475#define SWIGTYPE_p_wxCloseEvent swig_types[13]
2476#define SWIGTYPE_p_wxCommandEvent swig_types[14]
2477#define SWIGTYPE_p_wxContextMenuEvent swig_types[15]
2478#define SWIGTYPE_p_wxControl swig_types[16]
2479#define SWIGTYPE_p_wxControlWithItems swig_types[17]
2480#define SWIGTYPE_p_wxDateEvent swig_types[18]
2481#define SWIGTYPE_p_wxDisplayChangedEvent swig_types[19]
2482#define SWIGTYPE_p_wxDropFilesEvent swig_types[20]
2483#define SWIGTYPE_p_wxDuplexMode swig_types[21]
2484#define SWIGTYPE_p_wxEraseEvent swig_types[22]
2485#define SWIGTYPE_p_wxEvent swig_types[23]
2486#define SWIGTYPE_p_wxEvtHandler swig_types[24]
2487#define SWIGTYPE_p_wxFSFile swig_types[25]
2488#define SWIGTYPE_p_wxFileSystem swig_types[26]
2489#define SWIGTYPE_p_wxFlexGridSizer swig_types[27]
2490#define SWIGTYPE_p_wxFocusEvent swig_types[28]
2491#define SWIGTYPE_p_wxGBSizerItem swig_types[29]
2492#define SWIGTYPE_p_wxGIFHandler swig_types[30]
2493#define SWIGTYPE_p_wxGLCanvas swig_types[31]
2494#define SWIGTYPE_p_wxGLContext swig_types[32]
2495#define SWIGTYPE_p_wxGridBagSizer swig_types[33]
2496#define SWIGTYPE_p_wxGridSizer swig_types[34]
2497#define SWIGTYPE_p_wxICOHandler swig_types[35]
2498#define SWIGTYPE_p_wxIconizeEvent swig_types[36]
2499#define SWIGTYPE_p_wxIdleEvent swig_types[37]
2500#define SWIGTYPE_p_wxImage swig_types[38]
2501#define SWIGTYPE_p_wxImageHandler swig_types[39]
2502#define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[40]
2503#define SWIGTYPE_p_wxInitDialogEvent swig_types[41]
2504#define SWIGTYPE_p_wxJPEGHandler swig_types[42]
2505#define SWIGTYPE_p_wxKeyEvent swig_types[43]
2506#define SWIGTYPE_p_wxLayoutConstraints swig_types[44]
2507#define SWIGTYPE_p_wxMaximizeEvent swig_types[45]
2508#define SWIGTYPE_p_wxMenu swig_types[46]
2509#define SWIGTYPE_p_wxMenuBar swig_types[47]
2510#define SWIGTYPE_p_wxMenuEvent swig_types[48]
2511#define SWIGTYPE_p_wxMenuItem swig_types[49]
2512#define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[50]
2513#define SWIGTYPE_p_wxMouseEvent swig_types[51]
2514#define SWIGTYPE_p_wxMoveEvent swig_types[52]
2515#define SWIGTYPE_p_wxNavigationKeyEvent swig_types[53]
2516#define SWIGTYPE_p_wxNcPaintEvent swig_types[54]
2517#define SWIGTYPE_p_wxNotifyEvent swig_types[55]
2518#define SWIGTYPE_p_wxObject swig_types[56]
2519#define SWIGTYPE_p_wxPCXHandler swig_types[57]
2520#define SWIGTYPE_p_wxPNGHandler swig_types[58]
2521#define SWIGTYPE_p_wxPNMHandler swig_types[59]
2522#define SWIGTYPE_p_wxPaintEvent swig_types[60]
2523#define SWIGTYPE_p_wxPalette swig_types[61]
2524#define SWIGTYPE_p_wxPaletteChangedEvent swig_types[62]
2525#define SWIGTYPE_p_wxPaperSize swig_types[63]
2526#define SWIGTYPE_p_wxPyApp swig_types[64]
2527#define SWIGTYPE_p_wxPyCommandEvent swig_types[65]
2528#define SWIGTYPE_p_wxPyEvent swig_types[66]
2529#define SWIGTYPE_p_wxPyImageHandler swig_types[67]
2530#define SWIGTYPE_p_wxPySizer swig_types[68]
2531#define SWIGTYPE_p_wxPyValidator swig_types[69]
2532#define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[70]
2533#define SWIGTYPE_p_wxScrollEvent swig_types[71]
2534#define SWIGTYPE_p_wxScrollWinEvent swig_types[72]
2535#define SWIGTYPE_p_wxSetCursorEvent swig_types[73]
2536#define SWIGTYPE_p_wxShowEvent swig_types[74]
2537#define SWIGTYPE_p_wxSizeEvent swig_types[75]
2538#define SWIGTYPE_p_wxSizer swig_types[76]
2539#define SWIGTYPE_p_wxSizerItem swig_types[77]
2540#define SWIGTYPE_p_wxStaticBoxSizer swig_types[78]
2541#define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[79]
2542#define SWIGTYPE_p_wxSysColourChangedEvent swig_types[80]
2543#define SWIGTYPE_p_wxTIFFHandler swig_types[81]
2544#define SWIGTYPE_p_wxUpdateUIEvent swig_types[82]
2545#define SWIGTYPE_p_wxValidator swig_types[83]
2546#define SWIGTYPE_p_wxWindow swig_types[84]
2547#define SWIGTYPE_p_wxWindowCreateEvent swig_types[85]
2548#define SWIGTYPE_p_wxWindowDestroyEvent swig_types[86]
2549#define SWIGTYPE_p_wxXPMHandler swig_types[87]
0085ce49
RD
2550static swig_type_info *swig_types[89];
2551static swig_module_info swig_module = {swig_types, 88, 0, 0, 0, 0};
32fe5131
RD
2552#define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
2553#define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
d14a1e28
RD
2554
2555/* -------- TYPES TABLE (END) -------- */
2556
0085ce49
RD
2557#if (PY_VERSION_HEX <= 0x02000000)
2558# if !defined(SWIG_PYTHON_CLASSIC)
2559# error "This python version requires to use swig with the '-classic' option"
2560# endif
2561#endif
2562#if (PY_VERSION_HEX <= 0x02020000)
2563# error "This python version requires to use swig with the '-nomodern' option"
2564#endif
2565#if (PY_VERSION_HEX <= 0x02020000)
2566# error "This python version requires to use swig with the '-nomodernargs' option"
2567#endif
2568#ifndef METH_O
2569# error "This python version requires to use swig with the '-nofastunpack' option"
2570#endif
d14a1e28
RD
2571
2572/*-----------------------------------------------
2573 @(target):= _glcanvas.so
2574 ------------------------------------------------*/
2575#define SWIG_init init_glcanvas
2576
2577#define SWIG_name "_glcanvas"
2578
0085ce49 2579#define SWIGVERSION 0x010329
d14a1e28 2580
d14a1e28 2581
0085ce49
RD
2582#define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
2583#define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
d14a1e28 2584
994141e6 2585
0085ce49 2586#include <stdexcept>
994141e6
RD
2587
2588
0085ce49
RD
2589namespace swig {
2590 class PyObject_ptr {
2591 protected:
2592 PyObject *_obj;
15afbcd0 2593
0085ce49
RD
2594 public:
2595 PyObject_ptr() :_obj(0)
2596 {
2597 }
15afbcd0 2598
0085ce49
RD
2599 PyObject_ptr(const PyObject_ptr& item) : _obj(item._obj)
2600 {
2601 Py_XINCREF(_obj);
15afbcd0 2602 }
0085ce49
RD
2603
2604 PyObject_ptr(PyObject *obj, bool initial_ref = true) :_obj(obj)
2605 {
2606 if (initial_ref) Py_XINCREF(_obj);
69223c70 2607 }
0085ce49
RD
2608
2609 PyObject_ptr & operator=(const PyObject_ptr& item)
2610 {
2611 Py_XINCREF(item._obj);
2612 Py_XDECREF(_obj);
2613 _obj = item._obj;
2614 return *this;
2615 }
2616
2617 ~PyObject_ptr()
2618 {
2619 Py_XDECREF(_obj);
2620 }
2621
2622 operator PyObject *() const
2623 {
2624 return _obj;
2625 }
2626
2627 PyObject *operator->() const
2628 {
2629 return _obj;
2630 }
2631 };
994141e6
RD
2632}
2633
15afbcd0 2634
0085ce49
RD
2635namespace swig {
2636 struct PyObject_var : PyObject_ptr {
2637 PyObject_var(PyObject* obj = 0) : PyObject_ptr(obj, false) { }
2638
2639 PyObject_var & operator = (PyObject* obj)
2640 {
2641 Py_XDECREF(_obj);
2642 _obj = obj;
2643 return *this;
c32bde28 2644 }
0085ce49 2645 };
15afbcd0 2646}
0085ce49
RD
2647
2648
2649#include "wx/wxPython/wxPython.h"
2650#include "wx/wxPython/pyclasses.h"
2651
2652#include <wx/glcanvas.h>
2653
2654
2655 static const wxString wxPyGLCanvasNameStr(wxT("GLCanvas"));
2656 static const wxString wxPyEmptyString(wxEmptyString);
2657
2658SWIGINTERN int
2659SWIG_AsVal_long (PyObject* obj, long* val)
c32bde28 2660{
0085ce49
RD
2661 if (PyNumber_Check(obj)) {
2662 if (val) *val = PyInt_AsLong(obj);
2663 return SWIG_OK;
2664 }
2665 return SWIG_TypeError;
c32bde28 2666}
15afbcd0
RD
2667
2668
3004cfd8 2669SWIGINTERN int
0085ce49 2670SWIG_AsVal_bool (PyObject *obj, bool *val)
15afbcd0 2671{
c32bde28
RD
2672 if (obj == Py_True) {
2673 if (val) *val = true;
0085ce49
RD
2674 return SWIG_OK;
2675 } else if (obj == Py_False) {
c32bde28 2676 if (val) *val = false;
0085ce49 2677 return SWIG_OK;
3004cfd8 2678 } else {
0085ce49
RD
2679 long v = 0;
2680 int res = SWIG_AddCast(SWIG_AsVal_long (obj, val ? &v : 0));
2681 if (SWIG_IsOK(res) && val) *val = v ? true : false;
2682 return res;
c32bde28 2683 }
15afbcd0
RD
2684}
2685
2686
0085ce49 2687 #define SWIG_From_long PyInt_FromLong
c32bde28
RD
2688
2689
0085ce49
RD
2690SWIGINTERNINLINE PyObject *
2691SWIG_From_int (int value)
2692{
2693 return SWIG_From_long (value);
c32bde28
RD
2694}
2695
2696
0085ce49
RD
2697#include <limits.h>
2698#ifndef LLONG_MIN
2699# define LLONG_MIN LONG_LONG_MIN
2700#endif
2701#ifndef LLONG_MAX
2702# define LLONG_MAX LONG_LONG_MAX
2703#endif
2704#ifndef ULLONG_MAX
2705# define ULLONG_MAX ULONG_LONG_MAX
2706#endif
c32bde28 2707
c32bde28 2708
0085ce49
RD
2709SWIGINTERN int
2710SWIG_AsVal_int (PyObject * obj, int *val)
c32bde28 2711{
0085ce49
RD
2712 long v;
2713 int res = SWIG_AsVal_long (obj, &v);
2714 if (SWIG_IsOK(res)) {
2715 if ((v < INT_MIN || v > INT_MAX)) {
2716 return SWIG_OverflowError;
2717 } else {
2718 if (val) *val = static_cast< int >(v);
2719 }
2720 }
2721 return res;
15afbcd0
RD
2722}
2723
d14a1e28
RD
2724#ifdef __cplusplus
2725extern "C" {
2726#endif
0085ce49
RD
2727SWIGINTERN int GLCanvasNameStr_set(PyObject *) {
2728 SWIG_Error(SWIG_AttributeError,"Variable GLCanvasNameStr is read-only.");
2729 return 1;
b2dc1044
RD
2730}
2731
2732
0085ce49
RD
2733SWIGINTERN PyObject *GLCanvasNameStr_get(void) {
2734 PyObject *pyobj = 0;
2735
2736 {
b2dc1044 2737#if wxUSE_UNICODE
0085ce49 2738 pyobj = PyUnicode_FromWideChar((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
b2dc1044 2739#else
0085ce49 2740 pyobj = PyString_FromStringAndSize((&wxPyGLCanvasNameStr)->c_str(), (&wxPyGLCanvasNameStr)->Len());
b2dc1044 2741#endif
0085ce49
RD
2742 }
2743 return pyobj;
2744}
2745
2746
2747SWIGINTERN PyObject *_wrap_new_GLContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2748 PyObject *resultobj = 0;
2749 bool arg1 ;
2750 wxGLCanvas *arg2 = (wxGLCanvas *) 0 ;
2751 wxPalette const &arg3_defvalue = wxNullPalette ;
2752 wxPalette *arg3 = (wxPalette *) &arg3_defvalue ;
2753 wxGLContext *arg4 = (wxGLContext *) NULL ;
2754 wxGLContext *result = 0 ;
2755 bool val1 ;
2756 int ecode1 = 0 ;
2757 void *argp2 = 0 ;
2758 int res2 = 0 ;
2759 void *argp3 = 0 ;
2760 int res3 = 0 ;
2761 void *argp4 = 0 ;
2762 int res4 = 0 ;
2763 PyObject * obj0 = 0 ;
2764 PyObject * obj1 = 0 ;
2765 PyObject * obj2 = 0 ;
2766 PyObject * obj3 = 0 ;
2767 char * kwnames[] = {
2768 (char *) "isRGB",(char *) "win",(char *) "palette",(char *) "other", NULL
2769 };
2770
2771 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|OO:new_GLContext",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
2772 ecode1 = SWIG_AsVal_bool(obj0, &val1);
2773 if (!SWIG_IsOK(ecode1)) {
2774 SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "new_GLContext" "', expected argument " "1"" of type '" "bool""'");
2775 }
2776 arg1 = static_cast< bool >(val1);
2777 res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
2778 if (!SWIG_IsOK(res2)) {
2779 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_GLContext" "', expected argument " "2"" of type '" "wxGLCanvas *""'");
2780 }
2781 arg2 = reinterpret_cast< wxGLCanvas * >(argp2);
2782 if (obj2) {
2783 res3 = SWIG_ConvertPtr(obj2, &argp3, SWIGTYPE_p_wxPalette, 0 | 0);
2784 if (!SWIG_IsOK(res3)) {
2785 SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "new_GLContext" "', expected argument " "3"" of type '" "wxPalette const &""'");
b2dc1044 2786 }
0085ce49
RD
2787 if (!argp3) {
2788 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_GLContext" "', expected argument " "3"" of type '" "wxPalette const &""'");
d14a1e28 2789 }
0085ce49
RD
2790 arg3 = reinterpret_cast< wxPalette * >(argp3);
2791 }
2792 if (obj3) {
2793 res4 = SWIG_ConvertPtr(obj3, &argp4,SWIGTYPE_p_wxGLContext, 0 | 0 );
2794 if (!SWIG_IsOK(res4)) {
2795 SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "new_GLContext" "', expected argument " "4"" of type '" "wxGLContext const *""'");
d14a1e28 2796 }
0085ce49
RD
2797 arg4 = reinterpret_cast< wxGLContext * >(argp4);
2798 }
2799 {
2800 if (!wxPyCheckForApp()) SWIG_fail;
2801 PyThreadState* __tstate = wxPyBeginAllowThreads();
2802 result = (wxGLContext *)new wxGLContext(arg1,arg2,(wxPalette const &)*arg3,(wxGLContext const *)arg4);
2803 wxPyEndAllowThreads(__tstate);
2804 if (PyErr_Occurred()) SWIG_fail;
2805 }
2806 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLContext, SWIG_POINTER_NEW | 0 );
2807 return resultobj;
2808fail:
2809 return NULL;
d14a1e28
RD
2810}
2811
2812
0085ce49
RD
2813SWIGINTERN PyObject *_wrap_delete_GLContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2814 PyObject *resultobj = 0;
2815 wxGLContext *arg1 = (wxGLContext *) 0 ;
2816 void *argp1 = 0 ;
2817 int res1 = 0 ;
2818 PyObject *swig_obj[1] ;
2819
2820 if (!args) SWIG_fail;
2821 swig_obj[0] = args;
2822 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, SWIG_POINTER_DISOWN | 0 );
2823 if (!SWIG_IsOK(res1)) {
2824 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_GLContext" "', expected argument " "1"" of type '" "wxGLContext *""'");
2825 }
2826 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2827 {
2828 PyThreadState* __tstate = wxPyBeginAllowThreads();
2829 delete arg1;
d14a1e28 2830
0085ce49
RD
2831 wxPyEndAllowThreads(__tstate);
2832 if (PyErr_Occurred()) SWIG_fail;
2833 }
2834 resultobj = SWIG_Py_Void();
2835 return resultobj;
2836fail:
2837 return NULL;
d14a1e28
RD
2838}
2839
2840
0085ce49
RD
2841SWIGINTERN PyObject *_wrap_GLContext_SetCurrent(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2842 PyObject *resultobj = 0;
2843 wxGLContext *arg1 = (wxGLContext *) 0 ;
2844 void *argp1 = 0 ;
2845 int res1 = 0 ;
2846 PyObject *swig_obj[1] ;
2847
2848 if (!args) SWIG_fail;
2849 swig_obj[0] = args;
2850 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2851 if (!SWIG_IsOK(res1)) {
2852 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SetCurrent" "', expected argument " "1"" of type '" "wxGLContext *""'");
2853 }
2854 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2855 {
2856 PyThreadState* __tstate = wxPyBeginAllowThreads();
2857 (arg1)->SetCurrent();
2858 wxPyEndAllowThreads(__tstate);
2859 if (PyErr_Occurred()) SWIG_fail;
2860 }
2861 resultobj = SWIG_Py_Void();
2862 return resultobj;
2863fail:
2864 return NULL;
2865}
2866
2867
2868SWIGINTERN PyObject *_wrap_GLContext_SetColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2869 PyObject *resultobj = 0;
2870 wxGLContext *arg1 = (wxGLContext *) 0 ;
2871 wxString *arg2 = 0 ;
2872 void *argp1 = 0 ;
2873 int res1 = 0 ;
2874 bool temp2 = false ;
2875 PyObject * obj0 = 0 ;
2876 PyObject * obj1 = 0 ;
2877 char * kwnames[] = {
2878 (char *) "self",(char *) "colour", NULL
2879 };
2880
2881 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetColour",kwnames,&obj0,&obj1)) SWIG_fail;
2882 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2883 if (!SWIG_IsOK(res1)) {
2884 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SetColour" "', expected argument " "1"" of type '" "wxGLContext *""'");
2885 }
2886 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2887 {
2888 arg2 = wxString_in_helper(obj1);
2889 if (arg2 == NULL) SWIG_fail;
2890 temp2 = true;
2891 }
2892 {
2893 PyThreadState* __tstate = wxPyBeginAllowThreads();
2894 (arg1)->SetColour((wxString const &)*arg2);
2895 wxPyEndAllowThreads(__tstate);
2896 if (PyErr_Occurred()) SWIG_fail;
2897 }
2898 resultobj = SWIG_Py_Void();
2899 {
2900 if (temp2)
2901 delete arg2;
2902 }
2903 return resultobj;
2904fail:
2905 {
2906 if (temp2)
2907 delete arg2;
2908 }
2909 return NULL;
d14a1e28
RD
2910}
2911
2912
0085ce49
RD
2913SWIGINTERN PyObject *_wrap_GLContext_SwapBuffers(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2914 PyObject *resultobj = 0;
2915 wxGLContext *arg1 = (wxGLContext *) 0 ;
2916 void *argp1 = 0 ;
2917 int res1 = 0 ;
2918 PyObject *swig_obj[1] ;
2919
2920 if (!args) SWIG_fail;
2921 swig_obj[0] = args;
2922 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2923 if (!SWIG_IsOK(res1)) {
2924 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SwapBuffers" "', expected argument " "1"" of type '" "wxGLContext *""'");
2925 }
2926 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2927 {
2928 PyThreadState* __tstate = wxPyBeginAllowThreads();
2929 (arg1)->SwapBuffers();
2930 wxPyEndAllowThreads(__tstate);
2931 if (PyErr_Occurred()) SWIG_fail;
2932 }
2933 resultobj = SWIG_Py_Void();
2934 return resultobj;
2935fail:
2936 return NULL;
d14a1e28
RD
2937}
2938
2939
0085ce49
RD
2940SWIGINTERN PyObject *_wrap_GLContext_SetupPixelFormat(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
2941 PyObject *resultobj = 0;
2942 wxGLContext *arg1 = (wxGLContext *) 0 ;
2943 void *argp1 = 0 ;
2944 int res1 = 0 ;
2945 PyObject *swig_obj[1] ;
2946
2947 if (!args) SWIG_fail;
2948 swig_obj[0] = args;
2949 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2950 if (!SWIG_IsOK(res1)) {
2951 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SetupPixelFormat" "', expected argument " "1"" of type '" "wxGLContext *""'");
2952 }
2953 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2954 {
2955 PyThreadState* __tstate = wxPyBeginAllowThreads();
2956 (arg1)->SetupPixelFormat();
2957 wxPyEndAllowThreads(__tstate);
2958 if (PyErr_Occurred()) SWIG_fail;
2959 }
2960 resultobj = SWIG_Py_Void();
2961 return resultobj;
2962fail:
2963 return NULL;
2964}
2965
2966
2967SWIGINTERN PyObject *_wrap_GLContext_SetupPalette(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
2968 PyObject *resultobj = 0;
2969 wxGLContext *arg1 = (wxGLContext *) 0 ;
2970 wxPalette *arg2 = 0 ;
2971 void *argp1 = 0 ;
2972 int res1 = 0 ;
2973 void *argp2 = 0 ;
2974 int res2 = 0 ;
2975 PyObject * obj0 = 0 ;
2976 PyObject * obj1 = 0 ;
2977 char * kwnames[] = {
2978 (char *) "self",(char *) "palette", NULL
2979 };
2980
2981 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLContext_SetupPalette",kwnames,&obj0,&obj1)) SWIG_fail;
2982 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
2983 if (!SWIG_IsOK(res1)) {
2984 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_SetupPalette" "', expected argument " "1"" of type '" "wxGLContext *""'");
2985 }
2986 arg1 = reinterpret_cast< wxGLContext * >(argp1);
2987 res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_wxPalette, 0 | 0);
2988 if (!SWIG_IsOK(res2)) {
2989 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "GLContext_SetupPalette" "', expected argument " "2"" of type '" "wxPalette const &""'");
2990 }
2991 if (!argp2) {
2992 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "GLContext_SetupPalette" "', expected argument " "2"" of type '" "wxPalette const &""'");
2993 }
2994 arg2 = reinterpret_cast< wxPalette * >(argp2);
2995 {
2996 PyThreadState* __tstate = wxPyBeginAllowThreads();
2997 (arg1)->SetupPalette((wxPalette const &)*arg2);
2998 wxPyEndAllowThreads(__tstate);
2999 if (PyErr_Occurred()) SWIG_fail;
3000 }
3001 resultobj = SWIG_Py_Void();
3002 return resultobj;
3003fail:
3004 return NULL;
d14a1e28
RD
3005}
3006
3007
0085ce49
RD
3008SWIGINTERN PyObject *_wrap_GLContext_CreateDefaultPalette(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3009 PyObject *resultobj = 0;
3010 wxGLContext *arg1 = (wxGLContext *) 0 ;
3011 wxPalette result;
3012 void *argp1 = 0 ;
3013 int res1 = 0 ;
3014 PyObject *swig_obj[1] ;
3015
3016 if (!args) SWIG_fail;
3017 swig_obj[0] = args;
3018 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
3019 if (!SWIG_IsOK(res1)) {
3020 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_CreateDefaultPalette" "', expected argument " "1"" of type '" "wxGLContext *""'");
3021 }
3022 arg1 = reinterpret_cast< wxGLContext * >(argp1);
3023 {
3024 PyThreadState* __tstate = wxPyBeginAllowThreads();
3025 result = (arg1)->CreateDefaultPalette();
3026 wxPyEndAllowThreads(__tstate);
3027 if (PyErr_Occurred()) SWIG_fail;
3028 }
3029 resultobj = SWIG_NewPointerObj((new wxPalette(static_cast< const wxPalette& >(result))), SWIGTYPE_p_wxPalette, SWIG_POINTER_OWN | 0 );
3030 return resultobj;
3031fail:
3032 return NULL;
d14a1e28
RD
3033}
3034
3035
0085ce49
RD
3036SWIGINTERN PyObject *_wrap_GLContext_GetPalette(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3037 PyObject *resultobj = 0;
3038 wxGLContext *arg1 = (wxGLContext *) 0 ;
3039 wxPalette *result = 0 ;
3040 void *argp1 = 0 ;
3041 int res1 = 0 ;
3042 PyObject *swig_obj[1] ;
3043
3044 if (!args) SWIG_fail;
3045 swig_obj[0] = args;
3046 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
3047 if (!SWIG_IsOK(res1)) {
3048 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_GetPalette" "', expected argument " "1"" of type '" "wxGLContext *""'");
3049 }
3050 arg1 = reinterpret_cast< wxGLContext * >(argp1);
3051 {
3052 PyThreadState* __tstate = wxPyBeginAllowThreads();
3053 result = (wxPalette *)(arg1)->GetPalette();
3054 wxPyEndAllowThreads(__tstate);
3055 if (PyErr_Occurred()) SWIG_fail;
3056 }
3057 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxPalette, 0 | 0 );
3058 return resultobj;
3059fail:
3060 return NULL;
d14a1e28
RD
3061}
3062
3063
0085ce49
RD
3064SWIGINTERN PyObject *_wrap_GLContext_GetWindow(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3065 PyObject *resultobj = 0;
3066 wxGLContext *arg1 = (wxGLContext *) 0 ;
3067 wxWindow *result = 0 ;
3068 void *argp1 = 0 ;
3069 int res1 = 0 ;
3070 PyObject *swig_obj[1] ;
3071
3072 if (!args) SWIG_fail;
3073 swig_obj[0] = args;
3074 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLContext, 0 | 0 );
3075 if (!SWIG_IsOK(res1)) {
3076 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLContext_GetWindow" "', expected argument " "1"" of type '" "wxGLContext *""'");
3077 }
3078 arg1 = reinterpret_cast< wxGLContext * >(argp1);
3079 {
3080 PyThreadState* __tstate = wxPyBeginAllowThreads();
3081 result = (wxWindow *)(arg1)->GetWindow();
3082 wxPyEndAllowThreads(__tstate);
3083 if (PyErr_Occurred()) SWIG_fail;
3084 }
3085 {
3086 resultobj = wxPyMake_wxObject(result, 0);
3087 }
3088 return resultobj;
3089fail:
3090 return NULL;
3091}
3092
3093
3094SWIGINTERN PyObject *GLContext_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3095 PyObject *obj;
3096 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
3097 SWIG_TypeNewClientData(SWIGTYPE_p_wxGLContext, SWIG_NewClientData(obj));
3098 return SWIG_Py_Void();
3099}
3100
3101SWIGINTERN PyObject *GLContext_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3102 return SWIG_Python_InitShadowInstance(args);
3103}
3104
3105SWIGINTERN PyObject *_wrap_new_GLCanvas(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
3106 PyObject *resultobj = 0;
3107 wxWindow *arg1 = (wxWindow *) 0 ;
3108 int arg2 = (int) -1 ;
3109 wxPoint const &arg3_defvalue = wxDefaultPosition ;
3110 wxPoint *arg3 = (wxPoint *) &arg3_defvalue ;
3111 wxSize const &arg4_defvalue = wxDefaultSize ;
3112 wxSize *arg4 = (wxSize *) &arg4_defvalue ;
3113 long arg5 = (long) 0 ;
3114 wxString const &arg6_defvalue = wxPyGLCanvasNameStr ;
3115 wxString *arg6 = (wxString *) &arg6_defvalue ;
3116 int *arg7 = (int *) NULL ;
3117 wxPalette const &arg8_defvalue = wxNullPalette ;
3118 wxPalette *arg8 = (wxPalette *) &arg8_defvalue ;
3119 wxGLCanvas *result = 0 ;
3120 void *argp1 = 0 ;
3121 int res1 = 0 ;
3122 int val2 ;
3123 int ecode2 = 0 ;
3124 wxPoint temp3 ;
3125 wxSize temp4 ;
3126 long val5 ;
3127 int ecode5 = 0 ;
3128 bool temp6 = false ;
3129 int *temp7 ;
3130 void *argp8 = 0 ;
3131 int res8 = 0 ;
3132 PyObject * obj0 = 0 ;
3133 PyObject * obj1 = 0 ;
3134 PyObject * obj2 = 0 ;
3135 PyObject * obj3 = 0 ;
3136 PyObject * obj4 = 0 ;
3137 PyObject * obj5 = 0 ;
3138 PyObject * obj6 = 0 ;
3139 PyObject * obj7 = 0 ;
3140 char * kwnames[] = {
3141 (char *) "parent",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
3142 };
3143
3144 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOO:new_GLCanvas",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7)) SWIG_fail;
3145 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 );
3146 if (!SWIG_IsOK(res1)) {
3147 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GLCanvas" "', expected argument " "1"" of type '" "wxWindow *""'");
3148 }
3149 arg1 = reinterpret_cast< wxWindow * >(argp1);
3150 if (obj1) {
3151 ecode2 = SWIG_AsVal_int(obj1, &val2);
3152 if (!SWIG_IsOK(ecode2)) {
3153 SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "new_GLCanvas" "', expected argument " "2"" of type '" "int""'");
3154 }
3155 arg2 = static_cast< int >(val2);
3156 }
3157 if (obj2) {
d14a1e28 3158 {
0085ce49
RD
3159 arg3 = &temp3;
3160 if ( ! wxPoint_helper(obj2, &arg3)) SWIG_fail;
d14a1e28 3161 }
0085ce49
RD
3162 }
3163 if (obj3) {
d14a1e28 3164 {
0085ce49
RD
3165 arg4 = &temp4;
3166 if ( ! wxSize_helper(obj3, &arg4)) SWIG_fail;
d14a1e28 3167 }
0085ce49
RD
3168 }
3169 if (obj4) {
3170 ecode5 = SWIG_AsVal_long(obj4, &val5);
3171 if (!SWIG_IsOK(ecode5)) {
3172 SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "new_GLCanvas" "', expected argument " "5"" of type '" "long""'");
3173 }
3174 arg5 = static_cast< long >(val5);
3175 }
3176 if (obj5) {
d14a1e28 3177 {
0085ce49
RD
3178 arg6 = wxString_in_helper(obj5);
3179 if (arg6 == NULL) SWIG_fail;
3180 temp6 = true;
d14a1e28 3181 }
0085ce49
RD
3182 }
3183 if (obj6) {
d14a1e28 3184 {
0085ce49
RD
3185 int i;
3186 if (PySequence_Check(obj6)) {
3187 int size = PyObject_Length(obj6);
3188 temp7 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
3189 for (i = 0; i < size; i++) {
3190 temp7[i] = PyInt_AsLong(PySequence_GetItem(obj6, i));
3004cfd8 3191 }
0085ce49
RD
3192 temp7[size] = 0;
3193 arg7 = temp7;
3194 }
994141e6 3195 }
0085ce49
RD
3196 }
3197 if (obj7) {
3198 res8 = SWIG_ConvertPtr(obj7, &argp8, SWIGTYPE_p_wxPalette, 0 | 0);
3199 if (!SWIG_IsOK(res8)) {
3200 SWIG_exception_fail(SWIG_ArgError(res8), "in method '" "new_GLCanvas" "', expected argument " "8"" of type '" "wxPalette const &""'");
d14a1e28 3201 }
0085ce49
RD
3202 if (!argp8) {
3203 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_GLCanvas" "', expected argument " "8"" of type '" "wxPalette const &""'");
d14a1e28 3204 }
0085ce49
RD
3205 arg8 = reinterpret_cast< wxPalette * >(argp8);
3206 }
3207 {
3208 if (!wxPyCheckForApp()) SWIG_fail;
3209 PyThreadState* __tstate = wxPyBeginAllowThreads();
3210 result = (wxGLCanvas *)new wxGLCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6,arg7,(wxPalette const &)*arg8);
3211 wxPyEndAllowThreads(__tstate);
3212 if (PyErr_Occurred()) SWIG_fail;
3213 }
3214 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_NEW | 0 );
3215 {
3216 if (temp6)
3217 delete arg6;
3218 }
3219 {
3220 delete [] arg7;
3221 }
3222 return resultobj;
3223fail:
3224 {
3225 if (temp6)
3226 delete arg6;
3227 }
3228 {
3229 delete [] arg7;
3230 }
3231 return NULL;
3232}
3233
3234
3235SWIGINTERN PyObject *_wrap_new_GLCanvasWithContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
3236 PyObject *resultobj = 0;
3237 wxWindow *arg1 = (wxWindow *) 0 ;
3238 wxGLContext *arg2 = (wxGLContext *) NULL ;
3239 int arg3 = (int) -1 ;
3240 wxPoint const &arg4_defvalue = wxDefaultPosition ;
3241 wxPoint *arg4 = (wxPoint *) &arg4_defvalue ;
3242 wxSize const &arg5_defvalue = wxDefaultSize ;
3243 wxSize *arg5 = (wxSize *) &arg5_defvalue ;
3244 long arg6 = (long) 0 ;
3245 wxString const &arg7_defvalue = wxPyGLCanvasNameStr ;
3246 wxString *arg7 = (wxString *) &arg7_defvalue ;
3247 int *arg8 = (int *) NULL ;
3248 wxPalette const &arg9_defvalue = wxNullPalette ;
3249 wxPalette *arg9 = (wxPalette *) &arg9_defvalue ;
3250 wxGLCanvas *result = 0 ;
3251 void *argp1 = 0 ;
3252 int res1 = 0 ;
3253 void *argp2 = 0 ;
3254 int res2 = 0 ;
3255 int val3 ;
3256 int ecode3 = 0 ;
3257 wxPoint temp4 ;
3258 wxSize temp5 ;
3259 long val6 ;
3260 int ecode6 = 0 ;
3261 bool temp7 = false ;
3262 int *temp8 ;
3263 void *argp9 = 0 ;
3264 int res9 = 0 ;
3265 PyObject * obj0 = 0 ;
3266 PyObject * obj1 = 0 ;
3267 PyObject * obj2 = 0 ;
3268 PyObject * obj3 = 0 ;
3269 PyObject * obj4 = 0 ;
3270 PyObject * obj5 = 0 ;
3271 PyObject * obj6 = 0 ;
3272 PyObject * obj7 = 0 ;
3273 PyObject * obj8 = 0 ;
3274 char * kwnames[] = {
3275 (char *) "parent",(char *) "shared",(char *) "id",(char *) "pos",(char *) "size",(char *) "style",(char *) "name",(char *) "attribList",(char *) "palette", NULL
3276 };
3277
3278 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"O|OOOOOOOO:new_GLCanvasWithContext",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6,&obj7,&obj8)) SWIG_fail;
3279 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxWindow, 0 | 0 );
3280 if (!SWIG_IsOK(res1)) {
3281 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_GLCanvasWithContext" "', expected argument " "1"" of type '" "wxWindow *""'");
3282 }
3283 arg1 = reinterpret_cast< wxWindow * >(argp1);
3284 if (obj1) {
3285 res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_wxGLContext, 0 | 0 );
3286 if (!SWIG_IsOK(res2)) {
3287 SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_GLCanvasWithContext" "', expected argument " "2"" of type '" "wxGLContext const *""'");
d14a1e28 3288 }
0085ce49
RD
3289 arg2 = reinterpret_cast< wxGLContext * >(argp2);
3290 }
3291 if (obj2) {
3292 ecode3 = SWIG_AsVal_int(obj2, &val3);
3293 if (!SWIG_IsOK(ecode3)) {
3294 SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "new_GLCanvasWithContext" "', expected argument " "3"" of type '" "int""'");
3295 }
3296 arg3 = static_cast< int >(val3);
3297 }
3298 if (obj3) {
d14a1e28 3299 {
0085ce49
RD
3300 arg4 = &temp4;
3301 if ( ! wxPoint_helper(obj3, &arg4)) SWIG_fail;
d14a1e28 3302 }
0085ce49
RD
3303 }
3304 if (obj4) {
d14a1e28 3305 {
0085ce49
RD
3306 arg5 = &temp5;
3307 if ( ! wxSize_helper(obj4, &arg5)) SWIG_fail;
d14a1e28 3308 }
0085ce49
RD
3309 }
3310 if (obj5) {
3311 ecode6 = SWIG_AsVal_long(obj5, &val6);
3312 if (!SWIG_IsOK(ecode6)) {
3313 SWIG_exception_fail(SWIG_ArgError(ecode6), "in method '" "new_GLCanvasWithContext" "', expected argument " "6"" of type '" "long""'");
3314 }
3315 arg6 = static_cast< long >(val6);
3316 }
3317 if (obj6) {
d14a1e28 3318 {
0085ce49
RD
3319 arg7 = wxString_in_helper(obj6);
3320 if (arg7 == NULL) SWIG_fail;
3321 temp7 = true;
d14a1e28 3322 }
0085ce49
RD
3323 }
3324 if (obj7) {
d14a1e28 3325 {
0085ce49
RD
3326 int i;
3327 if (PySequence_Check(obj7)) {
3328 int size = PyObject_Length(obj7);
3329 temp8 = new int[size+1]; // (int*)malloc((size + 1) * sizeof(int));
3330 for (i = 0; i < size; i++) {
3331 temp8[i] = PyInt_AsLong(PySequence_GetItem(obj7, i));
3332 }
3333 temp8[size] = 0;
3334 arg8 = temp8;
3335 }
d14a1e28 3336 }
0085ce49
RD
3337 }
3338 if (obj8) {
3339 res9 = SWIG_ConvertPtr(obj8, &argp9, SWIGTYPE_p_wxPalette, 0 | 0);
3340 if (!SWIG_IsOK(res9)) {
3341 SWIG_exception_fail(SWIG_ArgError(res9), "in method '" "new_GLCanvasWithContext" "', expected argument " "9"" of type '" "wxPalette const &""'");
3342 }
3343 if (!argp9) {
3344 SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_GLCanvasWithContext" "', expected argument " "9"" of type '" "wxPalette const &""'");
3345 }
3346 arg9 = reinterpret_cast< wxPalette * >(argp9);
3347 }
3348 {
3349 if (!wxPyCheckForApp()) SWIG_fail;
3350 PyThreadState* __tstate = wxPyBeginAllowThreads();
3351 result = (wxGLCanvas *)new wxGLCanvas(arg1,(wxGLContext const *)arg2,arg3,(wxPoint const &)*arg4,(wxSize const &)*arg5,arg6,(wxString const &)*arg7,arg8,(wxPalette const &)*arg9);
3352 wxPyEndAllowThreads(__tstate);
3353 if (PyErr_Occurred()) SWIG_fail;
3354 }
3355 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLCanvas, SWIG_POINTER_OWN | 0 );
3356 {
3357 if (temp7)
3358 delete arg7;
3359 }
3360 {
3361 delete [] arg8;
3362 }
3363 return resultobj;
3364fail:
3365 {
3366 if (temp7)
3367 delete arg7;
3368 }
3369 {
3370 delete [] arg8;
3371 }
3372 return NULL;
d14a1e28
RD
3373}
3374
3375
0085ce49
RD
3376SWIGINTERN PyObject *_wrap_GLCanvas_SetCurrent(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3377 PyObject *resultobj = 0;
3378 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3379 void *argp1 = 0 ;
3380 int res1 = 0 ;
3381 PyObject *swig_obj[1] ;
3382
3383 if (!args) SWIG_fail;
3384 swig_obj[0] = args;
3385 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3386 if (!SWIG_IsOK(res1)) {
3387 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SetCurrent" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3388 }
3389 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3390 {
3391 PyThreadState* __tstate = wxPyBeginAllowThreads();
3392 (arg1)->SetCurrent();
3393 wxPyEndAllowThreads(__tstate);
3394 if (PyErr_Occurred()) SWIG_fail;
3395 }
3396 resultobj = SWIG_Py_Void();
3397 return resultobj;
3398fail:
3399 return NULL;
3400}
3401
3402
3403SWIGINTERN PyObject *_wrap_GLCanvas_SetColour(PyObject *SWIGUNUSEDPARM(self), PyObject *args, PyObject *kwargs) {
3404 PyObject *resultobj = 0;
3405 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3406 wxString *arg2 = 0 ;
3407 void *argp1 = 0 ;
3408 int res1 = 0 ;
3409 bool temp2 = false ;
3410 PyObject * obj0 = 0 ;
3411 PyObject * obj1 = 0 ;
3412 char * kwnames[] = {
3413 (char *) "self",(char *) "colour", NULL
3414 };
3415
3416 if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:GLCanvas_SetColour",kwnames,&obj0,&obj1)) SWIG_fail;
3417 res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3418 if (!SWIG_IsOK(res1)) {
3419 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SetColour" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3420 }
3421 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3422 {
3423 arg2 = wxString_in_helper(obj1);
3424 if (arg2 == NULL) SWIG_fail;
3425 temp2 = true;
3426 }
3427 {
3428 PyThreadState* __tstate = wxPyBeginAllowThreads();
3429 (arg1)->SetColour((wxString const &)*arg2);
3430 wxPyEndAllowThreads(__tstate);
3431 if (PyErr_Occurred()) SWIG_fail;
3432 }
3433 resultobj = SWIG_Py_Void();
3434 {
3435 if (temp2)
3436 delete arg2;
3437 }
3438 return resultobj;
3439fail:
3440 {
3441 if (temp2)
3442 delete arg2;
3443 }
3444 return NULL;
d14a1e28
RD
3445}
3446
3447
0085ce49
RD
3448SWIGINTERN PyObject *_wrap_GLCanvas_SwapBuffers(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3449 PyObject *resultobj = 0;
3450 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3451 void *argp1 = 0 ;
3452 int res1 = 0 ;
3453 PyObject *swig_obj[1] ;
3454
3455 if (!args) SWIG_fail;
3456 swig_obj[0] = args;
3457 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3458 if (!SWIG_IsOK(res1)) {
3459 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_SwapBuffers" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3460 }
3461 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3462 {
3463 PyThreadState* __tstate = wxPyBeginAllowThreads();
3464 (arg1)->SwapBuffers();
3465 wxPyEndAllowThreads(__tstate);
3466 if (PyErr_Occurred()) SWIG_fail;
3467 }
3468 resultobj = SWIG_Py_Void();
3469 return resultobj;
3470fail:
3471 return NULL;
d14a1e28
RD
3472}
3473
3474
0085ce49
RD
3475SWIGINTERN PyObject *_wrap_GLCanvas_GetContext(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3476 PyObject *resultobj = 0;
3477 wxGLCanvas *arg1 = (wxGLCanvas *) 0 ;
3478 wxGLContext *result = 0 ;
3479 void *argp1 = 0 ;
3480 int res1 = 0 ;
3481 PyObject *swig_obj[1] ;
3482
3483 if (!args) SWIG_fail;
3484 swig_obj[0] = args;
3485 res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxGLCanvas, 0 | 0 );
3486 if (!SWIG_IsOK(res1)) {
3487 SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "GLCanvas_GetContext" "', expected argument " "1"" of type '" "wxGLCanvas *""'");
3488 }
3489 arg1 = reinterpret_cast< wxGLCanvas * >(argp1);
3490 {
3491 PyThreadState* __tstate = wxPyBeginAllowThreads();
3492 result = (wxGLContext *)(arg1)->GetContext();
3493 wxPyEndAllowThreads(__tstate);
3494 if (PyErr_Occurred()) SWIG_fail;
3495 }
3496 resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_wxGLContext, 0 | 0 );
3497 return resultobj;
3498fail:
3499 return NULL;
d14a1e28
RD
3500}
3501
3502
0085ce49
RD
3503SWIGINTERN PyObject *GLCanvas_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3504 PyObject *obj;
3505 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
3506 SWIG_TypeNewClientData(SWIGTYPE_p_wxGLCanvas, SWIG_NewClientData(obj));
3507 return SWIG_Py_Void();
d14a1e28
RD
3508}
3509
0085ce49
RD
3510SWIGINTERN PyObject *GLCanvas_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
3511 return SWIG_Python_InitShadowInstance(args);
d14a1e28 3512}
0085ce49 3513
d14a1e28 3514static PyMethodDef SwigMethods[] = {
3004cfd8 3515 { (char *)"new_GLContext", (PyCFunction) _wrap_new_GLContext, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49
RD
3516 { (char *)"delete_GLContext", (PyCFunction)_wrap_delete_GLContext, METH_O, NULL},
3517 { (char *)"GLContext_SetCurrent", (PyCFunction)_wrap_GLContext_SetCurrent, METH_O, NULL},
3004cfd8 3518 { (char *)"GLContext_SetColour", (PyCFunction) _wrap_GLContext_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49
RD
3519 { (char *)"GLContext_SwapBuffers", (PyCFunction)_wrap_GLContext_SwapBuffers, METH_O, NULL},
3520 { (char *)"GLContext_SetupPixelFormat", (PyCFunction)_wrap_GLContext_SetupPixelFormat, METH_O, NULL},
3004cfd8 3521 { (char *)"GLContext_SetupPalette", (PyCFunction) _wrap_GLContext_SetupPalette, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49
RD
3522 { (char *)"GLContext_CreateDefaultPalette", (PyCFunction)_wrap_GLContext_CreateDefaultPalette, METH_O, NULL},
3523 { (char *)"GLContext_GetPalette", (PyCFunction)_wrap_GLContext_GetPalette, METH_O, NULL},
3524 { (char *)"GLContext_GetWindow", (PyCFunction)_wrap_GLContext_GetWindow, METH_O, NULL},
3004cfd8 3525 { (char *)"GLContext_swigregister", GLContext_swigregister, METH_VARARGS, NULL},
0085ce49 3526 { (char *)"GLContext_swiginit", GLContext_swiginit, METH_VARARGS, NULL},
3004cfd8
RD
3527 { (char *)"new_GLCanvas", (PyCFunction) _wrap_new_GLCanvas, METH_VARARGS | METH_KEYWORDS, NULL},
3528 { (char *)"new_GLCanvasWithContext", (PyCFunction) _wrap_new_GLCanvasWithContext, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49 3529 { (char *)"GLCanvas_SetCurrent", (PyCFunction)_wrap_GLCanvas_SetCurrent, METH_O, NULL},
3004cfd8 3530 { (char *)"GLCanvas_SetColour", (PyCFunction) _wrap_GLCanvas_SetColour, METH_VARARGS | METH_KEYWORDS, NULL},
0085ce49
RD
3531 { (char *)"GLCanvas_SwapBuffers", (PyCFunction)_wrap_GLCanvas_SwapBuffers, METH_O, NULL},
3532 { (char *)"GLCanvas_GetContext", (PyCFunction)_wrap_GLCanvas_GetContext, METH_O, NULL},
3004cfd8 3533 { (char *)"GLCanvas_swigregister", GLCanvas_swigregister, METH_VARARGS, NULL},
0085ce49 3534 { (char *)"GLCanvas_swiginit", GLCanvas_swiginit, METH_VARARGS, NULL},
c32bde28 3535 { NULL, NULL, 0, NULL }
d14a1e28
RD
3536};
3537
3538
3539/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
3540
d14a1e28
RD
3541static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x) {
3542 return (void *)((wxObject *) ((wxLayoutConstraints *) x));
3543}
3544static void *_p_wxGBSizerItemTo_p_wxObject(void *x) {
3545 return (void *)((wxObject *) (wxSizerItem *) ((wxGBSizerItem *) x));
3546}
3547static void *_p_wxSizerItemTo_p_wxObject(void *x) {
3548 return (void *)((wxObject *) ((wxSizerItem *) x));
3549}
3550static void *_p_wxScrollEventTo_p_wxObject(void *x) {
3551 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxScrollEvent *) x));
3552}
3553static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x) {
3554 return (void *)((wxObject *) ((wxIndividualLayoutConstraint *) x));
3555}
3556static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x) {
3557 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStaticBoxSizer *) x));
3558}
3559static void *_p_wxBoxSizerTo_p_wxObject(void *x) {
3560 return (void *)((wxObject *) (wxSizer *) ((wxBoxSizer *) x));
3561}
3562static void *_p_wxSizerTo_p_wxObject(void *x) {
3563 return (void *)((wxObject *) ((wxSizer *) x));
3564}
3565static void *_p_wxGridBagSizerTo_p_wxObject(void *x) {
3566 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *)(wxFlexGridSizer *) ((wxGridBagSizer *) x));
3567}
3568static void *_p_wxUpdateUIEventTo_p_wxObject(void *x) {
3569 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxUpdateUIEvent *) x));
3570}
3571static void *_p_wxEventTo_p_wxObject(void *x) {
3572 return (void *)((wxObject *) ((wxEvent *) x));
3573}
3574static void *_p_wxFlexGridSizerTo_p_wxObject(void *x) {
3575 return (void *)((wxObject *) (wxSizer *)(wxGridSizer *) ((wxFlexGridSizer *) x));
3576}
3577static void *_p_wxGridSizerTo_p_wxObject(void *x) {
3578 return (void *)((wxObject *) (wxSizer *) ((wxGridSizer *) x));
3579}
3580static void *_p_wxInitDialogEventTo_p_wxObject(void *x) {
3581 return (void *)((wxObject *) (wxEvent *) ((wxInitDialogEvent *) x));
3582}
3583static void *_p_wxPaintEventTo_p_wxObject(void *x) {
3584 return (void *)((wxObject *) (wxEvent *) ((wxPaintEvent *) x));
3585}
3586static void *_p_wxNcPaintEventTo_p_wxObject(void *x) {
3587 return (void *)((wxObject *) (wxEvent *) ((wxNcPaintEvent *) x));
3588}
3589static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x) {
3590 return (void *)((wxObject *) (wxEvent *) ((wxPaletteChangedEvent *) x));
3591}
3592static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x) {
3593 return (void *)((wxObject *) (wxEvent *) ((wxDisplayChangedEvent *) x));
3594}
3595static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x) {
3596 return (void *)((wxObject *) (wxEvent *) ((wxMouseCaptureChangedEvent *) x));
3597}
3598static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x) {
3599 return (void *)((wxObject *) (wxEvent *) ((wxSysColourChangedEvent *) x));
3600}
3601static void *_p_wxControlTo_p_wxObject(void *x) {
3602 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxControl *) x));
3603}
3604static void *_p_wxSetCursorEventTo_p_wxObject(void *x) {
3605 return (void *)((wxObject *) (wxEvent *) ((wxSetCursorEvent *) x));
3606}
3607static void *_p_wxFSFileTo_p_wxObject(void *x) {
3608 return (void *)((wxObject *) ((wxFSFile *) x));
3609}
3610static void *_p_wxPySizerTo_p_wxObject(void *x) {
3611 return (void *)((wxObject *) (wxSizer *) ((wxPySizer *) x));
3612}
3613static void *_p_wxPyEventTo_p_wxObject(void *x) {
3614 return (void *)((wxObject *) (wxEvent *) ((wxPyEvent *) x));
3615}
3616static void *_p_wxNotifyEventTo_p_wxObject(void *x) {
3617 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxNotifyEvent *) x));
3618}
3619static void *_p_wxGLContextTo_p_wxObject(void *x) {
3620 return (void *)((wxObject *) ((wxGLContext *) x));
3621}
3622static void *_p_wxShowEventTo_p_wxObject(void *x) {
3623 return (void *)((wxObject *) (wxEvent *) ((wxShowEvent *) x));
3624}
3625static void *_p_wxMenuItemTo_p_wxObject(void *x) {
3626 return (void *)((wxObject *) ((wxMenuItem *) x));
3627}
53aa7709
RD
3628static void *_p_wxDateEventTo_p_wxObject(void *x) {
3629 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxDateEvent *) x));
3630}
d14a1e28
RD
3631static void *_p_wxIdleEventTo_p_wxObject(void *x) {
3632 return (void *)((wxObject *) (wxEvent *) ((wxIdleEvent *) x));
3633}
3634static void *_p_wxWindowCreateEventTo_p_wxObject(void *x) {
3635 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowCreateEvent *) x));
3636}
3637static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x) {
3638 return (void *)((wxObject *) (wxEvent *) ((wxQueryNewPaletteEvent *) x));
3639}
3640static void *_p_wxMaximizeEventTo_p_wxObject(void *x) {
3641 return (void *)((wxObject *) (wxEvent *) ((wxMaximizeEvent *) x));
3642}
3643static void *_p_wxIconizeEventTo_p_wxObject(void *x) {
3644 return (void *)((wxObject *) (wxEvent *) ((wxIconizeEvent *) x));
3645}
3646static void *_p_wxSizeEventTo_p_wxObject(void *x) {
3647 return (void *)((wxObject *) (wxEvent *) ((wxSizeEvent *) x));
3648}
3649static void *_p_wxMoveEventTo_p_wxObject(void *x) {
3650 return (void *)((wxObject *) (wxEvent *) ((wxMoveEvent *) x));
3651}
3652static void *_p_wxActivateEventTo_p_wxObject(void *x) {
3653 return (void *)((wxObject *) (wxEvent *) ((wxActivateEvent *) x));
3654}
d14a1e28
RD
3655static void *_p_wxPNMHandlerTo_p_wxObject(void *x) {
3656 return (void *)((wxObject *) (wxImageHandler *) ((wxPNMHandler *) x));
3657}
3658static void *_p_wxJPEGHandlerTo_p_wxObject(void *x) {
3659 return (void *)((wxObject *) (wxImageHandler *) ((wxJPEGHandler *) x));
3660}
3661static void *_p_wxPCXHandlerTo_p_wxObject(void *x) {
3662 return (void *)((wxObject *) (wxImageHandler *) ((wxPCXHandler *) x));
3663}
3664static void *_p_wxGIFHandlerTo_p_wxObject(void *x) {
3665 return (void *)((wxObject *) (wxImageHandler *) ((wxGIFHandler *) x));
3666}
3667static void *_p_wxPNGHandlerTo_p_wxObject(void *x) {
3668 return (void *)((wxObject *) (wxImageHandler *) ((wxPNGHandler *) x));
3669}
3670static void *_p_wxANIHandlerTo_p_wxObject(void *x) {
3671 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *)(wxCURHandler *) ((wxANIHandler *) x));
3672}
3673static void *_p_wxCURHandlerTo_p_wxObject(void *x) {
3674 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *)(wxICOHandler *) ((wxCURHandler *) x));
3675}
3676static void *_p_wxICOHandlerTo_p_wxObject(void *x) {
3677 return (void *)((wxObject *) (wxImageHandler *)(wxBMPHandler *) ((wxICOHandler *) x));
3678}
3679static void *_p_wxBMPHandlerTo_p_wxObject(void *x) {
3680 return (void *)((wxObject *) (wxImageHandler *) ((wxBMPHandler *) x));
3681}
943e8dfd
RD
3682static void *_p_wxPyImageHandlerTo_p_wxObject(void *x) {
3683 return (void *)((wxObject *) (wxImageHandler *) ((wxPyImageHandler *) x));
3684}
d14a1e28
RD
3685static void *_p_wxImageHandlerTo_p_wxObject(void *x) {
3686 return (void *)((wxObject *) ((wxImageHandler *) x));
3687}
943e8dfd
RD
3688static void *_p_wxXPMHandlerTo_p_wxObject(void *x) {
3689 return (void *)((wxObject *) (wxImageHandler *) ((wxXPMHandler *) x));
3690}
d14a1e28
RD
3691static void *_p_wxTIFFHandlerTo_p_wxObject(void *x) {
3692 return (void *)((wxObject *) (wxImageHandler *) ((wxTIFFHandler *) x));
3693}
3694static void *_p_wxEvtHandlerTo_p_wxObject(void *x) {
3695 return (void *)((wxObject *) ((wxEvtHandler *) x));
3696}
3697static void *_p_wxGLCanvasTo_p_wxObject(void *x) {
3698 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxGLCanvas *) x));
3699}
51b83b37
RD
3700static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x) {
3701 return (void *)((wxObject *) (wxSizer *)(wxBoxSizer *) ((wxStdDialogButtonSizer *) x));
3702}
0df68c9f
RD
3703static void *_p_wxAcceleratorTableTo_p_wxObject(void *x) {
3704 return (void *)((wxObject *) ((wxAcceleratorTable *) x));
3705}
d14a1e28
RD
3706static void *_p_wxImageTo_p_wxObject(void *x) {
3707 return (void *)((wxObject *) ((wxImage *) x));
3708}
3709static void *_p_wxScrollWinEventTo_p_wxObject(void *x) {
3710 return (void *)((wxObject *) (wxEvent *) ((wxScrollWinEvent *) x));
3711}
3712static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x) {
3713 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxWindowDestroyEvent *) x));
3714}
3715static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x) {
3716 return (void *)((wxObject *) (wxEvent *) ((wxNavigationKeyEvent *) x));
3717}
3718static void *_p_wxKeyEventTo_p_wxObject(void *x) {
3719 return (void *)((wxObject *) (wxEvent *) ((wxKeyEvent *) x));
3720}
3721static void *_p_wxWindowTo_p_wxObject(void *x) {
3722 return (void *)((wxObject *) (wxEvtHandler *) ((wxWindow *) x));
3723}
3724static void *_p_wxMenuTo_p_wxObject(void *x) {
3725 return (void *)((wxObject *) (wxEvtHandler *) ((wxMenu *) x));
3726}
3727static void *_p_wxMenuBarTo_p_wxObject(void *x) {
3728 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *) ((wxMenuBar *) x));
3729}
3730static void *_p_wxFileSystemTo_p_wxObject(void *x) {
3731 return (void *)((wxObject *) ((wxFileSystem *) x));
3732}
3733static void *_p_wxContextMenuEventTo_p_wxObject(void *x) {
3734 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxContextMenuEvent *) x));
3735}
3736static void *_p_wxMenuEventTo_p_wxObject(void *x) {
3737 return (void *)((wxObject *) (wxEvent *) ((wxMenuEvent *) x));
3738}
3739static void *_p_wxPyAppTo_p_wxObject(void *x) {
3740 return (void *)((wxObject *) (wxEvtHandler *) ((wxPyApp *) x));
3741}
3742static void *_p_wxCloseEventTo_p_wxObject(void *x) {
3743 return (void *)((wxObject *) (wxEvent *) ((wxCloseEvent *) x));
3744}
3745static void *_p_wxMouseEventTo_p_wxObject(void *x) {
3746 return (void *)((wxObject *) (wxEvent *) ((wxMouseEvent *) x));
3747}
3748static void *_p_wxEraseEventTo_p_wxObject(void *x) {
3749 return (void *)((wxObject *) (wxEvent *) ((wxEraseEvent *) x));
3750}
3751static void *_p_wxPyCommandEventTo_p_wxObject(void *x) {
3752 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxPyCommandEvent *) x));
3753}
3754static void *_p_wxCommandEventTo_p_wxObject(void *x) {
3755 return (void *)((wxObject *) (wxEvent *) ((wxCommandEvent *) x));
3756}
3757static void *_p_wxDropFilesEventTo_p_wxObject(void *x) {
3758 return (void *)((wxObject *) (wxEvent *) ((wxDropFilesEvent *) x));
3759}
3760static void *_p_wxFocusEventTo_p_wxObject(void *x) {
3761 return (void *)((wxObject *) (wxEvent *) ((wxFocusEvent *) x));
3762}
3763static void *_p_wxChildFocusEventTo_p_wxObject(void *x) {
3764 return (void *)((wxObject *) (wxEvent *)(wxCommandEvent *) ((wxChildFocusEvent *) x));
3765}
3766static void *_p_wxControlWithItemsTo_p_wxObject(void *x) {
3767 return (void *)((wxObject *) (wxEvtHandler *)(wxWindow *)(wxControl *) ((wxControlWithItems *) x));
3768}
3769static void *_p_wxPyValidatorTo_p_wxObject(void *x) {
3770 return (void *)((wxObject *) (wxEvtHandler *)(wxValidator *) ((wxPyValidator *) x));
3771}
3772static void *_p_wxValidatorTo_p_wxObject(void *x) {
3773 return (void *)((wxObject *) (wxEvtHandler *) ((wxValidator *) x));
3774}
3004cfd8
RD
3775static void *_p_wxControlTo_p_wxWindow(void *x) {
3776 return (void *)((wxWindow *) ((wxControl *) x));
3777}
3778static void *_p_wxControlWithItemsTo_p_wxWindow(void *x) {
3779 return (void *)((wxWindow *) (wxControl *) ((wxControlWithItems *) x));
3780}
3781static void *_p_wxMenuBarTo_p_wxWindow(void *x) {
3782 return (void *)((wxWindow *) ((wxMenuBar *) x));
3783}
3784static void *_p_wxGLCanvasTo_p_wxWindow(void *x) {
3785 return (void *)((wxWindow *) ((wxGLCanvas *) x));
3786}
d14a1e28
RD
3787static void *_p_wxControlTo_p_wxEvtHandler(void *x) {
3788 return (void *)((wxEvtHandler *) (wxWindow *) ((wxControl *) x));
3789}
3790static void *_p_wxWindowTo_p_wxEvtHandler(void *x) {
3791 return (void *)((wxEvtHandler *) ((wxWindow *) x));
3792}
3793static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x) {
3794 return (void *)((wxEvtHandler *) (wxWindow *)(wxControl *) ((wxControlWithItems *) x));
3795}
3796static void *_p_wxPyAppTo_p_wxEvtHandler(void *x) {
3797 return (void *)((wxEvtHandler *) ((wxPyApp *) x));
3798}
3799static void *_p_wxValidatorTo_p_wxEvtHandler(void *x) {
3800 return (void *)((wxEvtHandler *) ((wxValidator *) x));
3801}
3802static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x) {
3803 return (void *)((wxEvtHandler *) (wxValidator *) ((wxPyValidator *) x));
3804}
3805static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x) {
3806 return (void *)((wxEvtHandler *) (wxWindow *) ((wxMenuBar *) x));
3807}
3808static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x) {
3809 return (void *)((wxEvtHandler *) (wxWindow *) ((wxGLCanvas *) x));
3810}
3811static void *_p_wxMenuTo_p_wxEvtHandler(void *x) {
3812 return (void *)((wxEvtHandler *) ((wxMenu *) x));
3813}
0085ce49
RD
3814static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
3815static swig_type_info _swigt__p_form_ops_t = {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0};
3816static swig_type_info _swigt__p_int = {"_p_int", "int *", 0, 0, (void*)0, 0};
3817static swig_type_info _swigt__p_unsigned_char = {"_p_unsigned_char", "unsigned char *|byte *", 0, 0, (void*)0, 0};
3818static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "unsigned int *|time_t *", 0, 0, (void*)0, 0};
3819static swig_type_info _swigt__p_unsigned_long = {"_p_unsigned_long", "unsigned long *|wxUIntPtr *", 0, 0, (void*)0, 0};
3820static swig_type_info _swigt__p_wxDuplexMode = {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0};
3821static swig_type_info _swigt__p_wxEvtHandler = {"_p_wxEvtHandler", "wxEvtHandler *", 0, 0, (void*)0, 0};
3822static swig_type_info _swigt__p_wxControl = {"_p_wxControl", 0, 0, 0, 0, 0};
3823static swig_type_info _swigt__p_wxControlWithItems = {"_p_wxControlWithItems", 0, 0, 0, 0, 0};
3824static swig_type_info _swigt__p_wxPyApp = {"_p_wxPyApp", 0, 0, 0, 0, 0};
3825static swig_type_info _swigt__p_wxMenuBar = {"_p_wxMenuBar", 0, 0, 0, 0, 0};
3826static swig_type_info _swigt__p_wxValidator = {"_p_wxValidator", 0, 0, 0, 0, 0};
3827static swig_type_info _swigt__p_wxPyValidator = {"_p_wxPyValidator", 0, 0, 0, 0, 0};
3828static swig_type_info _swigt__p_wxMenu = {"_p_wxMenu", 0, 0, 0, 0, 0};
3829static swig_type_info _swigt__p_wxGLCanvas = {"_p_wxGLCanvas", "wxGLCanvas *", 0, 0, (void*)0, 0};
3830static swig_type_info _swigt__p_wxGLContext = {"_p_wxGLContext", "wxGLContext *", 0, 0, (void*)0, 0};
3831static swig_type_info _swigt__p_wxObject = {"_p_wxObject", "wxObject *", 0, 0, (void*)0, 0};
3832static swig_type_info _swigt__p_wxLayoutConstraints = {"_p_wxLayoutConstraints", 0, 0, 0, 0, 0};
3833static swig_type_info _swigt__p_wxGBSizerItem = {"_p_wxGBSizerItem", 0, 0, 0, 0, 0};
3834static swig_type_info _swigt__p_wxSizerItem = {"_p_wxSizerItem", 0, 0, 0, 0, 0};
3835static swig_type_info _swigt__p_wxScrollEvent = {"_p_wxScrollEvent", 0, 0, 0, 0, 0};
3836static swig_type_info _swigt__p_wxIndividualLayoutConstraint = {"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0, 0};
3837static swig_type_info _swigt__p_wxStaticBoxSizer = {"_p_wxStaticBoxSizer", 0, 0, 0, 0, 0};
3838static swig_type_info _swigt__p_wxBoxSizer = {"_p_wxBoxSizer", 0, 0, 0, 0, 0};
3839static swig_type_info _swigt__p_wxSizer = {"_p_wxSizer", 0, 0, 0, 0, 0};
3840static swig_type_info _swigt__p_wxGridBagSizer = {"_p_wxGridBagSizer", 0, 0, 0, 0, 0};
3841static swig_type_info _swigt__p_wxUpdateUIEvent = {"_p_wxUpdateUIEvent", 0, 0, 0, 0, 0};
3842static swig_type_info _swigt__p_wxEvent = {"_p_wxEvent", 0, 0, 0, 0, 0};
3843static swig_type_info _swigt__p_wxGridSizer = {"_p_wxGridSizer", 0, 0, 0, 0, 0};
3844static swig_type_info _swigt__p_wxFlexGridSizer = {"_p_wxFlexGridSizer", 0, 0, 0, 0, 0};
3845static swig_type_info _swigt__p_wxInitDialogEvent = {"_p_wxInitDialogEvent", 0, 0, 0, 0, 0};
3846static swig_type_info _swigt__p_wxPaintEvent = {"_p_wxPaintEvent", 0, 0, 0, 0, 0};
3847static swig_type_info _swigt__p_wxNcPaintEvent = {"_p_wxNcPaintEvent", 0, 0, 0, 0, 0};
3848static swig_type_info _swigt__p_wxPaletteChangedEvent = {"_p_wxPaletteChangedEvent", 0, 0, 0, 0, 0};
3849static swig_type_info _swigt__p_wxDisplayChangedEvent = {"_p_wxDisplayChangedEvent", 0, 0, 0, 0, 0};
3850static swig_type_info _swigt__p_wxMouseCaptureChangedEvent = {"_p_wxMouseCaptureChangedEvent", 0, 0, 0, 0, 0};
3851static swig_type_info _swigt__p_wxSysColourChangedEvent = {"_p_wxSysColourChangedEvent", 0, 0, 0, 0, 0};
3852static swig_type_info _swigt__p_wxSetCursorEvent = {"_p_wxSetCursorEvent", 0, 0, 0, 0, 0};
3853static swig_type_info _swigt__p_wxFSFile = {"_p_wxFSFile", 0, 0, 0, 0, 0};
3854static swig_type_info _swigt__p_wxPySizer = {"_p_wxPySizer", 0, 0, 0, 0, 0};
3855static swig_type_info _swigt__p_wxPyEvent = {"_p_wxPyEvent", 0, 0, 0, 0, 0};
3856static swig_type_info _swigt__p_wxNotifyEvent = {"_p_wxNotifyEvent", 0, 0, 0, 0, 0};
3857static swig_type_info _swigt__p_wxShowEvent = {"_p_wxShowEvent", 0, 0, 0, 0, 0};
3858static swig_type_info _swigt__p_wxMenuItem = {"_p_wxMenuItem", 0, 0, 0, 0, 0};
3859static swig_type_info _swigt__p_wxQueryNewPaletteEvent = {"_p_wxQueryNewPaletteEvent", 0, 0, 0, 0, 0};
3860static swig_type_info _swigt__p_wxWindowCreateEvent = {"_p_wxWindowCreateEvent", 0, 0, 0, 0, 0};
3861static swig_type_info _swigt__p_wxIdleEvent = {"_p_wxIdleEvent", 0, 0, 0, 0, 0};
3862static swig_type_info _swigt__p_wxDateEvent = {"_p_wxDateEvent", 0, 0, 0, 0, 0};
3863static swig_type_info _swigt__p_wxMaximizeEvent = {"_p_wxMaximizeEvent", 0, 0, 0, 0, 0};
3864static swig_type_info _swigt__p_wxIconizeEvent = {"_p_wxIconizeEvent", 0, 0, 0, 0, 0};
3865static swig_type_info _swigt__p_wxActivateEvent = {"_p_wxActivateEvent", 0, 0, 0, 0, 0};
3866static swig_type_info _swigt__p_wxMoveEvent = {"_p_wxMoveEvent", 0, 0, 0, 0, 0};
3867static swig_type_info _swigt__p_wxSizeEvent = {"_p_wxSizeEvent", 0, 0, 0, 0, 0};
3868static swig_type_info _swigt__p_wxPNMHandler = {"_p_wxPNMHandler", 0, 0, 0, 0, 0};
3869static swig_type_info _swigt__p_wxJPEGHandler = {"_p_wxJPEGHandler", 0, 0, 0, 0, 0};
3870static swig_type_info _swigt__p_wxPCXHandler = {"_p_wxPCXHandler", 0, 0, 0, 0, 0};
3871static swig_type_info _swigt__p_wxGIFHandler = {"_p_wxGIFHandler", 0, 0, 0, 0, 0};
3872static swig_type_info _swigt__p_wxPNGHandler = {"_p_wxPNGHandler", 0, 0, 0, 0, 0};
3873static swig_type_info _swigt__p_wxANIHandler = {"_p_wxANIHandler", 0, 0, 0, 0, 0};
3874static swig_type_info _swigt__p_wxCURHandler = {"_p_wxCURHandler", 0, 0, 0, 0, 0};
3875static swig_type_info _swigt__p_wxICOHandler = {"_p_wxICOHandler", 0, 0, 0, 0, 0};
3876static swig_type_info _swigt__p_wxBMPHandler = {"_p_wxBMPHandler", 0, 0, 0, 0, 0};
3877static swig_type_info _swigt__p_wxPyImageHandler = {"_p_wxPyImageHandler", 0, 0, 0, 0, 0};
3878static swig_type_info _swigt__p_wxImageHandler = {"_p_wxImageHandler", 0, 0, 0, 0, 0};
3879static swig_type_info _swigt__p_wxXPMHandler = {"_p_wxXPMHandler", 0, 0, 0, 0, 0};
3880static swig_type_info _swigt__p_wxTIFFHandler = {"_p_wxTIFFHandler", 0, 0, 0, 0, 0};
3881static swig_type_info _swigt__p_wxStdDialogButtonSizer = {"_p_wxStdDialogButtonSizer", 0, 0, 0, 0, 0};
3882static swig_type_info _swigt__p_wxAcceleratorTable = {"_p_wxAcceleratorTable", 0, 0, 0, 0, 0};
3883static swig_type_info _swigt__p_wxImage = {"_p_wxImage", 0, 0, 0, 0, 0};
3884static swig_type_info _swigt__p_wxScrollWinEvent = {"_p_wxScrollWinEvent", 0, 0, 0, 0, 0};
3885static swig_type_info _swigt__p_wxWindowDestroyEvent = {"_p_wxWindowDestroyEvent", 0, 0, 0, 0, 0};
3886static swig_type_info _swigt__p_wxNavigationKeyEvent = {"_p_wxNavigationKeyEvent", 0, 0, 0, 0, 0};
3887static swig_type_info _swigt__p_wxKeyEvent = {"_p_wxKeyEvent", 0, 0, 0, 0, 0};
3888static swig_type_info _swigt__p_wxFileSystem = {"_p_wxFileSystem", 0, 0, 0, 0, 0};
3889static swig_type_info _swigt__p_wxContextMenuEvent = {"_p_wxContextMenuEvent", 0, 0, 0, 0, 0};
3890static swig_type_info _swigt__p_wxMenuEvent = {"_p_wxMenuEvent", 0, 0, 0, 0, 0};
3891static swig_type_info _swigt__p_wxCloseEvent = {"_p_wxCloseEvent", 0, 0, 0, 0, 0};
3892static swig_type_info _swigt__p_wxMouseEvent = {"_p_wxMouseEvent", 0, 0, 0, 0, 0};
3893static swig_type_info _swigt__p_wxEraseEvent = {"_p_wxEraseEvent", 0, 0, 0, 0, 0};
3894static swig_type_info _swigt__p_wxCommandEvent = {"_p_wxCommandEvent", 0, 0, 0, 0, 0};
3895static swig_type_info _swigt__p_wxPyCommandEvent = {"_p_wxPyCommandEvent", 0, 0, 0, 0, 0};
3896static swig_type_info _swigt__p_wxDropFilesEvent = {"_p_wxDropFilesEvent", 0, 0, 0, 0, 0};
3897static swig_type_info _swigt__p_wxFocusEvent = {"_p_wxFocusEvent", 0, 0, 0, 0, 0};
3898static swig_type_info _swigt__p_wxChildFocusEvent = {"_p_wxChildFocusEvent", 0, 0, 0, 0, 0};
3899static swig_type_info _swigt__p_wxPalette = {"_p_wxPalette", "wxPalette *", 0, 0, (void*)0, 0};
3900static swig_type_info _swigt__p_wxPaperSize = {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0};
3901static swig_type_info _swigt__p_wxWindow = {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0};
32fe5131
RD
3902
3903static swig_type_info *swig_type_initial[] = {
3904 &_swigt__p_char,
3905 &_swigt__p_form_ops_t,
3906 &_swigt__p_int,
3907 &_swigt__p_unsigned_char,
3908 &_swigt__p_unsigned_int,
3909 &_swigt__p_unsigned_long,
3910 &_swigt__p_wxANIHandler,
3911 &_swigt__p_wxAcceleratorTable,
3912 &_swigt__p_wxActivateEvent,
3913 &_swigt__p_wxBMPHandler,
3914 &_swigt__p_wxBoxSizer,
3915 &_swigt__p_wxCURHandler,
3916 &_swigt__p_wxChildFocusEvent,
3917 &_swigt__p_wxCloseEvent,
3918 &_swigt__p_wxCommandEvent,
3919 &_swigt__p_wxContextMenuEvent,
3920 &_swigt__p_wxControl,
3921 &_swigt__p_wxControlWithItems,
3922 &_swigt__p_wxDateEvent,
3923 &_swigt__p_wxDisplayChangedEvent,
3924 &_swigt__p_wxDropFilesEvent,
3925 &_swigt__p_wxDuplexMode,
3926 &_swigt__p_wxEraseEvent,
3927 &_swigt__p_wxEvent,
3928 &_swigt__p_wxEvtHandler,
3929 &_swigt__p_wxFSFile,
3930 &_swigt__p_wxFileSystem,
3931 &_swigt__p_wxFlexGridSizer,
3932 &_swigt__p_wxFocusEvent,
3933 &_swigt__p_wxGBSizerItem,
3934 &_swigt__p_wxGIFHandler,
3935 &_swigt__p_wxGLCanvas,
3936 &_swigt__p_wxGLContext,
3937 &_swigt__p_wxGridBagSizer,
3938 &_swigt__p_wxGridSizer,
3939 &_swigt__p_wxICOHandler,
3940 &_swigt__p_wxIconizeEvent,
3941 &_swigt__p_wxIdleEvent,
3942 &_swigt__p_wxImage,
3943 &_swigt__p_wxImageHandler,
3944 &_swigt__p_wxIndividualLayoutConstraint,
3945 &_swigt__p_wxInitDialogEvent,
3946 &_swigt__p_wxJPEGHandler,
3947 &_swigt__p_wxKeyEvent,
3948 &_swigt__p_wxLayoutConstraints,
3949 &_swigt__p_wxMaximizeEvent,
3950 &_swigt__p_wxMenu,
3951 &_swigt__p_wxMenuBar,
3952 &_swigt__p_wxMenuEvent,
3953 &_swigt__p_wxMenuItem,
3954 &_swigt__p_wxMouseCaptureChangedEvent,
3955 &_swigt__p_wxMouseEvent,
3956 &_swigt__p_wxMoveEvent,
3957 &_swigt__p_wxNavigationKeyEvent,
3958 &_swigt__p_wxNcPaintEvent,
3959 &_swigt__p_wxNotifyEvent,
3960 &_swigt__p_wxObject,
3961 &_swigt__p_wxPCXHandler,
3962 &_swigt__p_wxPNGHandler,
3963 &_swigt__p_wxPNMHandler,
3964 &_swigt__p_wxPaintEvent,
3965 &_swigt__p_wxPalette,
3966 &_swigt__p_wxPaletteChangedEvent,
3967 &_swigt__p_wxPaperSize,
3968 &_swigt__p_wxPyApp,
3969 &_swigt__p_wxPyCommandEvent,
3970 &_swigt__p_wxPyEvent,
3971 &_swigt__p_wxPyImageHandler,
3972 &_swigt__p_wxPySizer,
3973 &_swigt__p_wxPyValidator,
3974 &_swigt__p_wxQueryNewPaletteEvent,
3975 &_swigt__p_wxScrollEvent,
3976 &_swigt__p_wxScrollWinEvent,
3977 &_swigt__p_wxSetCursorEvent,
3978 &_swigt__p_wxShowEvent,
3979 &_swigt__p_wxSizeEvent,
3980 &_swigt__p_wxSizer,
3981 &_swigt__p_wxSizerItem,
3982 &_swigt__p_wxStaticBoxSizer,
3983 &_swigt__p_wxStdDialogButtonSizer,
3984 &_swigt__p_wxSysColourChangedEvent,
3985 &_swigt__p_wxTIFFHandler,
3986 &_swigt__p_wxUpdateUIEvent,
3987 &_swigt__p_wxValidator,
3988 &_swigt__p_wxWindow,
3989 &_swigt__p_wxWindowCreateEvent,
3990 &_swigt__p_wxWindowDestroyEvent,
3991 &_swigt__p_wxXPMHandler,
32fe5131
RD
3992};
3993
3994static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
3995static swig_cast_info _swigc__p_form_ops_t[] = { {&_swigt__p_form_ops_t, 0, 0, 0},{0, 0, 0, 0}};
3996static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
3997static swig_cast_info _swigc__p_unsigned_char[] = { {&_swigt__p_unsigned_char, 0, 0, 0},{0, 0, 0, 0}};
3998static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
3999static swig_cast_info _swigc__p_unsigned_long[] = { {&_swigt__p_unsigned_long, 0, 0, 0},{0, 0, 0, 0}};
4000static swig_cast_info _swigc__p_wxDuplexMode[] = { {&_swigt__p_wxDuplexMode, 0, 0, 0},{0, 0, 0, 0}};
4001static swig_cast_info _swigc__p_wxControl[] = {{&_swigt__p_wxControl, 0, 0, 0},{0, 0, 0, 0}};
4002static swig_cast_info _swigc__p_wxControlWithItems[] = {{&_swigt__p_wxControlWithItems, 0, 0, 0},{0, 0, 0, 0}};
4003static swig_cast_info _swigc__p_wxPyApp[] = {{&_swigt__p_wxPyApp, 0, 0, 0},{0, 0, 0, 0}};
4004static swig_cast_info _swigc__p_wxMenuBar[] = {{&_swigt__p_wxMenuBar, 0, 0, 0},{0, 0, 0, 0}};
4005static swig_cast_info _swigc__p_wxValidator[] = {{&_swigt__p_wxValidator, 0, 0, 0},{0, 0, 0, 0}};
4006static swig_cast_info _swigc__p_wxPyValidator[] = {{&_swigt__p_wxPyValidator, 0, 0, 0},{0, 0, 0, 0}};
4007static swig_cast_info _swigc__p_wxMenu[] = {{&_swigt__p_wxMenu, 0, 0, 0},{0, 0, 0, 0}};
4008static 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}};
4009static swig_cast_info _swigc__p_wxGLCanvas[] = { {&_swigt__p_wxGLCanvas, 0, 0, 0},{0, 0, 0, 0}};
4010static swig_cast_info _swigc__p_wxGLContext[] = { {&_swigt__p_wxGLContext, 0, 0, 0},{0, 0, 0, 0}};
4011static swig_cast_info _swigc__p_wxLayoutConstraints[] = {{&_swigt__p_wxLayoutConstraints, 0, 0, 0},{0, 0, 0, 0}};
4012static swig_cast_info _swigc__p_wxGBSizerItem[] = {{&_swigt__p_wxGBSizerItem, 0, 0, 0},{0, 0, 0, 0}};
4013static swig_cast_info _swigc__p_wxSizerItem[] = {{&_swigt__p_wxSizerItem, 0, 0, 0},{0, 0, 0, 0}};
4014static swig_cast_info _swigc__p_wxScrollEvent[] = {{&_swigt__p_wxScrollEvent, 0, 0, 0},{0, 0, 0, 0}};
4015static swig_cast_info _swigc__p_wxIndividualLayoutConstraint[] = {{&_swigt__p_wxIndividualLayoutConstraint, 0, 0, 0},{0, 0, 0, 0}};
4016static swig_cast_info _swigc__p_wxStaticBoxSizer[] = {{&_swigt__p_wxStaticBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
4017static swig_cast_info _swigc__p_wxBoxSizer[] = {{&_swigt__p_wxBoxSizer, 0, 0, 0},{0, 0, 0, 0}};
4018static swig_cast_info _swigc__p_wxSizer[] = {{&_swigt__p_wxSizer, 0, 0, 0},{0, 0, 0, 0}};
4019static swig_cast_info _swigc__p_wxGridBagSizer[] = {{&_swigt__p_wxGridBagSizer, 0, 0, 0},{0, 0, 0, 0}};
4020static swig_cast_info _swigc__p_wxUpdateUIEvent[] = {{&_swigt__p_wxUpdateUIEvent, 0, 0, 0},{0, 0, 0, 0}};
4021static swig_cast_info _swigc__p_wxEvent[] = {{&_swigt__p_wxEvent, 0, 0, 0},{0, 0, 0, 0}};
4022static swig_cast_info _swigc__p_wxGridSizer[] = {{&_swigt__p_wxGridSizer, 0, 0, 0},{0, 0, 0, 0}};
4023static swig_cast_info _swigc__p_wxFlexGridSizer[] = {{&_swigt__p_wxFlexGridSizer, 0, 0, 0},{0, 0, 0, 0}};
4024static swig_cast_info _swigc__p_wxInitDialogEvent[] = {{&_swigt__p_wxInitDialogEvent, 0, 0, 0},{0, 0, 0, 0}};
4025static swig_cast_info _swigc__p_wxPaintEvent[] = {{&_swigt__p_wxPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
4026static swig_cast_info _swigc__p_wxNcPaintEvent[] = {{&_swigt__p_wxNcPaintEvent, 0, 0, 0},{0, 0, 0, 0}};
4027static swig_cast_info _swigc__p_wxPaletteChangedEvent[] = {{&_swigt__p_wxPaletteChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
4028static swig_cast_info _swigc__p_wxDisplayChangedEvent[] = {{&_swigt__p_wxDisplayChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
4029static swig_cast_info _swigc__p_wxMouseCaptureChangedEvent[] = {{&_swigt__p_wxMouseCaptureChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
4030static swig_cast_info _swigc__p_wxSysColourChangedEvent[] = {{&_swigt__p_wxSysColourChangedEvent, 0, 0, 0},{0, 0, 0, 0}};
4031static swig_cast_info _swigc__p_wxSetCursorEvent[] = {{&_swigt__p_wxSetCursorEvent, 0, 0, 0},{0, 0, 0, 0}};
4032static swig_cast_info _swigc__p_wxFSFile[] = {{&_swigt__p_wxFSFile, 0, 0, 0},{0, 0, 0, 0}};
4033static swig_cast_info _swigc__p_wxPySizer[] = {{&_swigt__p_wxPySizer, 0, 0, 0},{0, 0, 0, 0}};
4034static swig_cast_info _swigc__p_wxPyEvent[] = {{&_swigt__p_wxPyEvent, 0, 0, 0},{0, 0, 0, 0}};
4035static swig_cast_info _swigc__p_wxNotifyEvent[] = {{&_swigt__p_wxNotifyEvent, 0, 0, 0},{0, 0, 0, 0}};
4036static swig_cast_info _swigc__p_wxShowEvent[] = {{&_swigt__p_wxShowEvent, 0, 0, 0},{0, 0, 0, 0}};
4037static swig_cast_info _swigc__p_wxMenuItem[] = {{&_swigt__p_wxMenuItem, 0, 0, 0},{0, 0, 0, 0}};
4038static swig_cast_info _swigc__p_wxQueryNewPaletteEvent[] = {{&_swigt__p_wxQueryNewPaletteEvent, 0, 0, 0},{0, 0, 0, 0}};
4039static swig_cast_info _swigc__p_wxWindowCreateEvent[] = {{&_swigt__p_wxWindowCreateEvent, 0, 0, 0},{0, 0, 0, 0}};
4040static swig_cast_info _swigc__p_wxIdleEvent[] = {{&_swigt__p_wxIdleEvent, 0, 0, 0},{0, 0, 0, 0}};
4041static swig_cast_info _swigc__p_wxDateEvent[] = {{&_swigt__p_wxDateEvent, 0, 0, 0},{0, 0, 0, 0}};
4042static swig_cast_info _swigc__p_wxMaximizeEvent[] = {{&_swigt__p_wxMaximizeEvent, 0, 0, 0},{0, 0, 0, 0}};
4043static swig_cast_info _swigc__p_wxIconizeEvent[] = {{&_swigt__p_wxIconizeEvent, 0, 0, 0},{0, 0, 0, 0}};
4044static swig_cast_info _swigc__p_wxActivateEvent[] = {{&_swigt__p_wxActivateEvent, 0, 0, 0},{0, 0, 0, 0}};
4045static swig_cast_info _swigc__p_wxMoveEvent[] = {{&_swigt__p_wxMoveEvent, 0, 0, 0},{0, 0, 0, 0}};
4046static swig_cast_info _swigc__p_wxSizeEvent[] = {{&_swigt__p_wxSizeEvent, 0, 0, 0},{0, 0, 0, 0}};
4047static swig_cast_info _swigc__p_wxPNMHandler[] = {{&_swigt__p_wxPNMHandler, 0, 0, 0},{0, 0, 0, 0}};
4048static swig_cast_info _swigc__p_wxJPEGHandler[] = {{&_swigt__p_wxJPEGHandler, 0, 0, 0},{0, 0, 0, 0}};
4049static swig_cast_info _swigc__p_wxPCXHandler[] = {{&_swigt__p_wxPCXHandler, 0, 0, 0},{0, 0, 0, 0}};
4050static swig_cast_info _swigc__p_wxGIFHandler[] = {{&_swigt__p_wxGIFHandler, 0, 0, 0},{0, 0, 0, 0}};
4051static swig_cast_info _swigc__p_wxPNGHandler[] = {{&_swigt__p_wxPNGHandler, 0, 0, 0},{0, 0, 0, 0}};
4052static swig_cast_info _swigc__p_wxANIHandler[] = {{&_swigt__p_wxANIHandler, 0, 0, 0},{0, 0, 0, 0}};
4053static swig_cast_info _swigc__p_wxCURHandler[] = {{&_swigt__p_wxCURHandler, 0, 0, 0},{0, 0, 0, 0}};
4054static swig_cast_info _swigc__p_wxICOHandler[] = {{&_swigt__p_wxICOHandler, 0, 0, 0},{0, 0, 0, 0}};
4055static swig_cast_info _swigc__p_wxBMPHandler[] = {{&_swigt__p_wxBMPHandler, 0, 0, 0},{0, 0, 0, 0}};
4056static swig_cast_info _swigc__p_wxPyImageHandler[] = {{&_swigt__p_wxPyImageHandler, 0, 0, 0},{0, 0, 0, 0}};
4057static swig_cast_info _swigc__p_wxImageHandler[] = {{&_swigt__p_wxImageHandler, 0, 0, 0},{0, 0, 0, 0}};
4058static swig_cast_info _swigc__p_wxXPMHandler[] = {{&_swigt__p_wxXPMHandler, 0, 0, 0},{0, 0, 0, 0}};
4059static swig_cast_info _swigc__p_wxTIFFHandler[] = {{&_swigt__p_wxTIFFHandler, 0, 0, 0},{0, 0, 0, 0}};
4060static swig_cast_info _swigc__p_wxStdDialogButtonSizer[] = {{&_swigt__p_wxStdDialogButtonSizer, 0, 0, 0},{0, 0, 0, 0}};
4061static swig_cast_info _swigc__p_wxAcceleratorTable[] = {{&_swigt__p_wxAcceleratorTable, 0, 0, 0},{0, 0, 0, 0}};
4062static swig_cast_info _swigc__p_wxImage[] = {{&_swigt__p_wxImage, 0, 0, 0},{0, 0, 0, 0}};
4063static swig_cast_info _swigc__p_wxScrollWinEvent[] = {{&_swigt__p_wxScrollWinEvent, 0, 0, 0},{0, 0, 0, 0}};
4064static swig_cast_info _swigc__p_wxWindowDestroyEvent[] = {{&_swigt__p_wxWindowDestroyEvent, 0, 0, 0},{0, 0, 0, 0}};
4065static swig_cast_info _swigc__p_wxNavigationKeyEvent[] = {{&_swigt__p_wxNavigationKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
4066static swig_cast_info _swigc__p_wxKeyEvent[] = {{&_swigt__p_wxKeyEvent, 0, 0, 0},{0, 0, 0, 0}};
4067static swig_cast_info _swigc__p_wxFileSystem[] = {{&_swigt__p_wxFileSystem, 0, 0, 0},{0, 0, 0, 0}};
4068static swig_cast_info _swigc__p_wxContextMenuEvent[] = {{&_swigt__p_wxContextMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
4069static swig_cast_info _swigc__p_wxMenuEvent[] = {{&_swigt__p_wxMenuEvent, 0, 0, 0},{0, 0, 0, 0}};
4070static swig_cast_info _swigc__p_wxCloseEvent[] = {{&_swigt__p_wxCloseEvent, 0, 0, 0},{0, 0, 0, 0}};
4071static swig_cast_info _swigc__p_wxMouseEvent[] = {{&_swigt__p_wxMouseEvent, 0, 0, 0},{0, 0, 0, 0}};
4072static swig_cast_info _swigc__p_wxEraseEvent[] = {{&_swigt__p_wxEraseEvent, 0, 0, 0},{0, 0, 0, 0}};
4073static swig_cast_info _swigc__p_wxCommandEvent[] = {{&_swigt__p_wxCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
4074static swig_cast_info _swigc__p_wxPyCommandEvent[] = {{&_swigt__p_wxPyCommandEvent, 0, 0, 0},{0, 0, 0, 0}};
4075static swig_cast_info _swigc__p_wxDropFilesEvent[] = {{&_swigt__p_wxDropFilesEvent, 0, 0, 0},{0, 0, 0, 0}};
4076static swig_cast_info _swigc__p_wxFocusEvent[] = {{&_swigt__p_wxFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
4077static swig_cast_info _swigc__p_wxChildFocusEvent[] = {{&_swigt__p_wxChildFocusEvent, 0, 0, 0},{0, 0, 0, 0}};
4078static 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_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_wxQueryNewPaletteEvent, _p_wxQueryNewPaletteEventTo_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_wxMaximizeEvent, _p_wxMaximizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxIconizeEvent, _p_wxIconizeEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxActivateEvent, _p_wxActivateEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMoveEvent, _p_wxMoveEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxSizeEvent, _p_wxSizeEventTo_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_wxCloseEvent, _p_wxCloseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxMouseEvent, _p_wxMouseEventTo_p_wxObject, 0, 0}, {&_swigt__p_wxEraseEvent, _p_wxEraseEventTo_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}};
4079static swig_cast_info _swigc__p_wxPalette[] = { {&_swigt__p_wxPalette, 0, 0, 0},{0, 0, 0, 0}};
4080static swig_cast_info _swigc__p_wxPaperSize[] = { {&_swigt__p_wxPaperSize, 0, 0, 0},{0, 0, 0, 0}};
4081static 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
4082
4083static swig_cast_info *swig_cast_initial[] = {
4084 _swigc__p_char,
4085 _swigc__p_form_ops_t,
4086 _swigc__p_int,
4087 _swigc__p_unsigned_char,
4088 _swigc__p_unsigned_int,
4089 _swigc__p_unsigned_long,
4090 _swigc__p_wxANIHandler,
4091 _swigc__p_wxAcceleratorTable,
4092 _swigc__p_wxActivateEvent,
4093 _swigc__p_wxBMPHandler,
4094 _swigc__p_wxBoxSizer,
4095 _swigc__p_wxCURHandler,
4096 _swigc__p_wxChildFocusEvent,
4097 _swigc__p_wxCloseEvent,
4098 _swigc__p_wxCommandEvent,
4099 _swigc__p_wxContextMenuEvent,
4100 _swigc__p_wxControl,
4101 _swigc__p_wxControlWithItems,
4102 _swigc__p_wxDateEvent,
4103 _swigc__p_wxDisplayChangedEvent,
4104 _swigc__p_wxDropFilesEvent,
4105 _swigc__p_wxDuplexMode,
4106 _swigc__p_wxEraseEvent,
4107 _swigc__p_wxEvent,
4108 _swigc__p_wxEvtHandler,
4109 _swigc__p_wxFSFile,
4110 _swigc__p_wxFileSystem,
4111 _swigc__p_wxFlexGridSizer,
4112 _swigc__p_wxFocusEvent,
4113 _swigc__p_wxGBSizerItem,
4114 _swigc__p_wxGIFHandler,
4115 _swigc__p_wxGLCanvas,
4116 _swigc__p_wxGLContext,
4117 _swigc__p_wxGridBagSizer,
4118 _swigc__p_wxGridSizer,
4119 _swigc__p_wxICOHandler,
4120 _swigc__p_wxIconizeEvent,
4121 _swigc__p_wxIdleEvent,
4122 _swigc__p_wxImage,
4123 _swigc__p_wxImageHandler,
4124 _swigc__p_wxIndividualLayoutConstraint,
4125 _swigc__p_wxInitDialogEvent,
4126 _swigc__p_wxJPEGHandler,
4127 _swigc__p_wxKeyEvent,
4128 _swigc__p_wxLayoutConstraints,
4129 _swigc__p_wxMaximizeEvent,
4130 _swigc__p_wxMenu,
4131 _swigc__p_wxMenuBar,
4132 _swigc__p_wxMenuEvent,
4133 _swigc__p_wxMenuItem,
4134 _swigc__p_wxMouseCaptureChangedEvent,
4135 _swigc__p_wxMouseEvent,
4136 _swigc__p_wxMoveEvent,
4137 _swigc__p_wxNavigationKeyEvent,
4138 _swigc__p_wxNcPaintEvent,
4139 _swigc__p_wxNotifyEvent,
4140 _swigc__p_wxObject,
4141 _swigc__p_wxPCXHandler,
4142 _swigc__p_wxPNGHandler,
4143 _swigc__p_wxPNMHandler,
4144 _swigc__p_wxPaintEvent,
4145 _swigc__p_wxPalette,
4146 _swigc__p_wxPaletteChangedEvent,
4147 _swigc__p_wxPaperSize,
4148 _swigc__p_wxPyApp,
4149 _swigc__p_wxPyCommandEvent,
4150 _swigc__p_wxPyEvent,
4151 _swigc__p_wxPyImageHandler,
4152 _swigc__p_wxPySizer,
4153 _swigc__p_wxPyValidator,
4154 _swigc__p_wxQueryNewPaletteEvent,
4155 _swigc__p_wxScrollEvent,
4156 _swigc__p_wxScrollWinEvent,
4157 _swigc__p_wxSetCursorEvent,
4158 _swigc__p_wxShowEvent,
4159 _swigc__p_wxSizeEvent,
4160 _swigc__p_wxSizer,
4161 _swigc__p_wxSizerItem,
4162 _swigc__p_wxStaticBoxSizer,
4163 _swigc__p_wxStdDialogButtonSizer,
4164 _swigc__p_wxSysColourChangedEvent,
4165 _swigc__p_wxTIFFHandler,
4166 _swigc__p_wxUpdateUIEvent,
4167 _swigc__p_wxValidator,
4168 _swigc__p_wxWindow,
4169 _swigc__p_wxWindowCreateEvent,
4170 _swigc__p_wxWindowDestroyEvent,
4171 _swigc__p_wxXPMHandler,
d14a1e28
RD
4172};
4173
4174
4175/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
4176
4177static swig_const_info swig_const_table[] = {
c32bde28 4178{0, 0, 0, 0.0, 0, 0}};
d14a1e28
RD
4179
4180#ifdef __cplusplus
4181}
4182#endif
0085ce49 4183/* -----------------------------------------------------------------------------
32fe5131
RD
4184 * Type initialization:
4185 * This problem is tough by the requirement that no dynamic
4186 * memory is used. Also, since swig_type_info structures store pointers to
4187 * swig_cast_info structures and swig_cast_info structures store pointers back
4188 * to swig_type_info structures, we need some lookup code at initialization.
4189 * The idea is that swig generates all the structures that are needed.
4190 * The runtime then collects these partially filled structures.
4191 * The SWIG_InitializeModule function takes these initial arrays out of
4192 * swig_module, and does all the lookup, filling in the swig_module.types
4193 * array with the correct data and linking the correct swig_cast_info
4194 * structures together.
0085ce49 4195 *
32fe5131
RD
4196 * The generated swig_type_info structures are assigned staticly to an initial
4197 * array. We just loop though that array, and handle each type individually.
4198 * First we lookup if this type has been already loaded, and if so, use the
4199 * loaded structure instead of the generated one. Then we have to fill in the
4200 * cast linked list. The cast data is initially stored in something like a
4201 * two-dimensional array. Each row corresponds to a type (there are the same
4202 * number of rows as there are in the swig_type_initial array). Each entry in
4203 * a column is one of the swig_cast_info structures for that type.
4204 * The cast_initial array is actually an array of arrays, because each row has
4205 * a variable number of columns. So to actually build the cast linked list,
4206 * we find the array of casts associated with the type, and loop through it
4207 * adding the casts to the list. The one last trick we need to do is making
4208 * sure the type pointer in the swig_cast_info struct is correct.
0085ce49 4209 *
32fe5131
RD
4210 * First off, we lookup the cast->type name to see if it is already loaded.
4211 * There are three cases to handle:
4212 * 1) If the cast->type has already been loaded AND the type we are adding
4213 * casting info to has not been loaded (it is in this module), THEN we
4214 * replace the cast->type pointer with the type pointer that has already
4215 * been loaded.
4216 * 2) If BOTH types (the one we are adding casting info to, and the
4217 * cast->type) are loaded, THEN the cast info has already been loaded by
4218 * the previous module so we just ignore it.
4219 * 3) Finally, if cast->type has not already been loaded, then we add that
4220 * swig_cast_info to the linked list (because the cast->type) pointer will
4221 * be correct.
0085ce49 4222 * ----------------------------------------------------------------------------- */
32fe5131
RD
4223
4224#ifdef __cplusplus
4225extern "C" {
4226#if 0
4227} /* c-mode */
4228#endif
4229#endif
4230
4231#if 0
4232#define SWIGRUNTIME_DEBUG
4233#endif
4234
4235SWIGRUNTIME void
4236SWIG_InitializeModule(void *clientdata) {
0085ce49
RD
4237 size_t i;
4238 swig_module_info *module_head;
4239 static int init_run = 0;
4240
4241 clientdata = clientdata;
4242
4243 if (init_run) return;
4244 init_run = 1;
4245
4246 /* Initialize the swig_module */
4247 swig_module.type_initial = swig_type_initial;
4248 swig_module.cast_initial = swig_cast_initial;
4249
4250 /* Try and load any already created modules */
4251 module_head = SWIG_GetModule(clientdata);
4252 if (module_head) {
4253 swig_module.next = module_head->next;
4254 module_head->next = &swig_module;
4255 } else {
4256 /* This is the first module loaded */
4257 swig_module.next = &swig_module;
4258 SWIG_SetModule(clientdata, &swig_module);
4259 }
4260
4261 /* Now work on filling in swig_module.types */
32fe5131 4262#ifdef SWIGRUNTIME_DEBUG
0085ce49 4263 printf("SWIG_InitializeModule: size %d\n", swig_module.size);
32fe5131 4264#endif
0085ce49
RD
4265 for (i = 0; i < swig_module.size; ++i) {
4266 swig_type_info *type = 0;
4267 swig_type_info *ret;
4268 swig_cast_info *cast;
4269
32fe5131 4270#ifdef SWIGRUNTIME_DEBUG
0085ce49 4271 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
32fe5131 4272#endif
0085ce49
RD
4273
4274 /* if there is another module already loaded */
4275 if (swig_module.next != &swig_module) {
4276 type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
4277 }
4278 if (type) {
4279 /* Overwrite clientdata field */
32fe5131 4280#ifdef SWIGRUNTIME_DEBUG
0085ce49 4281 printf("SWIG_InitializeModule: found type %s\n", type->name);
32fe5131 4282#endif
0085ce49
RD
4283 if (swig_module.type_initial[i]->clientdata) {
4284 type->clientdata = swig_module.type_initial[i]->clientdata;
32fe5131 4285#ifdef SWIGRUNTIME_DEBUG
0085ce49 4286 printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
32fe5131 4287#endif
0085ce49
RD
4288 }
4289 } else {
4290 type = swig_module.type_initial[i];
4291 }
4292
4293 /* Insert casting types */
4294 cast = swig_module.cast_initial[i];
4295 while (cast->type) {
4296 /* Don't need to add information already in the list */
4297 ret = 0;
32fe5131 4298#ifdef SWIGRUNTIME_DEBUG
0085ce49 4299 printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
32fe5131 4300#endif
0085ce49
RD
4301 if (swig_module.next != &swig_module) {
4302 ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
32fe5131 4303#ifdef SWIGRUNTIME_DEBUG
0085ce49 4304 if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
32fe5131 4305#endif
0085ce49
RD
4306 }
4307 if (ret) {
4308 if (type == swig_module.type_initial[i]) {
32fe5131 4309#ifdef SWIGRUNTIME_DEBUG
0085ce49 4310 printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
32fe5131 4311#endif
0085ce49
RD
4312 cast->type = ret;
4313 ret = 0;
4314 } else {
4315 /* Check for casting already in the list */
4316 swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
32fe5131 4317#ifdef SWIGRUNTIME_DEBUG
0085ce49 4318 if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
32fe5131 4319#endif
0085ce49
RD
4320 if (!ocast) ret = 0;
4321 }
4322 }
4323
4324 if (!ret) {
32fe5131 4325#ifdef SWIGRUNTIME_DEBUG
0085ce49 4326 printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
32fe5131 4327#endif
0085ce49
RD
4328 if (type->cast) {
4329 type->cast->prev = cast;
4330 cast->next = type->cast;
32fe5131 4331 }
0085ce49
RD
4332 type->cast = cast;
4333 }
4334 cast++;
32fe5131 4335 }
0085ce49
RD
4336 /* Set entry in modules->types array equal to the type */
4337 swig_module.types[i] = type;
4338 }
4339 swig_module.types[i] = 0;
4340
32fe5131 4341#ifdef SWIGRUNTIME_DEBUG
0085ce49
RD
4342 printf("**** SWIG_InitializeModule: Cast List ******\n");
4343 for (i = 0; i < swig_module.size; ++i) {
4344 int j = 0;
4345 swig_cast_info *cast = swig_module.cast_initial[i];
4346 printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
4347 while (cast->type) {
4348 printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
4349 cast++;
4350 ++j;
32fe5131 4351 }
0085ce49
RD
4352 printf("---- Total casts: %d\n",j);
4353 }
4354 printf("**** SWIG_InitializeModule: Cast List ******\n");
32fe5131
RD
4355#endif
4356}
4357
4358/* This function will propagate the clientdata field of type to
4359* any new swig_type_info structures that have been added into the list
4360* of equivalent types. It is like calling
4361* SWIG_TypeClientData(type, clientdata) a second time.
4362*/
4363SWIGRUNTIME void
4364SWIG_PropagateClientData(void) {
0085ce49
RD
4365 size_t i;
4366 swig_cast_info *equiv;
4367 static int init_run = 0;
4368
4369 if (init_run) return;
4370 init_run = 1;
4371
4372 for (i = 0; i < swig_module.size; i++) {
4373 if (swig_module.types[i]->clientdata) {
4374 equiv = swig_module.types[i]->cast;
4375 while (equiv) {
4376 if (!equiv->converter) {
4377 if (equiv->type && !equiv->type->clientdata)
4378 SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
32fe5131 4379 }
0085ce49
RD
4380 equiv = equiv->next;
4381 }
32fe5131 4382 }
0085ce49 4383 }
32fe5131
RD
4384}
4385
4386#ifdef __cplusplus
4387#if 0
4388{
0085ce49 4389 /* c-mode */
32fe5131
RD
4390#endif
4391}
4392#endif
4393
d14a1e28 4394
3004cfd8
RD
4395
4396#ifdef __cplusplus
4397extern "C" {
4398#endif
0085ce49
RD
4399
4400 /* Python-specific SWIG API */
3004cfd8
RD
4401#define SWIG_newvarlink() SWIG_Python_newvarlink()
4402#define SWIG_addvarlink(p, name, get_attr, set_attr) SWIG_Python_addvarlink(p, name, get_attr, set_attr)
4403#define SWIG_InstallConstants(d, constants) SWIG_Python_InstallConstants(d, constants)
0085ce49
RD
4404
4405 /* -----------------------------------------------------------------------------
4406 * global variable support code.
4407 * ----------------------------------------------------------------------------- */
4408
4409 typedef struct swig_globalvar {
4410 char *name; /* Name of global variable */
4411 PyObject *(*get_attr)(void); /* Return the current value */
4412 int (*set_attr)(PyObject *); /* Set the value */
4413 struct swig_globalvar *next;
4414 } swig_globalvar;
4415
4416 typedef struct swig_varlinkobject {
4417 PyObject_HEAD
4418 swig_globalvar *vars;
4419 } swig_varlinkobject;
4420
4421 SWIGINTERN PyObject *
4422 swig_varlink_repr(swig_varlinkobject *SWIGUNUSEDPARM(v)) {
4423 return PyString_FromString("<Swig global variables>");
4424 }
4425
4426 SWIGINTERN PyObject *
4427 swig_varlink_str(swig_varlinkobject *v) {
4428 PyObject *str = PyString_FromString("(");
4429 swig_globalvar *var;
4430 for (var = v->vars; var; var=var->next) {
4431 PyString_ConcatAndDel(&str,PyString_FromString(var->name));
4432 if (var->next) PyString_ConcatAndDel(&str,PyString_FromString(", "));
3004cfd8 4433 }
0085ce49
RD
4434 PyString_ConcatAndDel(&str,PyString_FromString(")"));
4435 return str;
4436 }
4437
4438 SWIGINTERN int
4439 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int SWIGUNUSEDPARM(flags)) {
4440 PyObject *str = swig_varlink_str(v);
4441 fprintf(fp,"Swig global variables ");
4442 fprintf(fp,"%s\n", PyString_AsString(str));
4443 Py_DECREF(str);
4444 return 0;
4445 }
4446
4447 SWIGINTERN void
4448 swig_varlink_dealloc(swig_varlinkobject *v) {
4449 swig_globalvar *var = v->vars;
4450 while (var) {
4451 swig_globalvar *n = var->next;
4452 free(var->name);
4453 free(var);
4454 var = n;
3004cfd8 4455 }
0085ce49
RD
4456 }
4457
4458 SWIGINTERN PyObject *
4459 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
4460 PyObject *res = NULL;
4461 swig_globalvar *var = v->vars;
4462 while (var) {
4463 if (strcmp(var->name,n) == 0) {
4464 res = (*var->get_attr)();
4465 break;
4466 }
4467 var = var->next;
3004cfd8 4468 }
0085ce49
RD
4469 if (res == NULL && !PyErr_Occurred()) {
4470 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
3004cfd8 4471 }
0085ce49
RD
4472 return res;
4473 }
4474
4475 SWIGINTERN int
4476 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
4477 int res = 1;
4478 swig_globalvar *var = v->vars;
4479 while (var) {
4480 if (strcmp(var->name,n) == 0) {
4481 res = (*var->set_attr)(p);
4482 break;
4483 }
4484 var = var->next;
4485 }
4486 if (res == 1 && !PyErr_Occurred()) {
4487 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
4488 }
4489 return res;
4490 }
4491
4492 SWIGINTERN PyTypeObject*
4493 swig_varlink_type(void) {
4494 static char varlink__doc__[] = "Swig var link object";
4495 static PyTypeObject varlink_type;
4496 static int type_init = 0;
4497 if (!type_init) {
4498 const PyTypeObject tmp
4499 = {
4500 PyObject_HEAD_INIT(NULL)
4501 0, /* Number of items in variable part (ob_size) */
4502 (char *)"swigvarlink", /* Type name (tp_name) */
4503 sizeof(swig_varlinkobject), /* Basic size (tp_basicsize) */
4504 0, /* Itemsize (tp_itemsize) */
4505 (destructor) swig_varlink_dealloc, /* Deallocator (tp_dealloc) */
4506 (printfunc) swig_varlink_print, /* Print (tp_print) */
4507 (getattrfunc) swig_varlink_getattr, /* get attr (tp_getattr) */
4508 (setattrfunc) swig_varlink_setattr, /* Set attr (tp_setattr) */
4509 0, /* tp_compare */
4510 (reprfunc) swig_varlink_repr, /* tp_repr */
4511 0, /* tp_as_number */
4512 0, /* tp_as_sequence */
4513 0, /* tp_as_mapping */
4514 0, /* tp_hash */
4515 0, /* tp_call */
4516 (reprfunc)swig_varlink_str, /* tp_str */
4517 0, /* tp_getattro */
4518 0, /* tp_setattro */
4519 0, /* tp_as_buffer */
4520 0, /* tp_flags */
4521 varlink__doc__, /* tp_doc */
4522 0, /* tp_traverse */
4523 0, /* tp_clear */
4524 0, /* tp_richcompare */
4525 0, /* tp_weaklistoffset */
3004cfd8 4526#if PY_VERSION_HEX >= 0x02020000
0085ce49 4527 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */
3004cfd8
RD
4528#endif
4529#if PY_VERSION_HEX >= 0x02030000
0085ce49 4530 0, /* tp_del */
3004cfd8
RD
4531#endif
4532#ifdef COUNT_ALLOCS
0085ce49 4533 0,0,0,0 /* tp_alloc -> tp_next */
3004cfd8 4534#endif
0085ce49
RD
4535 };
4536 varlink_type = tmp;
4537 varlink_type.ob_type = &PyType_Type;
4538 type_init = 1;
32fe5131 4539 }
0085ce49
RD
4540 return &varlink_type;
4541 }
4542
4543 /* Create a variable linking object for use later */
4544 SWIGINTERN PyObject *
4545 SWIG_Python_newvarlink(void) {
4546 swig_varlinkobject *result = PyObject_NEW(swig_varlinkobject, swig_varlink_type());
4547 if (result) {
4548 result->vars = 0;
3004cfd8 4549 }
0085ce49
RD
4550 return ((PyObject*) result);
4551 }
4552
4553 SWIGINTERN void
4554 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
4555 swig_varlinkobject *v = (swig_varlinkobject *) p;
4556 swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
4557 if (gv) {
4558 size_t size = strlen(name)+1;
4559 gv->name = (char *)malloc(size);
4560 if (gv->name) {
4561 strncpy(gv->name,name,size);
4562 gv->get_attr = get_attr;
4563 gv->set_attr = set_attr;
4564 gv->next = v->vars;
4565 }
3004cfd8 4566 }
0085ce49
RD
4567 v->vars = gv;
4568 }
4569
4570 SWIGINTERN PyObject *
4571 SWIG_globals() {
4572 static PyObject *_SWIG_globals = 0;
4573 if (!_SWIG_globals) _SWIG_globals = SWIG_newvarlink();
4574 return _SWIG_globals;
4575 }
4576
4577 /* -----------------------------------------------------------------------------
4578 * constants/methods manipulation
4579 * ----------------------------------------------------------------------------- */
4580
4581 /* Install Constants */
4582 SWIGINTERN void
4583 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
4584 PyObject *obj = 0;
4585 size_t i;
4586 for (i = 0; constants[i].type; ++i) {
4587 switch(constants[i].type) {
4588 case SWIG_PY_POINTER:
4589 obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0);
4590 break;
4591 case SWIG_PY_BINARY:
4592 obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
4593 break;
4594 default:
4595 obj = 0;
4596 break;
4597 }
4598 if (obj) {
4599 PyDict_SetItemString(d, constants[i].name, obj);
4600 Py_DECREF(obj);
4601 }
3004cfd8 4602 }
0085ce49
RD
4603 }
4604
4605 /* -----------------------------------------------------------------------------*/
4606 /* Fix SwigMethods to carry the callback ptrs when needed */
4607 /* -----------------------------------------------------------------------------*/
4608
4609 SWIGINTERN void
4610 SWIG_Python_FixMethods(PyMethodDef *methods,
3004cfd8
RD
4611 swig_const_info *const_table,
4612 swig_type_info **types,
4613 swig_type_info **types_initial) {
0085ce49
RD
4614 size_t i;
4615 for (i = 0; methods[i].ml_name; ++i) {
4616 char *c = methods[i].ml_doc;
4617 if (c && (c = strstr(c, "swig_ptr: "))) {
4618 int j;
4619 swig_const_info *ci = 0;
4620 char *name = c + 10;
4621 for (j = 0; const_table[j].type; ++j) {
4622 if (strncmp(const_table[j].name, name,
4623 strlen(const_table[j].name)) == 0) {
4624 ci = &(const_table[j]);
4625 break;
4626 }
4627 }
4628 if (ci) {
4629 size_t shift = (ci->ptype) - types;
4630 swig_type_info *ty = types_initial[shift];
4631 size_t ldoc = (c - methods[i].ml_doc);
4632 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
4633 char *ndoc = (char*)malloc(ldoc + lptr + 10);
4634 if (ndoc) {
4635 char *buff = ndoc;
4636 void *ptr = (ci->type == SWIG_PY_POINTER) ? ci->pvalue : 0;
4637 if (ptr) {
4638 strncpy(buff, methods[i].ml_doc, ldoc);
4639 buff += ldoc;
4640 strncpy(buff, "swig_ptr: ", 10);
4641 buff += 10;
4642 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
4643 methods[i].ml_doc = ndoc;
3004cfd8 4644 }
0085ce49 4645 }
3004cfd8 4646 }
0085ce49 4647 }
3004cfd8 4648 }
0085ce49
RD
4649 }
4650
3004cfd8
RD
4651#ifdef __cplusplus
4652}
4653#endif
4654
4655/* -----------------------------------------------------------------------------*
4656 * Partial Init method
4657 * -----------------------------------------------------------------------------*/
4658
3004cfd8
RD
4659#ifdef __cplusplus
4660extern "C"
4661#endif
32fe5131 4662SWIGEXPORT void SWIG_init(void) {
0085ce49
RD
4663 PyObject *m, *d;
4664
4665 /* Fix SwigMethods to carry the callback ptrs when needed */
4666 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial);
4667
4668 m = Py_InitModule((char *) SWIG_name, SwigMethods);
4669 d = PyModule_GetDict(m);
4670
4671 SWIG_InitializeModule(0);
4672 SWIG_InstallConstants(d,swig_const_table);
4673
4674
4675 PyDict_SetItemString(d,(char*)"cvar", SWIG_globals());
4676 SWIG_addvarlink(SWIG_globals(),(char*)"GLCanvasNameStr",GLCanvasNameStr_get, GLCanvasNameStr_set);
4677 SWIG_Python_SetConstant(d, "WX_GL_RGBA",SWIG_From_int(static_cast< int >(WX_GL_RGBA)));
4678 SWIG_Python_SetConstant(d, "WX_GL_BUFFER_SIZE",SWIG_From_int(static_cast< int >(WX_GL_BUFFER_SIZE)));
4679 SWIG_Python_SetConstant(d, "WX_GL_LEVEL",SWIG_From_int(static_cast< int >(WX_GL_LEVEL)));
4680 SWIG_Python_SetConstant(d, "WX_GL_DOUBLEBUFFER",SWIG_From_int(static_cast< int >(WX_GL_DOUBLEBUFFER)));
4681 SWIG_Python_SetConstant(d, "WX_GL_STEREO",SWIG_From_int(static_cast< int >(WX_GL_STEREO)));
4682 SWIG_Python_SetConstant(d, "WX_GL_AUX_BUFFERS",SWIG_From_int(static_cast< int >(WX_GL_AUX_BUFFERS)));
4683 SWIG_Python_SetConstant(d, "WX_GL_MIN_RED",SWIG_From_int(static_cast< int >(WX_GL_MIN_RED)));
4684 SWIG_Python_SetConstant(d, "WX_GL_MIN_GREEN",SWIG_From_int(static_cast< int >(WX_GL_MIN_GREEN)));
4685 SWIG_Python_SetConstant(d, "WX_GL_MIN_BLUE",SWIG_From_int(static_cast< int >(WX_GL_MIN_BLUE)));
4686 SWIG_Python_SetConstant(d, "WX_GL_MIN_ALPHA",SWIG_From_int(static_cast< int >(WX_GL_MIN_ALPHA)));
4687 SWIG_Python_SetConstant(d, "WX_GL_DEPTH_SIZE",SWIG_From_int(static_cast< int >(WX_GL_DEPTH_SIZE)));
4688 SWIG_Python_SetConstant(d, "WX_GL_STENCIL_SIZE",SWIG_From_int(static_cast< int >(WX_GL_STENCIL_SIZE)));
4689 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_RED",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_RED)));
4690 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_GREEN",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_GREEN)));
4691 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_BLUE",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_BLUE)));
4692 SWIG_Python_SetConstant(d, "WX_GL_MIN_ACCUM_ALPHA",SWIG_From_int(static_cast< int >(WX_GL_MIN_ACCUM_ALPHA)));
4693
4694
4695
d14a1e28
RD
4696}
4697