1 /* ---------------------------------------------------------------------------- 
   2  * This file was automatically generated by SWIG (http://www.swig.org). 
   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  * ----------------------------------------------------------------------------- */ 
  12 #define SWIG_PYTHON_DIRECTOR_NO_VTABLE 
  15 template<class T
> class SwigValueWrapper 
{ 
  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
; } 
  26     SwigValueWrapper
& operator=(const SwigValueWrapper
<T
>& rhs
); 
  30 /* ----------------------------------------------------------------------------- 
  31  *  This section contains generic SWIG labels for method/variable 
  32  *  declarations/attributes, and other compiler dependent labels. 
  33  * ----------------------------------------------------------------------------- */ 
  35 /* template workaround for compilers that cannot correctly implement the C++ standard */ 
  36 #ifndef SWIGTEMPLATEDISAMBIGUATOR 
  37 # if defined(__SUNPRO_CC) 
  38 #   if (__SUNPRO_CC <= 0x560) 
  39 #     define SWIGTEMPLATEDISAMBIGUATOR template 
  41 #     define SWIGTEMPLATEDISAMBIGUATOR  
  44 #   define SWIGTEMPLATEDISAMBIGUATOR  
  48 /* inline attribute */ 
  50 # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__)) 
  51 #   define SWIGINLINE inline 
  57 /* attribute recognised by some compilers to avoid 'unused' warnings */ 
  59 # if defined(__GNUC__) 
  60 #   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) 
  61 #     define SWIGUNUSED __attribute__ ((__unused__))  
  66 #   define SWIGUNUSED __attribute__ ((__unused__))  
  72 #ifndef SWIGUNUSEDPARM 
  74 #   define SWIGUNUSEDPARM(p) 
  76 #   define SWIGUNUSEDPARM(p) p SWIGUNUSED  
  80 /* internal SWIG method */ 
  82 # define SWIGINTERN static SWIGUNUSED 
  85 /* internal inline SWIG method */ 
  86 #ifndef SWIGINTERNINLINE 
  87 # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE 
  90 /* exporting methods */ 
  91 #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4) 
  92 #  ifndef GCC_HASCLASSVISIBILITY 
  93 #    define GCC_HASCLASSVISIBILITY 
  98 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) 
  99 #   if defined(STATIC_LINKED) 
 102 #     define SWIGEXPORT __declspec(dllexport) 
 105 #   if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY) 
 106 #     define SWIGEXPORT __attribute__ ((visibility("default"))) 
 113 /* calling conventions for Windows */ 
 115 # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) 
 116 #   define SWIGSTDCALL __stdcall 
 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 
 128 /* Python.h has to appear first */ 
 131 /* ----------------------------------------------------------------------------- 
 134  * This file contains generic CAPI SWIG runtime support for pointer 
 136  * ----------------------------------------------------------------------------- */ 
 138 /* This should only be incremented when either the layout of swig_type_info changes, 
 139    or for whatever reason, the runtime changes incompatibly */ 
 140 #define SWIG_RUNTIME_VERSION "2" 
 142 /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */ 
 143 #ifdef SWIG_TYPE_TABLE 
 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) 
 148 # define SWIG_TYPE_TABLE_NAME 
 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'. 
 156   But only do this if is strictly necessary, ie, if you have problems 
 157   with your compiler or so. 
 161 # define SWIGRUNTIME SWIGINTERN 
 164 #ifndef SWIGRUNTIMEINLINE 
 165 # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE 
 168 /*  Generic buffer size */ 
 169 #ifndef SWIG_BUFFER_SIZE 
 170 # define SWIG_BUFFER_SIZE 1024 
 173 /* Flags for pointer conversions */ 
 174 #define SWIG_POINTER_DISOWN        0x1 
 176 /* Flags for new pointer objects */ 
 177 #define SWIG_POINTER_OWN           0x1 
 181    Flags/methods for returning states. 
 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). 
 187    Use the following macros/flags to set or process the returning 
 190    In old swig versions, you usually write code as: 
 192      if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) { 
 198    Now you can be more explicit as: 
 200     int res = SWIG_ConvertPtr(obj,vptr,ty.flags); 
 201     if (SWIG_IsOK(res)) { 
 207    that seems to be the same, but now you can also do 
 210     int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags); 
 211     if (SWIG_IsOK(res)) { 
 213       if (SWIG_IsNewObj(res) { 
 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 
 227       int SWIG_ConvertPtr(obj, ptr,...) {          
 229           if (<need new object>) {                      
 230             *ptr = <ptr to new allocated object>;  
 233             *ptr = <ptr to old object>;         
 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 
 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 
 253       food(1)   // cast rank '1'  (1 -> 1.0) 
 254       fooi(1)   // cast rank '0' 
 256    just use the SWIG_AddCast()/SWIG_CheckState() 
 261 #define SWIG_ERROR                 (-1) 
 262 #define SWIG_IsOK(r)               (r >= 0) 
 263 #define SWIG_ArgError(r)           ((r != SWIG_ERROR) ? r : SWIG_TypeError)   
 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)) 
 286 #if defined(SWIG_CASTRANK_MODE) 
 287 #  ifndef SWIG_TypeRank 
 288 #    define SWIG_TypeRank             unsigned long 
 290 #  ifndef SWIG_MAXCASTRANK            /* Default cast allowed */ 
 291 #    define SWIG_MAXCASTRANK          (2) 
 293 #  define SWIG_CASTRANKMASK          ((SWIG_CASTRANKLIMIT) -1) 
 294 #  define SWIG_CastRank(r)           (r & SWIG_CASTRANKMASK) 
 295 SWIGINTERNINLINE 
int SWIG_AddCast(int r
) {  
 296   return SWIG_IsOK(r
) ? ((SWIG_CastRank(r
) < SWIG_MAXCASTRANK
) ? (r 
+ 1) : SWIG_ERROR
) : r
; 
 298 SWIGINTERNINLINE 
int SWIG_CheckState(int r
) {  
 299   return SWIG_IsOK(r
) ? SWIG_CastRank(r
) + 1 : 0;  
 301 #else /* no cast-rank mode */ 
 302 #  define SWIG_AddCast 
 303 #  define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0) 
 315 typedef void *(*swig_converter_func
)(void *); 
 316 typedef struct swig_type_info 
*(*swig_dycast_func
)(void **); 
 318 /* Structure to store inforomation on one type */ 
 319 typedef struct swig_type_info 
{ 
 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 */ 
 325   int                    owndata
;               /* flag if the structure owns the clientdata */ 
 328 /* Structure to store a type and conversion function used for casting */ 
 329 typedef 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 */ 
 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.*/ 
 339 typedef 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 */ 
 349   Compare two type names skipping the space characters, therefore 
 350   "char*" == "char *" and "Class<int>" == "Class<int >", etc. 
 352   Return 0 when the two name types are equivalent, as in 
 353   strncmp, but skipping ' '. 
 356 SWIG_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
; 
 361     if (*f1 
!= *f2
) return (*f1 
> *f2
) ? 1 : -1; 
 363   return (l1 
- f1
) - (l2 
- f2
); 
 367   Check type equivalence in a name list like <name1>|<name2>|... 
 368   Return 0 if not equal, 1 if equal 
 371 SWIG_TypeEquiv(const char *nb
, const char *tb
) { 
 373   const char* te 
= tb 
+ strlen(tb
); 
 375   while (!equiv 
&& *ne
) { 
 376     for (nb 
= ne
; *ne
; ++ne
) { 
 377       if (*ne 
== '|') break; 
 379     equiv 
= (SWIG_TypeNameComp(nb
, ne
, tb
, te
) == 0) ? 1 : 0; 
 386   Check type equivalence in a name list like <name1>|<name2>|... 
 387   Return 0 if equal, -1 if nb < tb, 1 if nb > tb 
 390 SWIG_TypeCompare(const char *nb
, const char *tb
) { 
 392   const char* te 
= tb 
+ strlen(tb
); 
 394   while (!equiv 
&& *ne
) { 
 395     for (nb 
= ne
; *ne
; ++ne
) { 
 396       if (*ne 
== '|') break; 
 398     equiv 
= (SWIG_TypeNameComp(nb
, ne
, tb
, te
) == 0) ? 1 : 0; 
 405 /* think of this as a c++ template<> or a scheme macro */ 
 406 #define SWIG_TypeCheck_Template(comparison, ty)         \ 
 408     swig_cast_info *iter = ty->cast;                    \ 
 411         if (iter == ty->cast) return iter;              \ 
 412         /* Move iter to the top of the linked list */   \ 
 413         iter->prev->next = iter->next;                  \ 
 415           iter->next->prev = iter->prev;                \ 
 416         iter->next = ty->cast;                          \ 
 418         if (ty->cast) ty->cast->prev = iter;            \ 
 430 SWIGRUNTIME swig_cast_info 
* 
 431 SWIG_TypeCheck(const char *c
, swig_type_info 
*ty
) { 
 432   SWIG_TypeCheck_Template(strcmp(iter
->type
->name
, c
) == 0, ty
); 
 435 /* Same as previous function, except strcmp is replaced with a pointer comparison */ 
 436 SWIGRUNTIME swig_cast_info 
* 
 437 SWIG_TypeCheckStruct(swig_type_info 
*from
, swig_type_info 
*into
) { 
 438   SWIG_TypeCheck_Template(iter
->type 
== from
, into
); 
 442   Cast a pointer up an inheritance hierarchy 
 444 SWIGRUNTIMEINLINE 
void * 
 445 SWIG_TypeCast(swig_cast_info 
*ty
, void *ptr
) { 
 446   return ((!ty
) || (!ty
->converter
)) ? ptr 
: (*ty
->converter
)(ptr
); 
 450    Dynamic pointer casting. Down an inheritance hierarchy 
 452 SWIGRUNTIME swig_type_info 
* 
 453 SWIG_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
); 
 464   Return the name associated with this type 
 466 SWIGRUNTIMEINLINE 
const char * 
 467 SWIG_TypeName(const swig_type_info 
*ty
) { 
 472   Return the pretty name associated with this type, 
 473   that is an unmangled type name in a form presentable to the user. 
 475 SWIGRUNTIME 
const char * 
 476 SWIG_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 
 481   if (!type
) return NULL
; 
 482   if (type
->str 
!= NULL
) { 
 483     const char *last_name 
= type
->str
; 
 485     for (s 
= type
->str
; *s
; s
++) 
 486       if (*s 
== '|') last_name 
= s
+1; 
 494    Set the clientdata field for a type 
 497 SWIG_TypeClientData(swig_type_info 
*ti
, void *clientdata
) { 
 498   swig_cast_info 
*cast 
= ti
->cast
; 
 499   /* if (ti->clientdata == clientdata) return; */ 
 500   ti
->clientdata 
= clientdata
; 
 503     if (!cast
->converter
) { 
 504       swig_type_info 
*tc 
= cast
->type
; 
 505       if (!tc
->clientdata
) { 
 506         SWIG_TypeClientData(tc
, clientdata
); 
 513 SWIG_TypeNewClientData(swig_type_info 
*ti
, void *clientdata
) { 
 514   SWIG_TypeClientData(ti
, clientdata
); 
 519   Search for a swig_type_info structure only by mangled name 
 520   Search is a O(log #types) 
 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 
 526 SWIGRUNTIME swig_type_info 
* 
 527 SWIG_MangledTypeQueryModule(swig_module_info 
*start
,  
 528                             swig_module_info 
*end
,  
 530   swig_module_info 
*iter 
= start
; 
 533       register size_t l 
= 0; 
 534       register size_t r 
= iter
->size 
- 1; 
 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
; 
 540           register int compare 
= strcmp(name
, iname
); 
 542             return iter
->types
[i
]; 
 543           } else if (compare 
< 0) { 
 549           } else if (compare 
> 0) { 
 553           break; /* should never happen */ 
 558   } while (iter 
!= end
); 
 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). 
 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 
 571 SWIGRUNTIME swig_type_info 
* 
 572 SWIG_TypeQueryModule(swig_module_info 
*start
,  
 573                      swig_module_info 
*end
,  
 575   /* STEP 1: Search the name field using binary search */ 
 576   swig_type_info 
*ret 
= SWIG_MangledTypeQueryModule(start
, end
, name
); 
 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
; 
 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
]; 
 590     } while (iter 
!= end
); 
 593   /* neither found a match */ 
 598    Pack binary data into a string 
 601 SWIG_PackData(char *c
, void *ptr
, size_t sz
) { 
 602   static const char hex
[17] = "0123456789abcdef"; 
 603   register const unsigned char *u 
= (unsigned char *) ptr
; 
 604   register const unsigned char *eu 
=  u 
+ sz
; 
 605   for (; u 
!= eu
; ++u
) { 
 606     register unsigned char uu 
= *u
; 
 607     *(c
++) = hex
[(uu 
& 0xf0) >> 4]; 
 608     *(c
++) = hex
[uu 
& 0xf]; 
 614    Unpack binary data from a string 
 616 SWIGRUNTIME 
const char * 
 617 SWIG_UnpackData(const char *c
, void *ptr
, size_t sz
) { 
 618   register unsigned char *u 
= (unsigned char *) ptr
; 
 619   register const unsigned char *eu 
= u 
+ sz
; 
 620   for (; u 
!= eu
; ++u
) { 
 621     register char d 
= *(c
++); 
 622     register unsigned char uu
; 
 623     if ((d 
>= '0') && (d 
<= '9')) 
 624       uu 
= ((d 
- '0') << 4); 
 625     else if ((d 
>= 'a') && (d 
<= 'f')) 
 626       uu 
= ((d 
- ('a'-10)) << 4); 
 630     if ((d 
>= '0') && (d 
<= '9')) 
 632     else if ((d 
>= 'a') && (d 
<= 'f')) 
 633       uu 
|= (d 
- ('a'-10)); 
 642    Pack 'void *' into a string buffer. 
 645 SWIG_PackVoidPtr(char *buff
, void *ptr
, const char *name
, size_t bsz
) { 
 647   if ((2*sizeof(void *) + 2) > bsz
) return 0; 
 649   r 
= SWIG_PackData(r
,&ptr
,sizeof(void *)); 
 650   if (strlen(name
) + 1 > (bsz 
- (r 
- buff
))) return 0; 
 655 SWIGRUNTIME 
const char * 
 656 SWIG_UnpackVoidPtr(const char *c
, void **ptr
, const char *name
) { 
 658     if (strcmp(c
,"NULL") == 0) { 
 665   return SWIG_UnpackData(++c
,ptr
,sizeof(void *)); 
 669 SWIG_PackDataName(char *buff
, void *ptr
, size_t sz
, const char *name
, size_t bsz
) { 
 671   size_t lname 
= (name 
? strlen(name
) : 0); 
 672   if ((2*sz 
+ 2 + lname
) > bsz
) return 0; 
 674   r 
= SWIG_PackData(r
,ptr
,sz
); 
 676     strncpy(r
,name
,lname
+1); 
 683 SWIGRUNTIME 
const char * 
 684 SWIG_UnpackDataName(const char *c
, void *ptr
, size_t sz
, const char *name
) { 
 686     if (strcmp(c
,"NULL") == 0) { 
 693   return SWIG_UnpackData(++c
,ptr
,sz
); 
 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 
 717 /* Python.h has to appear first */ 
 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 
 725 #  define PyOS_snprintf snprintf 
 729 /* A crude PyString_FromFormat implementation for old Pythons */ 
 730 #if PY_VERSION_HEX < 0x02020000 
 732 #ifndef SWIG_PYBUFFER_SIZE 
 733 # define SWIG_PYBUFFER_SIZE 1024 
 737 PyString_FromFormat(const char *fmt
, ...) { 
 739   char buf
[SWIG_PYBUFFER_SIZE 
* 2]; 
 742   res 
= vsnprintf(buf
, sizeof(buf
), fmt
, ap
); 
 744   return (res 
< 0 || res 
>= (int)sizeof(buf
)) ? 0 : PyString_FromString(buf
); 
 748 /* Add PyObject_Del for old Pythons */ 
 749 #if PY_VERSION_HEX < 0x01060000 
 750 # define PyObject_Del(op) PyMem_DEL((op)) 
 753 # define PyObject_DEL PyObject_Del 
 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 
 761 # ifndef PyObject_GenericGetAttr 
 762 #  define PyObject_GenericGetAttr 0 
 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 
 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;} 
 780 /* PySequence_Size for old Pythons */ 
 781 #if PY_VERSION_HEX < 0x02000000 
 782 # ifndef PySequence_Size 
 783 #  define PySequence_Size PySequence_Length 
 788 /* PyBool_FromLong for old Pythons */ 
 789 #if PY_VERSION_HEX < 0x02030000 
 791 PyObject 
*PyBool_FromLong(long ok
) 
 793   PyObject 
*result 
= ok 
? Py_True 
: Py_False
; 
 800 /* ----------------------------------------------------------------------------- 
 802  * ----------------------------------------------------------------------------- */ 
 804 SWIGRUNTIME PyObject
* 
 805 SWIG_Python_ErrorType(int code
) { 
 808   case SWIG_MemoryError
: 
 809     type 
= PyExc_MemoryError
; 
 812     type 
= PyExc_IOError
; 
 814   case SWIG_RuntimeError
: 
 815     type 
= PyExc_RuntimeError
; 
 817   case SWIG_IndexError
: 
 818     type 
= PyExc_IndexError
; 
 821     type 
= PyExc_TypeError
; 
 823   case SWIG_DivisionByZero
: 
 824     type 
= PyExc_ZeroDivisionError
; 
 826   case SWIG_OverflowError
: 
 827     type 
= PyExc_OverflowError
; 
 829   case SWIG_SyntaxError
: 
 830     type 
= PyExc_SyntaxError
; 
 832   case SWIG_ValueError
: 
 833     type 
= PyExc_ValueError
; 
 835   case SWIG_SystemError
: 
 836     type 
= PyExc_SystemError
; 
 838   case SWIG_AttributeError
: 
 839     type 
= PyExc_AttributeError
; 
 842     type 
= PyExc_RuntimeError
; 
 849 SWIG_Python_AddErrorMsg(const char* mesg
) 
 853   PyObject 
*traceback 
= 0; 
 855   if (PyErr_Occurred()) PyErr_Fetch(&type
, &value
, &traceback
); 
 857     PyObject 
*old_str 
= PyObject_Str(value
); 
 860     PyErr_Format(type
, "%s %s", PyString_AsString(old_str
), mesg
); 
 864     PyErr_Format(PyExc_RuntimeError
, mesg
); 
 870 #if defined(SWIG_PYTHON_NO_THREADS) 
 871 #  if defined(SWIG_PYTHON_THREADS) 
 872 #    undef SWIG_PYTHON_THREADS 
 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 
 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()  
 885 #    ifdef __cplusplus /* C++ code */ 
 886        class SWIG_Python_Thread_Block 
{ 
 888          PyGILState_STATE state
; 
 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(); } 
 894        class SWIG_Python_Thread_Allow 
{ 
 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(); } 
 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() 
 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) 
 912 #  else /* Old thread way, not implemented, user must provide it */ 
 913 #    if !defined(SWIG_PYTHON_INITIALIZE_THREADS) 
 914 #      define SWIG_PYTHON_INITIALIZE_THREADS 
 916 #    if !defined(SWIG_PYTHON_THREAD_BEGIN_BLOCK) 
 917 #      define SWIG_PYTHON_THREAD_BEGIN_BLOCK 
 919 #    if !defined(SWIG_PYTHON_THREAD_END_BLOCK) 
 920 #      define SWIG_PYTHON_THREAD_END_BLOCK 
 922 #    if !defined(SWIG_PYTHON_THREAD_BEGIN_ALLOW) 
 923 #      define SWIG_PYTHON_THREAD_BEGIN_ALLOW 
 925 #    if !defined(SWIG_PYTHON_THREAD_END_ALLOW) 
 926 #      define SWIG_PYTHON_THREAD_END_ALLOW 
 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 
 937 /* ----------------------------------------------------------------------------- 
 938  * Python API portion that goes into the runtime 
 939  * ----------------------------------------------------------------------------- */ 
 948 /* ----------------------------------------------------------------------------- 
 949  * Constant declarations 
 950  * ----------------------------------------------------------------------------- */ 
 953 #define SWIG_PY_POINTER 4 
 954 #define SWIG_PY_BINARY  5 
 956 /* Constant information structure */ 
 957 typedef struct swig_const_info 
{ 
 963   swig_type_info 
**ptype
; 
 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. 
 980  * This file contains the runtime support for Python modules 
 981  * and includes code for managing global variables and pointer 
 984  * ----------------------------------------------------------------------------- */ 
 986 /* Common SWIG API */ 
 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 
 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) 
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) 
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) 
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) 
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) 
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                                           
1027 /* Runtime API implementation */ 
1029 /* Error manipulation */ 
1032 SWIG_Python_SetErrorObj(PyObject 
*errtype
, PyObject 
*obj
) { 
1033   SWIG_PYTHON_THREAD_BEGIN_BLOCK
;  
1034   PyErr_SetObject(errtype
, obj
); 
1036   SWIG_PYTHON_THREAD_END_BLOCK
; 
1040 SWIG_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
; 
1046 #define SWIG_Python_Raise(obj, type, desc)  SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj) 
1048 /* Set a constant value */ 
1051 SWIG_Python_SetConstant(PyObject 
*d
, const char *name
, PyObject 
*obj
) {    
1052   PyDict_SetItemString(d
, (char*) name
, obj
); 
1056 /* Append a value to the result obj */ 
1058 SWIGINTERN PyObject
* 
1059 SWIG_Python_AppendOutput(PyObject
* result
, PyObject
* obj
) { 
1060 #if !defined(SWIG_PYTHON_OUTPUT_TUPLE) 
1063   } else if (result 
== Py_None
) { 
1067     if (!PyList_Check(result
)) { 
1068       PyObject 
*o2 
= result
; 
1069       result 
= PyList_New(1); 
1070       PyList_SetItem(result
, 0, o2
); 
1072     PyList_Append(result
,obj
); 
1081   } else if (result 
== Py_None
) { 
1085     if (!PyTuple_Check(result
)) { 
1087       result 
= PyTuple_New(1); 
1088       PyTuple_SET_ITEM(result
, 0, o2
); 
1090     o3 
= PyTuple_New(1); 
1091     PyTuple_SET_ITEM(o3
, 0, obj
); 
1093     result 
= PySequence_Concat(o2
, o3
); 
1101 /* Unpack the argument tuple */ 
1104 SWIG_Python_UnpackTuple(PyObject 
*args
, const char *name
, int min
, int max
, PyObject 
**objs
) 
1110       PyErr_Format(PyExc_TypeError
, "%s expected %s%d arguments, got none",  
1111                    name
, (min 
== max 
? "" : "at least "), min
); 
1115   if (!PyTuple_Check(args
)) { 
1116     PyErr_SetString(PyExc_SystemError
, "UnpackTuple() argument list is not a tuple"); 
1119     register int l 
= PyTuple_GET_SIZE(args
); 
1121       PyErr_Format(PyExc_TypeError
, "%s expected %s%d arguments, got %d",  
1122                    name
, (min 
== max 
? "" : "at least "), min
, l
); 
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
); 
1130       for (i 
= 0; i 
< l
; ++i
) { 
1131         objs
[i
] = PyTuple_GET_ITEM(args
, i
); 
1133       for (; l 
< max
; ++l
) { 
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); 
1145 #define SWIG_Python_CallFunctor(functor, obj)           PyObject_CallFunction(functor, "O", obj); 
1149   Helper for static pointer initialization for both C and C++ code, for example 
1150   static PyObject *SWIG_STATIC_POINTER(MyVar) = NewSomething(...); 
1153 #define SWIG_STATIC_POINTER(var)  var 
1155 #define SWIG_STATIC_POINTER(var)  var = 0; if (!var) var 
1158 /* ----------------------------------------------------------------------------- 
1159  * Pointer declarations 
1160  * ----------------------------------------------------------------------------- */ 
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) 
1166 #define SWIG_POINTER_IMPLICIT_CONV  (SWIG_POINTER_DISOWN   << 1) 
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 
1184 #ifdef SWIG_PYTHON_BUILD_NONE 
1187 #   define Py_None SWIG_Py_None() 
1189 SWIGRUNTIMEINLINE PyObject 
*  
1192   PyObject 
*none 
= Py_BuildValue(""); 
1196 SWIGRUNTIME PyObject 
*  
1199   static PyObject 
*SWIG_STATIC_POINTER(none
) = _SWIG_Py_None(); 
1204 /* The python void return value */ 
1206 SWIGRUNTIMEINLINE PyObject 
*  
1209   PyObject 
*none 
= Py_None
; 
1214 /* PySwigClientData */ 
1225 SWIGRUNTIMEINLINE 
int  
1226 SWIG_Python_CheckImplicit(swig_type_info 
*ty
) 
1228   PySwigClientData 
*data 
= (PySwigClientData 
*)ty
->clientdata
; 
1229   return data 
? data
->implicitconv 
: 0; 
1232 SWIGRUNTIMEINLINE PyObject 
* 
1233 SWIG_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
); 
1240 SWIGRUNTIME PySwigClientData 
*  
1241 PySwigClientData_New(PyObject
* obj
) 
1246     PySwigClientData 
*data 
= (PySwigClientData 
*)malloc(sizeof(PySwigClientData
)); 
1247     /* the klass element */ 
1249     Py_INCREF(data
->klass
); 
1250     /* the newraw method and newargs arguments used to create a new raw instance */ 
1251     if (PyClass_Check(obj
)) { 
1253       data
->newargs 
= obj
; 
1256 #if (PY_VERSION_HEX < 0x02020000) 
1259       data
->newraw 
= PyObject_GetAttrString(data
->klass
, (char *)"__new__"); 
1262         Py_INCREF(data
->newraw
); 
1263         data
->newargs 
= PyTuple_New(1); 
1264         PyTuple_SetItem(data
->newargs
, 0, obj
); 
1266         data
->newargs 
= obj
; 
1268       Py_INCREF(data
->newargs
); 
1270     /* the destroy method, aka as the C++ delete method */ 
1271     data
->destroy 
= PyObject_GetAttrString(data
->klass
, (char *)"__swig_destroy__"); 
1272     if (PyErr_Occurred()) { 
1276     if (data
->destroy
) { 
1278       Py_INCREF(data
->destroy
); 
1279       flags 
= PyCFunction_GET_FLAGS(data
->destroy
); 
1281       data
->delargs 
= !(flags 
& (METH_O
)); 
1288     data
->implicitconv 
= 0; 
1294 PySwigClientData_Del(PySwigClientData
* data
) 
1296   Py_XDECREF(data
->newraw
); 
1297   Py_XDECREF(data
->newargs
); 
1298   Py_XDECREF(data
->destroy
); 
1301 /* =============== PySwigObject =====================*/ 
1311 SWIGRUNTIME PyObject 
* 
1312 PySwigObject_long(PySwigObject 
*v
) 
1314   return PyLong_FromVoidPtr(v
->ptr
); 
1317 SWIGRUNTIME PyObject 
* 
1318 PySwigObject_format(const char* fmt
, PySwigObject 
*v
) 
1320   PyObject 
*res 
= NULL
; 
1321   PyObject 
*args 
= PyTuple_New(1); 
1323     if (PyTuple_SetItem(args
, 0, PySwigObject_long(v
)) == 0) { 
1324       PyObject 
*ofmt 
= PyString_FromString(fmt
); 
1326         res 
= PyString_Format(ofmt
,args
); 
1335 SWIGRUNTIME PyObject 
* 
1336 PySwigObject_oct(PySwigObject 
*v
) 
1338   return PySwigObject_format("%o",v
); 
1341 SWIGRUNTIME PyObject 
* 
1342 PySwigObject_hex(PySwigObject 
*v
) 
1344   return PySwigObject_format("%x",v
); 
1347 SWIGRUNTIME PyObject 
* 
1349 PySwigObject_repr(PySwigObject 
*v
) 
1351 PySwigObject_repr(PySwigObject 
*v
, PyObject 
*args
) 
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
)); 
1360     PyObject 
*nrep 
= PySwigObject_repr((PySwigObject 
*)v
->next
); 
1362     PyObject 
*nrep 
= PySwigObject_repr((PySwigObject 
*)v
->next
, args
); 
1364     PyString_ConcatAndDel(&repr
,nrep
); 
1370 PySwigObject_print(PySwigObject 
*v
, FILE *fp
, int SWIGUNUSEDPARM(flags
)) 
1373   PyObject 
*repr 
= PySwigObject_repr(v
); 
1375   PyObject 
*repr 
= PySwigObject_repr(v
, NULL
); 
1378     fputs(PyString_AsString(repr
), fp
); 
1386 SWIGRUNTIME PyObject 
* 
1387 PySwigObject_str(PySwigObject 
*v
) 
1389   char result
[SWIG_BUFFER_SIZE
]; 
1390   return SWIG_PackVoidPtr(result
, v
->ptr
, v
->ty
->name
, sizeof(result
)) ? 
1391     PyString_FromString(result
) : 0; 
1395 PySwigObject_compare(PySwigObject 
*v
, PySwigObject 
*w
) 
1399   return (i 
< j
) ? -1 : ((i 
> j
) ? 1 : 0); 
1402 SWIGRUNTIME PyTypeObject
* _PySwigObject_type(void); 
1404 SWIGRUNTIME PyTypeObject
* 
1405 PySwigObject_type(void) { 
1406   static PyTypeObject 
*SWIG_STATIC_POINTER(type
) = _PySwigObject_type(); 
1410 SWIGRUNTIMEINLINE 
int 
1411 PySwigObject_Check(PyObject 
*op
) { 
1412   return ((op
)->ob_type 
== PySwigObject_type()) 
1413     || (strcmp((op
)->ob_type
->tp_name
,"PySwigObject") == 0); 
1416 SWIGRUNTIME PyObject 
* 
1417 PySwigObject_New(void *ptr
, swig_type_info 
*ty
, int own
); 
1420 PySwigObject_dealloc(PyObject 
*v
) 
1422   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1423   PyObject 
*next 
= sobj
->next
; 
1425     swig_type_info 
*ty 
= sobj
->ty
; 
1426     PySwigClientData 
*data 
= ty 
? (PySwigClientData 
*) ty
->clientdata 
: 0; 
1427     PyObject 
*destroy 
= data 
? data
->destroy 
: 0; 
1429       /* destroy is always a VARARGS method */ 
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
); 
1437         PyCFunction meth 
= PyCFunction_GET_FUNCTION(destroy
); 
1438         PyObject 
*mself 
= PyCFunction_GET_SELF(destroy
); 
1439         res 
= ((*meth
)(mself
, v
)); 
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
); 
1453 SWIGRUNTIME PyObject
*  
1454 PySwigObject_append(PyObject
* v
, PyObject
* next
) 
1456   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1459   if (!PyArg_ParseTuple(next
,(char *)"O:append", &tmp
)) return NULL
; 
1462   if (!PySwigObject_Check(next
)) { 
1467   return SWIG_Py_Void(); 
1470 SWIGRUNTIME PyObject
*  
1472 PySwigObject_next(PyObject
* v
) 
1474 PySwigObject_next(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1477   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1479     Py_INCREF(sobj
->next
); 
1482     return SWIG_Py_Void(); 
1486 SWIGINTERN PyObject
* 
1488 PySwigObject_disown(PyObject 
*v
) 
1490 PySwigObject_disown(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1493   PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1495   return SWIG_Py_Void(); 
1498 SWIGINTERN PyObject
* 
1500 PySwigObject_acquire(PyObject 
*v
) 
1502 PySwigObject_acquire(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1505   PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1506   sobj
->own 
= SWIG_POINTER_OWN
; 
1507   return SWIG_Py_Void(); 
1510 SWIGINTERN PyObject
* 
1511 PySwigObject_own(PyObject 
*v
, PyObject 
*args
) 
1514 #if (PY_VERSION_HEX < 0x02020000) 
1515   if (!PyArg_ParseTuple(args
,(char *)"|O:own",&val
)) 
1517   if (!PyArg_UnpackTuple(args
, (char *)"own", 0, 1, &val
))  
1524       PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1525       PyObject 
*obj 
= PyBool_FromLong(sobj
->own
); 
1528         if (PyObject_IsTrue(val
)) { 
1529           PySwigObject_acquire(v
); 
1531           PySwigObject_disown(v
); 
1534         if (PyObject_IsTrue(val
)) { 
1535           PySwigObject_acquire(v
,args
); 
1537           PySwigObject_disown(v
,args
); 
1547 swigobject_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"}, 
1558 swigobject_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"}, 
1569 #if PY_VERSION_HEX < 0x02020000 
1570 SWIGINTERN PyObject 
* 
1571 PySwigObject_getattr(PySwigObject 
*sobj
,char *name
) 
1573   return Py_FindMethod(swigobject_methods
, (PyObject 
*)sobj
, name
); 
1577 SWIGRUNTIME PyTypeObject
* 
1578 _PySwigObject_type(void) { 
1579   static char swigobject_doc
[] = "Swig object carries a C/C++ instance pointer"; 
1581   static PyNumberMethods PySwigObject_as_number 
= { 
1582     (binaryfunc
)0, /*nb_add*/ 
1583     (binaryfunc
)0, /*nb_subtract*/ 
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*/ 
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*/ 
1605 #if PY_VERSION_HEX >= 0x02020000 
1606     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */  
1607 #elif PY_VERSION_HEX >= 0x02000000 
1608     0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */ 
1612   static PyTypeObject pyswigobject_type
;   
1613   static int type_init 
= 0; 
1615     const PyTypeObject tmp
 
1617         PyObject_HEAD_INIT(NULL
) 
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 */  
1627         (getattrfunc
)0,                     /* tp_getattr */  
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 */ 
1645         0,                                  /* tp_richcompare */ 
1646         0,                                  /* tp_weaklistoffset */ 
1647 #if PY_VERSION_HEX >= 0x02020000 
1649         0,                                  /* tp_iternext */ 
1650         swigobject_methods
,                 /* tp_methods */  
1655         0,                                  /* tp_descr_get */           
1656         0,                                  /* tp_descr_set */           
1657         0,                                  /* tp_dictoffset */          
1666         0,                                  /* tp_subclasses */ 
1667         0,                                  /* tp_weaklist */ 
1669 #if PY_VERSION_HEX >= 0x02030000 
1673         0,0,0,0                             /* tp_alloc -> tp_next */ 
1676     pyswigobject_type 
= tmp
; 
1677     pyswigobject_type
.ob_type 
= &PyType_Type
; 
1680   return &pyswigobject_type
; 
1683 SWIGRUNTIME PyObject 
* 
1684 PySwigObject_New(void *ptr
, swig_type_info 
*ty
, int own
) 
1686   PySwigObject 
*sobj 
= PyObject_NEW(PySwigObject
, PySwigObject_type()); 
1693   return (PyObject 
*)sobj
; 
1696 /* ----------------------------------------------------------------------------- 
1697  * Implements a simple Swig Packed type, and use it instead of string 
1698  * ----------------------------------------------------------------------------- */ 
1708 PySwigPacked_print(PySwigPacked 
*v
, FILE *fp
, int SWIGUNUSEDPARM(flags
)) 
1710   char result
[SWIG_BUFFER_SIZE
]; 
1711   fputs("<Swig Packed ", fp
);  
1712   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))) { 
1716   fputs(v
->ty
->name
,fp
);  
1721 SWIGRUNTIME PyObject 
* 
1722 PySwigPacked_repr(PySwigPacked 
*v
) 
1724   char result
[SWIG_BUFFER_SIZE
]; 
1725   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))) { 
1726     return PyString_FromFormat("<Swig Packed at %s%s>", result
, v
->ty
->name
); 
1728     return PyString_FromFormat("<Swig Packed %s>", v
->ty
->name
); 
1732 SWIGRUNTIME PyObject 
* 
1733 PySwigPacked_str(PySwigPacked 
*v
) 
1735   char result
[SWIG_BUFFER_SIZE
]; 
1736   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))){ 
1737     return PyString_FromFormat("%s%s", result
, v
->ty
->name
); 
1739     return PyString_FromString(v
->ty
->name
); 
1744 PySwigPacked_compare(PySwigPacked 
*v
, PySwigPacked 
*w
) 
1748   int s 
= (i 
< j
) ? -1 : ((i 
> j
) ? 1 : 0); 
1749   return s 
? s 
: strncmp((char *)v
->pack
, (char *)w
->pack
, 2*v
->size
); 
1752 SWIGRUNTIME PyTypeObject
* _PySwigPacked_type(void); 
1754 SWIGRUNTIME PyTypeObject
* 
1755 PySwigPacked_type(void) { 
1756   static PyTypeObject 
*SWIG_STATIC_POINTER(type
) = _PySwigPacked_type(); 
1760 SWIGRUNTIMEINLINE 
int 
1761 PySwigPacked_Check(PyObject 
*op
) { 
1762   return ((op
)->ob_type 
== _PySwigPacked_type())  
1763     || (strcmp((op
)->ob_type
->tp_name
,"PySwigPacked") == 0); 
1767 PySwigPacked_dealloc(PyObject 
*v
) 
1769   if (PySwigPacked_Check(v
)) { 
1770     PySwigPacked 
*sobj 
= (PySwigPacked 
*) v
; 
1776 SWIGRUNTIME PyTypeObject
* 
1777 _PySwigPacked_type(void) { 
1778   static char swigpacked_doc
[] = "Swig object carries a C/C++ instance pointer"; 
1779   static PyTypeObject pyswigpacked_type
; 
1780   static int type_init 
= 0;   
1782     const PyTypeObject tmp
 
1784         PyObject_HEAD_INIT(NULL
) 
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 */ 
1808         0,                                  /* tp_richcompare */ 
1809         0,                                  /* tp_weaklistoffset */ 
1810 #if PY_VERSION_HEX >= 0x02020000 
1812         0,                                  /* tp_iternext */ 
1818         0,                                  /* tp_descr_get */           
1819         0,                                  /* tp_descr_set */           
1820         0,                                  /* tp_dictoffset */          
1829         0,                                  /* tp_subclasses */ 
1830         0,                                  /* tp_weaklist */ 
1832 #if PY_VERSION_HEX >= 0x02030000 
1836         0,0,0,0                             /* tp_alloc -> tp_next */ 
1839     pyswigpacked_type 
= tmp
; 
1840     pyswigpacked_type
.ob_type 
= &PyType_Type
; 
1843   return &pyswigpacked_type
; 
1846 SWIGRUNTIME PyObject 
* 
1847 PySwigPacked_New(void *ptr
, size_t size
, swig_type_info 
*ty
) 
1849   PySwigPacked 
*sobj 
= PyObject_NEW(PySwigPacked
, PySwigPacked_type()); 
1851     void *pack 
= malloc(size
); 
1853       memcpy(pack
, ptr
, size
); 
1858       PyObject_DEL((PyObject 
*) sobj
); 
1862   return (PyObject 
*) sobj
; 
1865 SWIGRUNTIME swig_type_info 
* 
1866 PySwigPacked_UnpackData(PyObject 
*obj
, void *ptr
, size_t size
) 
1868   if (PySwigPacked_Check(obj
)) { 
1869     PySwigPacked 
*sobj 
= (PySwigPacked 
*)obj
; 
1870     if (sobj
->size 
!= size
) return 0; 
1871     memcpy(ptr
, sobj
->pack
, size
); 
1878 /* ----------------------------------------------------------------------------- 
1879  * pointers/data manipulation 
1880  * ----------------------------------------------------------------------------- */ 
1882 SWIGRUNTIMEINLINE PyObject 
* 
1885   return PyString_FromString("this"); 
1888 SWIGRUNTIME PyObject 
* 
1891   static PyObject 
*SWIG_STATIC_POINTER(swig_this
) = _SWIG_This(); 
1895 /* #define SWIG_PYTHON_SLOW_GETSET_THIS */ 
1897 SWIGRUNTIME PySwigObject 
* 
1898 SWIG_Python_GetSwigThis(PyObject 
*pyobj
)  
1900   if (PySwigObject_Check(pyobj
)) { 
1901     return (PySwigObject 
*) pyobj
; 
1904 #if (!defined(SWIG_PYTHON_SLOW_GETSET_THIS) && (PY_VERSION_HEX >= 0x02030000)) 
1905     if (PyInstance_Check(pyobj
)) { 
1906       obj 
= _PyInstance_Lookup(pyobj
, SWIG_This());       
1908       PyObject 
**dictptr 
= _PyObject_GetDictPtr(pyobj
); 
1909       if (dictptr 
!= NULL
) { 
1910         PyObject 
*dict 
= *dictptr
; 
1911         obj 
= dict 
? PyDict_GetItem(dict
, SWIG_This()) : 0; 
1913 #ifdef PyWeakref_CheckProxy 
1914         if (PyWeakref_CheckProxy(pyobj
)) { 
1915           PyObject 
*wobj 
= PyWeakref_GET_OBJECT(pyobj
); 
1916           return wobj 
? SWIG_Python_GetSwigThis(wobj
) : 0; 
1919         obj 
= PyObject_GetAttr(pyobj
,SWIG_This()); 
1923           if (PyErr_Occurred()) PyErr_Clear(); 
1929     obj 
= PyObject_GetAttr(pyobj
,SWIG_This()); 
1933       if (PyErr_Occurred()) PyErr_Clear(); 
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
); 
1942     return (PySwigObject 
*)obj
; 
1946 /* Acquire a pointer value */ 
1949 SWIG_Python_AcquirePtr(PyObject 
*obj
, int own
) { 
1951     PySwigObject 
*sobj 
= SWIG_Python_GetSwigThis(obj
); 
1953       int oldown 
= sobj
->own
; 
1961 /* Convert a pointer value */ 
1964 SWIG_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
) { 
1970     PySwigObject 
*sobj 
= SWIG_Python_GetSwigThis(obj
); 
1972       void *vptr 
= sobj
->ptr
; 
1974         swig_type_info 
*to 
= sobj
->ty
; 
1976           /* no type cast needed */ 
1977           if (ptr
) *ptr 
= vptr
; 
1980           swig_cast_info 
*tc 
= SWIG_TypeCheck(to
->name
,ty
); 
1982             sobj 
= (PySwigObject 
*)sobj
->next
; 
1984             if (ptr
) *ptr 
= SWIG_TypeCast(tc
,vptr
); 
1989         if (ptr
) *ptr 
= vptr
; 
1994       if (own
) *own 
= sobj
->own
; 
1995       if (flags 
& SWIG_POINTER_DISOWN
) { 
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
; 
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()) { 
2015               PySwigObject 
*iobj 
= SWIG_Python_GetSwigThis(impconv
); 
2018                 res 
= SWIG_Python_ConvertPtrAndOwn((PyObject
*)iobj
, &vptr
, ty
, 0, 0); 
2019                 if (SWIG_IsOK(res
)) { 
2022                     /* transfer the ownership to 'ptr' */ 
2024                     res 
= SWIG_AddCast(res
); 
2025                     res 
= SWIG_AddNewMask(res
); 
2027                     res 
= SWIG_AddCast(res
);                 
2041 /* Convert a function ptr value */ 
2044 SWIG_Python_ConvertFunctionPtr(PyObject 
*obj
, void **ptr
, swig_type_info 
*ty
) { 
2045   if (!PyCFunction_Check(obj
)) { 
2046     return SWIG_ConvertPtr(obj
, ptr
, ty
, 0); 
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; 
2054       desc 
= ty 
? SWIG_UnpackVoidPtr(desc 
+ 10, &vptr
, ty
->name
) : 0; 
2055       if (!desc
) return SWIG_ERROR
; 
2058       swig_cast_info 
*tc 
= SWIG_TypeCheck(desc
,ty
); 
2059       if (!tc
) return SWIG_ERROR
; 
2060       *ptr 
= SWIG_TypeCast(tc
,vptr
); 
2068 /* Convert a packed value value */ 
2071 SWIG_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
; 
2076       /* check type cast? */ 
2077       swig_cast_info 
*tc 
= SWIG_TypeCheck(to
->name
,ty
); 
2078       if (!tc
) return SWIG_ERROR
; 
2084 /* ----------------------------------------------------------------------------- 
2085  * Create a new pointer object 
2086  * ----------------------------------------------------------------------------- */ 
2089   Create a new instance object, whitout calling __init__, and set the 
2093 SWIGRUNTIME PyObject
*  
2094 SWIG_Python_NewShadowInstance(PySwigClientData 
*data
, PyObject 
*swig_this
) 
2096 #if (PY_VERSION_HEX >= 0x02020000) 
2098   PyObject 
*newraw 
= data
->newraw
; 
2100     inst 
= PyObject_Call(newraw
, data
->newargs
, NULL
); 
2102 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS) 
2103       PyObject 
**dictptr 
= _PyObject_GetDictPtr(inst
); 
2104       if (dictptr 
!= NULL
) { 
2105         PyObject 
*dict 
= *dictptr
; 
2107           dict 
= PyDict_New(); 
2109           PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2113       PyObject 
*key 
= SWIG_This(); 
2114       PyObject_SetAttr(inst
, key
, swig_this
); 
2118     PyObject 
*dict 
= PyDict_New(); 
2119     PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2120     inst 
= PyInstance_NewRaw(data
->newargs
, dict
); 
2125 #if (PY_VERSION_HEX >= 0x02010000) 
2127   PyObject 
*dict 
= PyDict_New(); 
2128   PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2129   inst 
= PyInstance_NewRaw(data
->newargs
, dict
); 
2131   return (PyObject 
*) inst
; 
2133   PyInstanceObject 
*inst 
= PyObject_NEW(PyInstanceObject
, &PyInstance_Type
); 
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
) { 
2144 #ifdef Py_TPFLAGS_HAVE_WEAKREFS 
2145   inst
->in_weakreflist 
= NULL
; 
2147 #ifdef Py_TPFLAGS_GC 
2148   PyObject_GC_Init(inst
); 
2150   PyDict_SetItem(inst
->in_dict
, SWIG_This(), swig_this
); 
2151   return (PyObject 
*) inst
; 
2157 SWIG_Python_SetSwigThis(PyObject 
*inst
, PyObject 
*swig_this
) 
2160 #if (PY_VERSION_HEX >= 0x02020000) && !defined(SWIG_PYTHON_SLOW_GETSET_THIS) 
2161  PyObject 
**dictptr 
= _PyObject_GetDictPtr(inst
); 
2162  if (dictptr 
!= NULL
) { 
2165      dict 
= PyDict_New(); 
2168    PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2172  dict 
= PyObject_GetAttrString(inst
, "__dict__"); 
2173  PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2178 SWIGINTERN PyObject 
* 
2179 SWIG_Python_InitShadowInstance(PyObject 
*args
) { 
2181   if (!SWIG_Python_UnpackTuple(args
,(char*)"swiginit", 2, 2, obj
)) { 
2184     PySwigObject 
*sthis 
= SWIG_Python_GetSwigThis(obj
[0]); 
2186       PySwigObject_append((PyObject
*) sthis
, obj
[1]); 
2188       SWIG_Python_SetSwigThis(obj
[0], obj
[1]); 
2190     return SWIG_Py_Void(); 
2194 /* Create a new pointer object */ 
2196 SWIGRUNTIME PyObject 
* 
2197 SWIG_Python_NewPointerObj(void *ptr
, swig_type_info 
*type
, int flags
) { 
2199     return SWIG_Py_Void(); 
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
); 
2215 /* Create a new packed object */ 
2217 SWIGRUNTIMEINLINE PyObject 
* 
2218 SWIG_Python_NewPackedObj(void *ptr
, size_t sz
, swig_type_info 
*type
) { 
2219   return ptr 
? PySwigPacked_New((void *) ptr
, sz
, type
) : SWIG_Py_Void(); 
2222 /* -----------------------------------------------------------------------------* 
2224  * -----------------------------------------------------------------------------*/ 
2226 #ifdef SWIG_LINK_RUNTIME 
2227 void *SWIG_ReturnGlobalTypeList(void *); 
2230 SWIGRUNTIME swig_module_info 
* 
2231 SWIG_Python_GetModule(void) { 
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); 
2238     type_pointer 
= PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION
, 
2239                                     (char*)"type_pointer" SWIG_TYPE_TABLE_NAME
); 
2240     if (PyErr_Occurred()) { 
2242       type_pointer 
= (void *)0; 
2246   return (swig_module_info 
*) type_pointer
; 
2249 #if PY_MAJOR_VERSION < 2 
2250 /* PyModule_AddObject function was introduced in Python 2.0.  The following function 
2251    is copied out of Python/modsupport.c in python version 2.3.4 */ 
2253 PyModule_AddObject(PyObject 
*m
, char *name
, PyObject 
*o
) 
2256   if (!PyModule_Check(m
)) { 
2257     PyErr_SetString(PyExc_TypeError
, 
2258                     "PyModule_AddObject() needs module as first arg"); 
2262     PyErr_SetString(PyExc_TypeError
, 
2263                     "PyModule_AddObject() needs non-NULL value"); 
2267   dict 
= PyModule_GetDict(m
); 
2269     /* Internal error -- modules must have a dict! */ 
2270     PyErr_Format(PyExc_SystemError
, "module '%s' has no __dict__", 
2271                  PyModule_GetName(m
)); 
2274   if (PyDict_SetItemString(dict
, name
, o
)) 
2282 SWIG_Python_DestroyModule(void *vptr
) 
2284   swig_module_info 
*swig_module 
= (swig_module_info 
*) vptr
; 
2285   swig_type_info 
**types 
= swig_module
->types
; 
2287   for (i 
=0; i 
< swig_module
->size
; ++i
) { 
2288     swig_type_info 
*ty 
= types
[i
]; 
2290       PySwigClientData 
*data 
= (PySwigClientData 
*) ty
->clientdata
; 
2291       if (data
) PySwigClientData_Del(data
); 
2294   Py_DECREF(SWIG_This()); 
2298 SWIG_Python_SetModule(swig_module_info 
*swig_module
) { 
2299   static PyMethodDef swig_empty_runtime_method_table
[] = { {NULL
, NULL
, 0, NULL
} };/* Sentinel */ 
2301   PyObject 
*module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION
, 
2302                                    swig_empty_runtime_method_table
); 
2303   PyObject 
*pointer 
= PyCObject_FromVoidPtr((void *) swig_module
, SWIG_Python_DestroyModule
); 
2304   if (pointer 
&& module) { 
2305     PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME
, pointer
); 
2307     Py_XDECREF(pointer
); 
2311 /* The python cached type query */ 
2312 SWIGRUNTIME PyObject 
* 
2313 SWIG_Python_TypeCache() { 
2314   static PyObject 
*SWIG_STATIC_POINTER(cache
) = PyDict_New(); 
2318 SWIGRUNTIME swig_type_info 
* 
2319 SWIG_Python_TypeQuery(const char *type
) 
2321   PyObject 
*cache 
= SWIG_Python_TypeCache(); 
2322   PyObject 
*key 
= PyString_FromString(type
);  
2323   PyObject 
*obj 
= PyDict_GetItem(cache
, key
); 
2324   swig_type_info 
*descriptor
; 
2326     descriptor 
= (swig_type_info 
*) PyCObject_AsVoidPtr(obj
); 
2328     swig_module_info 
*swig_module 
= SWIG_Python_GetModule(); 
2329     descriptor 
= SWIG_TypeQueryModule(swig_module
, swig_module
, type
); 
2331       obj 
= PyCObject_FromVoidPtr(descriptor
, NULL
); 
2332       PyDict_SetItem(cache
, key
, obj
); 
2341    For backward compatibility only 
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) 
2348 SWIG_Python_AddErrMesg(const char* mesg
, int infront
) 
2350   if (PyErr_Occurred()) { 
2352     PyObject 
*value 
= 0; 
2353     PyObject 
*traceback 
= 0; 
2354     PyErr_Fetch(&type
, &value
, &traceback
); 
2356       PyObject 
*old_str 
= PyObject_Str(value
); 
2360         PyErr_Format(type
, "%s %s", mesg
, PyString_AsString(old_str
)); 
2362         PyErr_Format(type
, "%s %s", PyString_AsString(old_str
), mesg
); 
2373 SWIG_Python_ArgFail(int argnum
) 
2375   if (PyErr_Occurred()) { 
2376     /* add information about failing argument */ 
2378     PyOS_snprintf(mesg
, sizeof(mesg
), "argument number %d:", argnum
); 
2379     return SWIG_Python_AddErrMesg(mesg
, 1); 
2385 SWIGRUNTIMEINLINE 
const char * 
2386 PySwigObject_GetDesc(PyObject 
*self
) 
2388   PySwigObject 
*v 
= (PySwigObject 
*)self
; 
2389   swig_type_info 
*ty 
= v 
? v
->ty 
: 0; 
2390   return ty 
? ty
->str 
: (char*)""; 
2394 SWIG_Python_TypeError(const char *type
, PyObject 
*obj
) 
2397 #if defined(SWIG_COBJECT_TYPES) 
2398     if (obj 
&& PySwigObject_Check(obj
)) { 
2399       const char *otype 
= (const char *) PySwigObject_GetDesc(obj
); 
2401         PyErr_Format(PyExc_TypeError
, "a '%s' is expected, 'PySwigObject(%s)' is received", 
2408       const char *otype 
= (obj 
? obj
->ob_type
->tp_name 
: 0);  
2410         PyObject 
*str 
= PyObject_Str(obj
); 
2411         const char *cstr 
= str 
? PyString_AsString(str
) : 0; 
2413           PyErr_Format(PyExc_TypeError
, "a '%s' is expected, '%s(%s)' is received", 
2416           PyErr_Format(PyExc_TypeError
, "a '%s' is expected, '%s' is received", 
2423     PyErr_Format(PyExc_TypeError
, "a '%s' is expected", type
); 
2425     PyErr_Format(PyExc_TypeError
, "unexpected type is received"); 
2430 /* Convert a pointer value, signal an exception on a type mismatch */ 
2432 SWIG_Python_MustGetPtr(PyObject 
*obj
, swig_type_info 
*ty
, int argnum
, int flags
) { 
2434   if (SWIG_Python_ConvertPtr(obj
, &result
, ty
, flags
) == -1) { 
2436     if (flags 
& SWIG_POINTER_EXCEPTION
) { 
2437       SWIG_Python_TypeError(SWIG_TypePrettyName(ty
), obj
); 
2438       SWIG_Python_ArgFail(argnum
); 
2454 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)  
2456 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else  
2460 /* -------- TYPES TABLE (BEGIN) -------- */ 
2462 #define SWIGTYPE_p_char swig_types[0] 
2463 #define SWIGTYPE_p_form_ops_t swig_types[1] 
2464 #define SWIGTYPE_p_int swig_types[2] 
2465 #define SWIGTYPE_p_unsigned_char swig_types[3] 
2466 #define SWIGTYPE_p_unsigned_int swig_types[4] 
2467 #define SWIGTYPE_p_unsigned_long swig_types[5] 
2468 #define SWIGTYPE_p_wxANIHandler swig_types[6] 
2469 #define SWIGTYPE_p_wxAcceleratorTable swig_types[7] 
2470 #define SWIGTYPE_p_wxActivateEvent swig_types[8] 
2471 #define SWIGTYPE_p_wxBMPHandler swig_types[9] 
2472 #define SWIGTYPE_p_wxBoxSizer swig_types[10] 
2473 #define SWIGTYPE_p_wxCURHandler swig_types[11] 
2474 #define SWIGTYPE_p_wxChildFocusEvent swig_types[12] 
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] 
2550 static swig_type_info 
*swig_types
[89]; 
2551 static swig_module_info swig_module 
= {swig_types
, 88, 0, 0, 0, 0}; 
2552 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) 
2553 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) 
2555 /* -------- TYPES TABLE (END) -------- */ 
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" 
2562 #if (PY_VERSION_HEX <= 0x02020000) 
2563 # error "This python version requires to use swig with the '-nomodern' option" 
2565 #if (PY_VERSION_HEX <= 0x02020000) 
2566 # error "This python version requires to use swig with the '-nomodernargs' option" 
2569 # error "This python version requires to use swig with the '-nofastunpack' option" 
2572 /*----------------------------------------------- 
2573               @(target):= _glcanvas.so 
2574   ------------------------------------------------*/ 
2575 #define SWIG_init    init_glcanvas 
2577 #define SWIG_name    "_glcanvas" 
2579 #define SWIGVERSION 0x010329  
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))  
2586 #include <stdexcept> 
2590   class PyObject_ptr 
{ 
2595     PyObject_ptr() :_obj(0) 
2599     PyObject_ptr(const PyObject_ptr
& item
) : _obj(item
._obj
) 
2604     PyObject_ptr(PyObject 
*obj
, bool initial_ref 
= true) :_obj(obj
) 
2606       if (initial_ref
) Py_XINCREF(_obj
); 
2609     PyObject_ptr 
& operator=(const PyObject_ptr
& item
)  
2611       Py_XINCREF(item
._obj
); 
2622     operator PyObject 
*() const 
2627     PyObject 
*operator->() const 
2636   struct PyObject_var 
: PyObject_ptr 
{ 
2637     PyObject_var(PyObject
* obj 
= 0) : PyObject_ptr(obj
, false) { } 
2639     PyObject_var 
& operator = (PyObject
* obj
) 
2649 #include "wx/wxPython/wxPython.h" 
2650 #include "wx/wxPython/pyclasses.h" 
2652 #include <wx/glcanvas.h> 
2655  static const wxString 
wxPyGLCanvasNameStr(wxT("GLCanvas"));  
2656  static const wxString 
wxPyEmptyString(wxEmptyString
);  
2659 SWIG_AsVal_long (PyObject
* obj
, long* val
) 
2661     if (PyNumber_Check(obj
)) { 
2662         if (val
) *val 
= PyInt_AsLong(obj
); 
2665     return SWIG_TypeError
; 
2670 SWIG_AsVal_bool (PyObject 
*obj
, bool *val
) 
2672   if (obj 
== Py_True
) { 
2673     if (val
) *val 
= true; 
2675   } else if (obj 
== Py_False
) { 
2676     if (val
) *val 
= false; 
2680     int res 
= SWIG_AddCast(SWIG_AsVal_long (obj
, val 
? &v 
: 0)); 
2681     if (SWIG_IsOK(res
) && val
) *val 
= v 
? true : false; 
2687   #define SWIG_From_long   PyInt_FromLong  
2690 SWIGINTERNINLINE PyObject 
* 
2691 SWIG_From_int  (int value
) 
2693   return SWIG_From_long  (value
); 
2699 # define LLONG_MIN      LONG_LONG_MIN 
2702 # define LLONG_MAX      LONG_LONG_MAX 
2705 # define ULLONG_MAX     ULONG_LONG_MAX 
2710 SWIG_AsVal_int (PyObject 
* obj
, int *val
) 
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
; 
2718       if (val
) *val 
= static_cast< int >(v
); 
2727 SWIGINTERN 
int GLCanvasNameStr_set(PyObject 
*) { 
2728   SWIG_Error(SWIG_AttributeError
,"Variable GLCanvasNameStr is read-only."); 
2733 SWIGINTERN PyObject 
*GLCanvasNameStr_get(void) { 
2734   PyObject 
*pyobj 
= 0; 
2738     pyobj 
= PyUnicode_FromWideChar((&wxPyGLCanvasNameStr
)->c_str(), (&wxPyGLCanvasNameStr
)->Len()); 
2740     pyobj 
= PyString_FromStringAndSize((&wxPyGLCanvasNameStr
)->c_str(), (&wxPyGLCanvasNameStr
)->Len()); 
2747 SWIGINTERN PyObject 
*_wrap_new_GLContext(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
2748   PyObject 
*resultobj 
= 0; 
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 ; 
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 
 
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""'"); 
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 *""'");  
2781   arg2 
= reinterpret_cast< wxGLCanvas 
* >(argp2
); 
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 &""'");  
2788       SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "new_GLContext" "', expected argument " "3"" of type '" "wxPalette const &""'");  
2790     arg3 
= reinterpret_cast< wxPalette 
* >(argp3
); 
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 *""'");  
2797     arg4 
= reinterpret_cast< wxGLContext 
* >(argp4
); 
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
; 
2806   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxGLContext
, SWIG_POINTER_NEW 
|  0 ); 
2813 SWIGINTERN PyObject 
*_wrap_delete_GLContext(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
2814   PyObject 
*resultobj 
= 0; 
2815   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2818   PyObject 
*swig_obj
[1] ; 
2820   if (!args
) SWIG_fail
; 
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 *""'");  
2826   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
2828     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2831     wxPyEndAllowThreads(__tstate
); 
2832     if (PyErr_Occurred()) SWIG_fail
; 
2834   resultobj 
= SWIG_Py_Void(); 
2841 SWIGINTERN PyObject 
*_wrap_GLContext_SetCurrent(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
2842   PyObject 
*resultobj 
= 0; 
2843   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2846   PyObject 
*swig_obj
[1] ; 
2848   if (!args
) SWIG_fail
; 
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 *""'");  
2854   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
2856     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2857     (arg1
)->SetCurrent(); 
2858     wxPyEndAllowThreads(__tstate
); 
2859     if (PyErr_Occurred()) SWIG_fail
; 
2861   resultobj 
= SWIG_Py_Void(); 
2868 SWIGINTERN PyObject 
*_wrap_GLContext_SetColour(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
2869   PyObject 
*resultobj 
= 0; 
2870   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2871   wxString 
*arg2 
= 0 ; 
2874   bool temp2 
= false ; 
2875   PyObject 
* obj0 
= 0 ; 
2876   PyObject 
* obj1 
= 0 ; 
2877   char *  kwnames
[] = { 
2878     (char *) "self",(char *) "colour", NULL 
 
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 *""'");  
2886   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
2888     arg2 
= wxString_in_helper(obj1
); 
2889     if (arg2 
== NULL
) SWIG_fail
; 
2893     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2894     (arg1
)->SetColour((wxString 
const &)*arg2
); 
2895     wxPyEndAllowThreads(__tstate
); 
2896     if (PyErr_Occurred()) SWIG_fail
; 
2898   resultobj 
= SWIG_Py_Void(); 
2913 SWIGINTERN PyObject 
*_wrap_GLContext_SwapBuffers(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
2914   PyObject 
*resultobj 
= 0; 
2915   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2918   PyObject 
*swig_obj
[1] ; 
2920   if (!args
) SWIG_fail
; 
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 *""'");  
2926   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
2928     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2929     (arg1
)->SwapBuffers(); 
2930     wxPyEndAllowThreads(__tstate
); 
2931     if (PyErr_Occurred()) SWIG_fail
; 
2933   resultobj 
= SWIG_Py_Void(); 
2940 SWIGINTERN PyObject 
*_wrap_GLContext_SetupPixelFormat(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
2941   PyObject 
*resultobj 
= 0; 
2942   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2945   PyObject 
*swig_obj
[1] ; 
2947   if (!args
) SWIG_fail
; 
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 *""'");  
2953   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
2955     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2956     (arg1
)->SetupPixelFormat(); 
2957     wxPyEndAllowThreads(__tstate
); 
2958     if (PyErr_Occurred()) SWIG_fail
; 
2960   resultobj 
= SWIG_Py_Void(); 
2967 SWIGINTERN PyObject 
*_wrap_GLContext_SetupPalette(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
2968   PyObject 
*resultobj 
= 0; 
2969   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
2970   wxPalette 
*arg2 
= 0 ; 
2975   PyObject 
* obj0 
= 0 ; 
2976   PyObject 
* obj1 
= 0 ; 
2977   char *  kwnames
[] = { 
2978     (char *) "self",(char *) "palette", NULL 
 
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 *""'");  
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 &""'");  
2992     SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "GLContext_SetupPalette" "', expected argument " "2"" of type '" "wxPalette const &""'");  
2994   arg2 
= reinterpret_cast< wxPalette 
* >(argp2
); 
2996     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2997     (arg1
)->SetupPalette((wxPalette 
const &)*arg2
); 
2998     wxPyEndAllowThreads(__tstate
); 
2999     if (PyErr_Occurred()) SWIG_fail
; 
3001   resultobj 
= SWIG_Py_Void(); 
3008 SWIGINTERN PyObject 
*_wrap_GLContext_CreateDefaultPalette(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3009   PyObject 
*resultobj 
= 0; 
3010   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
3014   PyObject 
*swig_obj
[1] ; 
3016   if (!args
) SWIG_fail
; 
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 *""'");  
3022   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
3024     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3025     result 
= (arg1
)->CreateDefaultPalette(); 
3026     wxPyEndAllowThreads(__tstate
); 
3027     if (PyErr_Occurred()) SWIG_fail
; 
3029   resultobj 
= SWIG_NewPointerObj((new wxPalette(static_cast< const wxPalette
& >(result
))), SWIGTYPE_p_wxPalette
, SWIG_POINTER_OWN 
|  0 ); 
3036 SWIGINTERN PyObject 
*_wrap_GLContext_GetPalette(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3037   PyObject 
*resultobj 
= 0; 
3038   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
3039   wxPalette 
*result 
= 0 ; 
3042   PyObject 
*swig_obj
[1] ; 
3044   if (!args
) SWIG_fail
; 
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 *""'");  
3050   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
3052     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3053     result 
= (wxPalette 
*)(arg1
)->GetPalette(); 
3054     wxPyEndAllowThreads(__tstate
); 
3055     if (PyErr_Occurred()) SWIG_fail
; 
3057   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxPalette
, 0 |  0 ); 
3064 SWIGINTERN PyObject 
*_wrap_GLContext_GetWindow(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3065   PyObject 
*resultobj 
= 0; 
3066   wxGLContext 
*arg1 
= (wxGLContext 
*) 0 ; 
3067   wxWindow 
*result 
= 0 ; 
3070   PyObject 
*swig_obj
[1] ; 
3072   if (!args
) SWIG_fail
; 
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 *""'");  
3078   arg1 
= reinterpret_cast< wxGLContext 
* >(argp1
); 
3080     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3081     result 
= (wxWindow 
*)(arg1
)->GetWindow(); 
3082     wxPyEndAllowThreads(__tstate
); 
3083     if (PyErr_Occurred()) SWIG_fail
; 
3086     resultobj 
= wxPyMake_wxObject(result
, 0);  
3094 SWIGINTERN PyObject 
*GLContext_swigregister(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
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(); 
3101 SWIGINTERN PyObject 
*GLContext_swiginit(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3102   return SWIG_Python_InitShadowInstance(args
); 
3105 SWIGINTERN 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 ; 
3128   bool temp6 
= false ; 
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 
 
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 *""'");  
3149   arg1 
= reinterpret_cast< wxWindow 
* >(argp1
); 
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""'"); 
3155     arg2 
= static_cast< int >(val2
); 
3160       if ( ! wxPoint_helper(obj2
, &arg3
)) SWIG_fail
; 
3166       if ( ! wxSize_helper(obj3
, &arg4
)) SWIG_fail
; 
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""'"); 
3174     arg5 
= static_cast< long >(val5
); 
3178       arg6 
= wxString_in_helper(obj5
); 
3179       if (arg6 
== NULL
) SWIG_fail
; 
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
)); 
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 &""'");  
3203       SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "new_GLCanvas" "', expected argument " "8"" of type '" "wxPalette const &""'");  
3205     arg8 
= reinterpret_cast< wxPalette 
* >(argp8
); 
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
; 
3214   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxGLCanvas
, SWIG_POINTER_NEW 
|  0 ); 
3235 SWIGINTERN 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 ; 
3261   bool temp7 
= false ; 
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 
 
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 *""'");  
3283   arg1 
= reinterpret_cast< wxWindow 
* >(argp1
); 
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 *""'");  
3289     arg2 
= reinterpret_cast< wxGLContext 
* >(argp2
); 
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""'"); 
3296     arg3 
= static_cast< int >(val3
); 
3301       if ( ! wxPoint_helper(obj3
, &arg4
)) SWIG_fail
; 
3307       if ( ! wxSize_helper(obj4
, &arg5
)) SWIG_fail
; 
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""'"); 
3315     arg6 
= static_cast< long >(val6
); 
3319       arg7 
= wxString_in_helper(obj6
); 
3320       if (arg7 
== NULL
) SWIG_fail
; 
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
)); 
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 &""'");  
3344       SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "new_GLCanvasWithContext" "', expected argument " "9"" of type '" "wxPalette const &""'");  
3346     arg9 
= reinterpret_cast< wxPalette 
* >(argp9
); 
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
; 
3355   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxGLCanvas
, SWIG_POINTER_OWN 
|  0 ); 
3376 SWIGINTERN PyObject 
*_wrap_GLCanvas_SetCurrent(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3377   PyObject 
*resultobj 
= 0; 
3378   wxGLCanvas 
*arg1 
= (wxGLCanvas 
*) 0 ; 
3381   PyObject 
*swig_obj
[1] ; 
3383   if (!args
) SWIG_fail
; 
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 *""'");  
3389   arg1 
= reinterpret_cast< wxGLCanvas 
* >(argp1
); 
3391     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3392     (arg1
)->SetCurrent(); 
3393     wxPyEndAllowThreads(__tstate
); 
3394     if (PyErr_Occurred()) SWIG_fail
; 
3396   resultobj 
= SWIG_Py_Void(); 
3403 SWIGINTERN PyObject 
*_wrap_GLCanvas_SetColour(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3404   PyObject 
*resultobj 
= 0; 
3405   wxGLCanvas 
*arg1 
= (wxGLCanvas 
*) 0 ; 
3406   wxString 
*arg2 
= 0 ; 
3409   bool temp2 
= false ; 
3410   PyObject 
* obj0 
= 0 ; 
3411   PyObject 
* obj1 
= 0 ; 
3412   char *  kwnames
[] = { 
3413     (char *) "self",(char *) "colour", NULL 
 
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 *""'");  
3421   arg1 
= reinterpret_cast< wxGLCanvas 
* >(argp1
); 
3423     arg2 
= wxString_in_helper(obj1
); 
3424     if (arg2 
== NULL
) SWIG_fail
; 
3428     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3429     (arg1
)->SetColour((wxString 
const &)*arg2
); 
3430     wxPyEndAllowThreads(__tstate
); 
3431     if (PyErr_Occurred()) SWIG_fail
; 
3433   resultobj 
= SWIG_Py_Void(); 
3448 SWIGINTERN PyObject 
*_wrap_GLCanvas_SwapBuffers(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3449   PyObject 
*resultobj 
= 0; 
3450   wxGLCanvas 
*arg1 
= (wxGLCanvas 
*) 0 ; 
3453   PyObject 
*swig_obj
[1] ; 
3455   if (!args
) SWIG_fail
; 
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 *""'");  
3461   arg1 
= reinterpret_cast< wxGLCanvas 
* >(argp1
); 
3463     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3464     (arg1
)->SwapBuffers(); 
3465     wxPyEndAllowThreads(__tstate
); 
3466     if (PyErr_Occurred()) SWIG_fail
; 
3468   resultobj 
= SWIG_Py_Void(); 
3475 SWIGINTERN PyObject 
*_wrap_GLCanvas_GetContext(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3476   PyObject 
*resultobj 
= 0; 
3477   wxGLCanvas 
*arg1 
= (wxGLCanvas 
*) 0 ; 
3478   wxGLContext 
*result 
= 0 ; 
3481   PyObject 
*swig_obj
[1] ; 
3483   if (!args
) SWIG_fail
; 
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 *""'");  
3489   arg1 
= reinterpret_cast< wxGLCanvas 
* >(argp1
); 
3491     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3492     result 
= (wxGLContext 
*)(arg1
)->GetContext(); 
3493     wxPyEndAllowThreads(__tstate
); 
3494     if (PyErr_Occurred()) SWIG_fail
; 
3496   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxGLContext
, 0 |  0 ); 
3503 SWIGINTERN PyObject 
*GLCanvas_swigregister(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
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(); 
3510 SWIGINTERN PyObject 
*GLCanvas_swiginit(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3511   return SWIG_Python_InitShadowInstance(args
); 
3514 static PyMethodDef SwigMethods
[] = { 
3515          { (char *)"new_GLContext", (PyCFunction
) _wrap_new_GLContext
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
3516          { (char *)"delete_GLContext", (PyCFunction
)_wrap_delete_GLContext
, METH_O
, NULL
}, 
3517          { (char *)"GLContext_SetCurrent", (PyCFunction
)_wrap_GLContext_SetCurrent
, METH_O
, NULL
}, 
3518          { (char *)"GLContext_SetColour", (PyCFunction
) _wrap_GLContext_SetColour
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
3519          { (char *)"GLContext_SwapBuffers", (PyCFunction
)_wrap_GLContext_SwapBuffers
, METH_O
, NULL
}, 
3520          { (char *)"GLContext_SetupPixelFormat", (PyCFunction
)_wrap_GLContext_SetupPixelFormat
, METH_O
, NULL
}, 
3521          { (char *)"GLContext_SetupPalette", (PyCFunction
) _wrap_GLContext_SetupPalette
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
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
}, 
3525          { (char *)"GLContext_swigregister", GLContext_swigregister
, METH_VARARGS
, NULL
}, 
3526          { (char *)"GLContext_swiginit", GLContext_swiginit
, METH_VARARGS
, NULL
}, 
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
}, 
3529          { (char *)"GLCanvas_SetCurrent", (PyCFunction
)_wrap_GLCanvas_SetCurrent
, METH_O
, NULL
}, 
3530          { (char *)"GLCanvas_SetColour", (PyCFunction
) _wrap_GLCanvas_SetColour
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
3531          { (char *)"GLCanvas_SwapBuffers", (PyCFunction
)_wrap_GLCanvas_SwapBuffers
, METH_O
, NULL
}, 
3532          { (char *)"GLCanvas_GetContext", (PyCFunction
)_wrap_GLCanvas_GetContext
, METH_O
, NULL
}, 
3533          { (char *)"GLCanvas_swigregister", GLCanvas_swigregister
, METH_VARARGS
, NULL
}, 
3534          { (char *)"GLCanvas_swiginit", GLCanvas_swiginit
, METH_VARARGS
, NULL
}, 
3535          { NULL
, NULL
, 0, NULL 
} 
3539 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ 
3541 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x
) { 
3542     return (void *)((wxObject 
*)  ((wxLayoutConstraints 
*) x
)); 
3544 static void *_p_wxGBSizerItemTo_p_wxObject(void *x
) { 
3545     return (void *)((wxObject 
*) (wxSizerItem 
*) ((wxGBSizerItem 
*) x
)); 
3547 static void *_p_wxSizerItemTo_p_wxObject(void *x
) { 
3548     return (void *)((wxObject 
*)  ((wxSizerItem 
*) x
)); 
3550 static void *_p_wxScrollEventTo_p_wxObject(void *x
) { 
3551     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxScrollEvent 
*) x
)); 
3553 static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x
) { 
3554     return (void *)((wxObject 
*)  ((wxIndividualLayoutConstraint 
*) x
)); 
3556 static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x
) { 
3557     return (void *)((wxObject 
*) (wxSizer 
*)(wxBoxSizer 
*) ((wxStaticBoxSizer 
*) x
)); 
3559 static void *_p_wxBoxSizerTo_p_wxObject(void *x
) { 
3560     return (void *)((wxObject 
*) (wxSizer 
*) ((wxBoxSizer 
*) x
)); 
3562 static void *_p_wxSizerTo_p_wxObject(void *x
) { 
3563     return (void *)((wxObject 
*)  ((wxSizer 
*) x
)); 
3565 static void *_p_wxGridBagSizerTo_p_wxObject(void *x
) { 
3566     return (void *)((wxObject 
*) (wxSizer 
*)(wxGridSizer 
*)(wxFlexGridSizer 
*) ((wxGridBagSizer 
*) x
)); 
3568 static void *_p_wxUpdateUIEventTo_p_wxObject(void *x
) { 
3569     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxUpdateUIEvent 
*) x
)); 
3571 static void *_p_wxEventTo_p_wxObject(void *x
) { 
3572     return (void *)((wxObject 
*)  ((wxEvent 
*) x
)); 
3574 static void *_p_wxFlexGridSizerTo_p_wxObject(void *x
) { 
3575     return (void *)((wxObject 
*) (wxSizer 
*)(wxGridSizer 
*) ((wxFlexGridSizer 
*) x
)); 
3577 static void *_p_wxGridSizerTo_p_wxObject(void *x
) { 
3578     return (void *)((wxObject 
*) (wxSizer 
*) ((wxGridSizer 
*) x
)); 
3580 static void *_p_wxInitDialogEventTo_p_wxObject(void *x
) { 
3581     return (void *)((wxObject 
*) (wxEvent 
*) ((wxInitDialogEvent 
*) x
)); 
3583 static void *_p_wxPaintEventTo_p_wxObject(void *x
) { 
3584     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPaintEvent 
*) x
)); 
3586 static void *_p_wxNcPaintEventTo_p_wxObject(void *x
) { 
3587     return (void *)((wxObject 
*) (wxEvent 
*) ((wxNcPaintEvent 
*) x
)); 
3589 static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x
) { 
3590     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPaletteChangedEvent 
*) x
)); 
3592 static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x
) { 
3593     return (void *)((wxObject 
*) (wxEvent 
*) ((wxDisplayChangedEvent 
*) x
)); 
3595 static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x
) { 
3596     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMouseCaptureChangedEvent 
*) x
)); 
3598 static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x
) { 
3599     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSysColourChangedEvent 
*) x
)); 
3601 static void *_p_wxControlTo_p_wxObject(void *x
) { 
3602     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*) ((wxControl 
*) x
)); 
3604 static void *_p_wxSetCursorEventTo_p_wxObject(void *x
) { 
3605     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSetCursorEvent 
*) x
)); 
3607 static void *_p_wxFSFileTo_p_wxObject(void *x
) { 
3608     return (void *)((wxObject 
*)  ((wxFSFile 
*) x
)); 
3610 static void *_p_wxPySizerTo_p_wxObject(void *x
) { 
3611     return (void *)((wxObject 
*) (wxSizer 
*) ((wxPySizer 
*) x
)); 
3613 static void *_p_wxPyEventTo_p_wxObject(void *x
) { 
3614     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPyEvent 
*) x
)); 
3616 static void *_p_wxNotifyEventTo_p_wxObject(void *x
) { 
3617     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxNotifyEvent 
*) x
)); 
3619 static void *_p_wxGLContextTo_p_wxObject(void *x
) { 
3620     return (void *)((wxObject 
*)  ((wxGLContext 
*) x
)); 
3622 static void *_p_wxShowEventTo_p_wxObject(void *x
) { 
3623     return (void *)((wxObject 
*) (wxEvent 
*) ((wxShowEvent 
*) x
)); 
3625 static void *_p_wxMenuItemTo_p_wxObject(void *x
) { 
3626     return (void *)((wxObject 
*)  ((wxMenuItem 
*) x
)); 
3628 static void *_p_wxDateEventTo_p_wxObject(void *x
) { 
3629     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxDateEvent 
*) x
)); 
3631 static void *_p_wxIdleEventTo_p_wxObject(void *x
) { 
3632     return (void *)((wxObject 
*) (wxEvent 
*) ((wxIdleEvent 
*) x
)); 
3634 static void *_p_wxWindowCreateEventTo_p_wxObject(void *x
) { 
3635     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxWindowCreateEvent 
*) x
)); 
3637 static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x
) { 
3638     return (void *)((wxObject 
*) (wxEvent 
*) ((wxQueryNewPaletteEvent 
*) x
)); 
3640 static void *_p_wxMaximizeEventTo_p_wxObject(void *x
) { 
3641     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMaximizeEvent 
*) x
)); 
3643 static void *_p_wxIconizeEventTo_p_wxObject(void *x
) { 
3644     return (void *)((wxObject 
*) (wxEvent 
*) ((wxIconizeEvent 
*) x
)); 
3646 static void *_p_wxSizeEventTo_p_wxObject(void *x
) { 
3647     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSizeEvent 
*) x
)); 
3649 static void *_p_wxMoveEventTo_p_wxObject(void *x
) { 
3650     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMoveEvent 
*) x
)); 
3652 static void *_p_wxActivateEventTo_p_wxObject(void *x
) { 
3653     return (void *)((wxObject 
*) (wxEvent 
*) ((wxActivateEvent 
*) x
)); 
3655 static void *_p_wxPNMHandlerTo_p_wxObject(void *x
) { 
3656     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPNMHandler 
*) x
)); 
3658 static void *_p_wxJPEGHandlerTo_p_wxObject(void *x
) { 
3659     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxJPEGHandler 
*) x
)); 
3661 static void *_p_wxPCXHandlerTo_p_wxObject(void *x
) { 
3662     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPCXHandler 
*) x
)); 
3664 static void *_p_wxGIFHandlerTo_p_wxObject(void *x
) { 
3665     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxGIFHandler 
*) x
)); 
3667 static void *_p_wxPNGHandlerTo_p_wxObject(void *x
) { 
3668     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPNGHandler 
*) x
)); 
3670 static void *_p_wxANIHandlerTo_p_wxObject(void *x
) { 
3671     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*)(wxICOHandler 
*)(wxCURHandler 
*) ((wxANIHandler 
*) x
)); 
3673 static void *_p_wxCURHandlerTo_p_wxObject(void *x
) { 
3674     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*)(wxICOHandler 
*) ((wxCURHandler 
*) x
)); 
3676 static void *_p_wxICOHandlerTo_p_wxObject(void *x
) { 
3677     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*) ((wxICOHandler 
*) x
)); 
3679 static void *_p_wxBMPHandlerTo_p_wxObject(void *x
) { 
3680     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxBMPHandler 
*) x
)); 
3682 static void *_p_wxPyImageHandlerTo_p_wxObject(void *x
) { 
3683     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPyImageHandler 
*) x
)); 
3685 static void *_p_wxImageHandlerTo_p_wxObject(void *x
) { 
3686     return (void *)((wxObject 
*)  ((wxImageHandler 
*) x
)); 
3688 static void *_p_wxXPMHandlerTo_p_wxObject(void *x
) { 
3689     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxXPMHandler 
*) x
)); 
3691 static void *_p_wxTIFFHandlerTo_p_wxObject(void *x
) { 
3692     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxTIFFHandler 
*) x
)); 
3694 static void *_p_wxEvtHandlerTo_p_wxObject(void *x
) { 
3695     return (void *)((wxObject 
*)  ((wxEvtHandler 
*) x
)); 
3697 static void *_p_wxGLCanvasTo_p_wxObject(void *x
) { 
3698     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*) ((wxGLCanvas 
*) x
)); 
3700 static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x
) { 
3701     return (void *)((wxObject 
*) (wxSizer 
*)(wxBoxSizer 
*) ((wxStdDialogButtonSizer 
*) x
)); 
3703 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x
) { 
3704     return (void *)((wxObject 
*)  ((wxAcceleratorTable 
*) x
)); 
3706 static void *_p_wxImageTo_p_wxObject(void *x
) { 
3707     return (void *)((wxObject 
*)  ((wxImage 
*) x
)); 
3709 static void *_p_wxScrollWinEventTo_p_wxObject(void *x
) { 
3710     return (void *)((wxObject 
*) (wxEvent 
*) ((wxScrollWinEvent 
*) x
)); 
3712 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x
) { 
3713     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxWindowDestroyEvent 
*) x
)); 
3715 static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x
) { 
3716     return (void *)((wxObject 
*) (wxEvent 
*) ((wxNavigationKeyEvent 
*) x
)); 
3718 static void *_p_wxKeyEventTo_p_wxObject(void *x
) { 
3719     return (void *)((wxObject 
*) (wxEvent 
*) ((wxKeyEvent 
*) x
)); 
3721 static void *_p_wxWindowTo_p_wxObject(void *x
) { 
3722     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxWindow 
*) x
)); 
3724 static void *_p_wxMenuTo_p_wxObject(void *x
) { 
3725     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxMenu 
*) x
)); 
3727 static void *_p_wxMenuBarTo_p_wxObject(void *x
) { 
3728     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*) ((wxMenuBar 
*) x
)); 
3730 static void *_p_wxFileSystemTo_p_wxObject(void *x
) { 
3731     return (void *)((wxObject 
*)  ((wxFileSystem 
*) x
)); 
3733 static void *_p_wxContextMenuEventTo_p_wxObject(void *x
) { 
3734     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxContextMenuEvent 
*) x
)); 
3736 static void *_p_wxMenuEventTo_p_wxObject(void *x
) { 
3737     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMenuEvent 
*) x
)); 
3739 static void *_p_wxPyAppTo_p_wxObject(void *x
) { 
3740     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxPyApp 
*) x
)); 
3742 static void *_p_wxCloseEventTo_p_wxObject(void *x
) { 
3743     return (void *)((wxObject 
*) (wxEvent 
*) ((wxCloseEvent 
*) x
)); 
3745 static void *_p_wxMouseEventTo_p_wxObject(void *x
) { 
3746     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMouseEvent 
*) x
)); 
3748 static void *_p_wxEraseEventTo_p_wxObject(void *x
) { 
3749     return (void *)((wxObject 
*) (wxEvent 
*) ((wxEraseEvent 
*) x
)); 
3751 static void *_p_wxPyCommandEventTo_p_wxObject(void *x
) { 
3752     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxPyCommandEvent 
*) x
)); 
3754 static void *_p_wxCommandEventTo_p_wxObject(void *x
) { 
3755     return (void *)((wxObject 
*) (wxEvent 
*) ((wxCommandEvent 
*) x
)); 
3757 static void *_p_wxDropFilesEventTo_p_wxObject(void *x
) { 
3758     return (void *)((wxObject 
*) (wxEvent 
*) ((wxDropFilesEvent 
*) x
)); 
3760 static void *_p_wxFocusEventTo_p_wxObject(void *x
) { 
3761     return (void *)((wxObject 
*) (wxEvent 
*) ((wxFocusEvent 
*) x
)); 
3763 static void *_p_wxChildFocusEventTo_p_wxObject(void *x
) { 
3764     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxChildFocusEvent 
*) x
)); 
3766 static void *_p_wxControlWithItemsTo_p_wxObject(void *x
) { 
3767     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*)(wxControl 
*) ((wxControlWithItems 
*) x
)); 
3769 static void *_p_wxPyValidatorTo_p_wxObject(void *x
) { 
3770     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxValidator 
*) ((wxPyValidator 
*) x
)); 
3772 static void *_p_wxValidatorTo_p_wxObject(void *x
) { 
3773     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxValidator 
*) x
)); 
3775 static void *_p_wxControlTo_p_wxWindow(void *x
) { 
3776     return (void *)((wxWindow 
*)  ((wxControl 
*) x
)); 
3778 static void *_p_wxControlWithItemsTo_p_wxWindow(void *x
) { 
3779     return (void *)((wxWindow 
*) (wxControl 
*) ((wxControlWithItems 
*) x
)); 
3781 static void *_p_wxMenuBarTo_p_wxWindow(void *x
) { 
3782     return (void *)((wxWindow 
*)  ((wxMenuBar 
*) x
)); 
3784 static void *_p_wxGLCanvasTo_p_wxWindow(void *x
) { 
3785     return (void *)((wxWindow 
*)  ((wxGLCanvas 
*) x
)); 
3787 static void *_p_wxControlTo_p_wxEvtHandler(void *x
) { 
3788     return (void *)((wxEvtHandler 
*) (wxWindow 
*) ((wxControl 
*) x
)); 
3790 static void *_p_wxWindowTo_p_wxEvtHandler(void *x
) { 
3791     return (void *)((wxEvtHandler 
*)  ((wxWindow 
*) x
)); 
3793 static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x
) { 
3794     return (void *)((wxEvtHandler 
*) (wxWindow 
*)(wxControl 
*) ((wxControlWithItems 
*) x
)); 
3796 static void *_p_wxPyAppTo_p_wxEvtHandler(void *x
) { 
3797     return (void *)((wxEvtHandler 
*)  ((wxPyApp 
*) x
)); 
3799 static void *_p_wxValidatorTo_p_wxEvtHandler(void *x
) { 
3800     return (void *)((wxEvtHandler 
*)  ((wxValidator 
*) x
)); 
3802 static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x
) { 
3803     return (void *)((wxEvtHandler 
*) (wxValidator 
*) ((wxPyValidator 
*) x
)); 
3805 static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x
) { 
3806     return (void *)((wxEvtHandler 
*) (wxWindow 
*) ((wxMenuBar 
*) x
)); 
3808 static void *_p_wxGLCanvasTo_p_wxEvtHandler(void *x
) { 
3809     return (void *)((wxEvtHandler 
*) (wxWindow 
*) ((wxGLCanvas 
*) x
)); 
3811 static void *_p_wxMenuTo_p_wxEvtHandler(void *x
) { 
3812     return (void *)((wxEvtHandler 
*)  ((wxMenu 
*) x
)); 
3814 static swig_type_info _swigt__p_char 
= {"_p_char", "char *", 0, 0, (void*)0, 0}; 
3815 static swig_type_info _swigt__p_form_ops_t 
= {"_p_form_ops_t", "enum form_ops_t *|form_ops_t *", 0, 0, (void*)0, 0}; 
3816 static swig_type_info _swigt__p_int 
= {"_p_int", "int *", 0, 0, (void*)0, 0}; 
3817 static swig_type_info _swigt__p_unsigned_char 
= {"_p_unsigned_char", "unsigned char *|byte *", 0, 0, (void*)0, 0}; 
3818 static swig_type_info _swigt__p_unsigned_int 
= {"_p_unsigned_int", "unsigned int *|time_t *", 0, 0, (void*)0, 0}; 
3819 static swig_type_info _swigt__p_unsigned_long 
= {"_p_unsigned_long", "unsigned long *|wxUIntPtr *", 0, 0, (void*)0, 0}; 
3820 static swig_type_info _swigt__p_wxDuplexMode 
= {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0}; 
3821 static swig_type_info _swigt__p_wxEvtHandler 
= {"_p_wxEvtHandler", "wxEvtHandler *", 0, 0, (void*)0, 0}; 
3822 static swig_type_info _swigt__p_wxControl 
= {"_p_wxControl", 0, 0, 0, 0, 0}; 
3823 static swig_type_info _swigt__p_wxControlWithItems 
= {"_p_wxControlWithItems", 0, 0, 0, 0, 0}; 
3824 static swig_type_info _swigt__p_wxPyApp 
= {"_p_wxPyApp", 0, 0, 0, 0, 0}; 
3825 static swig_type_info _swigt__p_wxMenuBar 
= {"_p_wxMenuBar", 0, 0, 0, 0, 0}; 
3826 static swig_type_info _swigt__p_wxValidator 
= {"_p_wxValidator", 0, 0, 0, 0, 0}; 
3827 static swig_type_info _swigt__p_wxPyValidator 
= {"_p_wxPyValidator", 0, 0, 0, 0, 0}; 
3828 static swig_type_info _swigt__p_wxMenu 
= {"_p_wxMenu", 0, 0, 0, 0, 0}; 
3829 static swig_type_info _swigt__p_wxGLCanvas 
= {"_p_wxGLCanvas", "wxGLCanvas *", 0, 0, (void*)0, 0}; 
3830 static swig_type_info _swigt__p_wxGLContext 
= {"_p_wxGLContext", "wxGLContext *", 0, 0, (void*)0, 0}; 
3831 static swig_type_info _swigt__p_wxObject 
= {"_p_wxObject", "wxObject *", 0, 0, (void*)0, 0}; 
3832 static swig_type_info _swigt__p_wxLayoutConstraints 
= {"_p_wxLayoutConstraints", 0, 0, 0, 0, 0}; 
3833 static swig_type_info _swigt__p_wxGBSizerItem 
= {"_p_wxGBSizerItem", 0, 0, 0, 0, 0}; 
3834 static swig_type_info _swigt__p_wxSizerItem 
= {"_p_wxSizerItem", 0, 0, 0, 0, 0}; 
3835 static swig_type_info _swigt__p_wxScrollEvent 
= {"_p_wxScrollEvent", 0, 0, 0, 0, 0}; 
3836 static swig_type_info _swigt__p_wxIndividualLayoutConstraint 
= {"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0, 0}; 
3837 static swig_type_info _swigt__p_wxStaticBoxSizer 
= {"_p_wxStaticBoxSizer", 0, 0, 0, 0, 0}; 
3838 static swig_type_info _swigt__p_wxBoxSizer 
= {"_p_wxBoxSizer", 0, 0, 0, 0, 0}; 
3839 static swig_type_info _swigt__p_wxSizer 
= {"_p_wxSizer", 0, 0, 0, 0, 0}; 
3840 static swig_type_info _swigt__p_wxGridBagSizer 
= {"_p_wxGridBagSizer", 0, 0, 0, 0, 0}; 
3841 static swig_type_info _swigt__p_wxUpdateUIEvent 
= {"_p_wxUpdateUIEvent", 0, 0, 0, 0, 0}; 
3842 static swig_type_info _swigt__p_wxEvent 
= {"_p_wxEvent", 0, 0, 0, 0, 0}; 
3843 static swig_type_info _swigt__p_wxGridSizer 
= {"_p_wxGridSizer", 0, 0, 0, 0, 0}; 
3844 static swig_type_info _swigt__p_wxFlexGridSizer 
= {"_p_wxFlexGridSizer", 0, 0, 0, 0, 0}; 
3845 static swig_type_info _swigt__p_wxInitDialogEvent 
= {"_p_wxInitDialogEvent", 0, 0, 0, 0, 0}; 
3846 static swig_type_info _swigt__p_wxPaintEvent 
= {"_p_wxPaintEvent", 0, 0, 0, 0, 0}; 
3847 static swig_type_info _swigt__p_wxNcPaintEvent 
= {"_p_wxNcPaintEvent", 0, 0, 0, 0, 0}; 
3848 static swig_type_info _swigt__p_wxPaletteChangedEvent 
= {"_p_wxPaletteChangedEvent", 0, 0, 0, 0, 0}; 
3849 static swig_type_info _swigt__p_wxDisplayChangedEvent 
= {"_p_wxDisplayChangedEvent", 0, 0, 0, 0, 0}; 
3850 static swig_type_info _swigt__p_wxMouseCaptureChangedEvent 
= {"_p_wxMouseCaptureChangedEvent", 0, 0, 0, 0, 0}; 
3851 static swig_type_info _swigt__p_wxSysColourChangedEvent 
= {"_p_wxSysColourChangedEvent", 0, 0, 0, 0, 0}; 
3852 static swig_type_info _swigt__p_wxSetCursorEvent 
= {"_p_wxSetCursorEvent", 0, 0, 0, 0, 0}; 
3853 static swig_type_info _swigt__p_wxFSFile 
= {"_p_wxFSFile", 0, 0, 0, 0, 0}; 
3854 static swig_type_info _swigt__p_wxPySizer 
= {"_p_wxPySizer", 0, 0, 0, 0, 0}; 
3855 static swig_type_info _swigt__p_wxPyEvent 
= {"_p_wxPyEvent", 0, 0, 0, 0, 0}; 
3856 static swig_type_info _swigt__p_wxNotifyEvent 
= {"_p_wxNotifyEvent", 0, 0, 0, 0, 0}; 
3857 static swig_type_info _swigt__p_wxShowEvent 
= {"_p_wxShowEvent", 0, 0, 0, 0, 0}; 
3858 static swig_type_info _swigt__p_wxMenuItem 
= {"_p_wxMenuItem", 0, 0, 0, 0, 0}; 
3859 static swig_type_info _swigt__p_wxQueryNewPaletteEvent 
= {"_p_wxQueryNewPaletteEvent", 0, 0, 0, 0, 0}; 
3860 static swig_type_info _swigt__p_wxWindowCreateEvent 
= {"_p_wxWindowCreateEvent", 0, 0, 0, 0, 0}; 
3861 static swig_type_info _swigt__p_wxIdleEvent 
= {"_p_wxIdleEvent", 0, 0, 0, 0, 0}; 
3862 static swig_type_info _swigt__p_wxDateEvent 
= {"_p_wxDateEvent", 0, 0, 0, 0, 0}; 
3863 static swig_type_info _swigt__p_wxMaximizeEvent 
= {"_p_wxMaximizeEvent", 0, 0, 0, 0, 0}; 
3864 static swig_type_info _swigt__p_wxIconizeEvent 
= {"_p_wxIconizeEvent", 0, 0, 0, 0, 0}; 
3865 static swig_type_info _swigt__p_wxActivateEvent 
= {"_p_wxActivateEvent", 0, 0, 0, 0, 0}; 
3866 static swig_type_info _swigt__p_wxMoveEvent 
= {"_p_wxMoveEvent", 0, 0, 0, 0, 0}; 
3867 static swig_type_info _swigt__p_wxSizeEvent 
= {"_p_wxSizeEvent", 0, 0, 0, 0, 0}; 
3868 static swig_type_info _swigt__p_wxPNMHandler 
= {"_p_wxPNMHandler", 0, 0, 0, 0, 0}; 
3869 static swig_type_info _swigt__p_wxJPEGHandler 
= {"_p_wxJPEGHandler", 0, 0, 0, 0, 0}; 
3870 static swig_type_info _swigt__p_wxPCXHandler 
= {"_p_wxPCXHandler", 0, 0, 0, 0, 0}; 
3871 static swig_type_info _swigt__p_wxGIFHandler 
= {"_p_wxGIFHandler", 0, 0, 0, 0, 0}; 
3872 static swig_type_info _swigt__p_wxPNGHandler 
= {"_p_wxPNGHandler", 0, 0, 0, 0, 0}; 
3873 static swig_type_info _swigt__p_wxANIHandler 
= {"_p_wxANIHandler", 0, 0, 0, 0, 0}; 
3874 static swig_type_info _swigt__p_wxCURHandler 
= {"_p_wxCURHandler", 0, 0, 0, 0, 0}; 
3875 static swig_type_info _swigt__p_wxICOHandler 
= {"_p_wxICOHandler", 0, 0, 0, 0, 0}; 
3876 static swig_type_info _swigt__p_wxBMPHandler 
= {"_p_wxBMPHandler", 0, 0, 0, 0, 0}; 
3877 static swig_type_info _swigt__p_wxPyImageHandler 
= {"_p_wxPyImageHandler", 0, 0, 0, 0, 0}; 
3878 static swig_type_info _swigt__p_wxImageHandler 
= {"_p_wxImageHandler", 0, 0, 0, 0, 0}; 
3879 static swig_type_info _swigt__p_wxXPMHandler 
= {"_p_wxXPMHandler", 0, 0, 0, 0, 0}; 
3880 static swig_type_info _swigt__p_wxTIFFHandler 
= {"_p_wxTIFFHandler", 0, 0, 0, 0, 0}; 
3881 static swig_type_info _swigt__p_wxStdDialogButtonSizer 
= {"_p_wxStdDialogButtonSizer", 0, 0, 0, 0, 0}; 
3882 static swig_type_info _swigt__p_wxAcceleratorTable 
= {"_p_wxAcceleratorTable", 0, 0, 0, 0, 0}; 
3883 static swig_type_info _swigt__p_wxImage 
= {"_p_wxImage", 0, 0, 0, 0, 0}; 
3884 static swig_type_info _swigt__p_wxScrollWinEvent 
= {"_p_wxScrollWinEvent", 0, 0, 0, 0, 0}; 
3885 static swig_type_info _swigt__p_wxWindowDestroyEvent 
= {"_p_wxWindowDestroyEvent", 0, 0, 0, 0, 0}; 
3886 static swig_type_info _swigt__p_wxNavigationKeyEvent 
= {"_p_wxNavigationKeyEvent", 0, 0, 0, 0, 0}; 
3887 static swig_type_info _swigt__p_wxKeyEvent 
= {"_p_wxKeyEvent", 0, 0, 0, 0, 0}; 
3888 static swig_type_info _swigt__p_wxFileSystem 
= {"_p_wxFileSystem", 0, 0, 0, 0, 0}; 
3889 static swig_type_info _swigt__p_wxContextMenuEvent 
= {"_p_wxContextMenuEvent", 0, 0, 0, 0, 0}; 
3890 static swig_type_info _swigt__p_wxMenuEvent 
= {"_p_wxMenuEvent", 0, 0, 0, 0, 0}; 
3891 static swig_type_info _swigt__p_wxCloseEvent 
= {"_p_wxCloseEvent", 0, 0, 0, 0, 0}; 
3892 static swig_type_info _swigt__p_wxMouseEvent 
= {"_p_wxMouseEvent", 0, 0, 0, 0, 0}; 
3893 static swig_type_info _swigt__p_wxEraseEvent 
= {"_p_wxEraseEvent", 0, 0, 0, 0, 0}; 
3894 static swig_type_info _swigt__p_wxCommandEvent 
= {"_p_wxCommandEvent", 0, 0, 0, 0, 0}; 
3895 static swig_type_info _swigt__p_wxPyCommandEvent 
= {"_p_wxPyCommandEvent", 0, 0, 0, 0, 0}; 
3896 static swig_type_info _swigt__p_wxDropFilesEvent 
= {"_p_wxDropFilesEvent", 0, 0, 0, 0, 0}; 
3897 static swig_type_info _swigt__p_wxFocusEvent 
= {"_p_wxFocusEvent", 0, 0, 0, 0, 0}; 
3898 static swig_type_info _swigt__p_wxChildFocusEvent 
= {"_p_wxChildFocusEvent", 0, 0, 0, 0, 0}; 
3899 static swig_type_info _swigt__p_wxPalette 
= {"_p_wxPalette", "wxPalette *", 0, 0, (void*)0, 0}; 
3900 static swig_type_info _swigt__p_wxPaperSize 
= {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0}; 
3901 static swig_type_info _swigt__p_wxWindow 
= {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0}; 
3903 static swig_type_info 
*swig_type_initial
[] = { 
3905   &_swigt__p_form_ops_t
, 
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
, 
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
, 
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
, 
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
, 
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
, 
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
, 
3994 static swig_cast_info _swigc__p_char
[] = {  {&_swigt__p_char
, 0, 0, 0},{0, 0, 0, 0}}; 
3995 static swig_cast_info _swigc__p_form_ops_t
[] = {  {&_swigt__p_form_ops_t
, 0, 0, 0},{0, 0, 0, 0}}; 
3996 static swig_cast_info _swigc__p_int
[] = {  {&_swigt__p_int
, 0, 0, 0},{0, 0, 0, 0}}; 
3997 static swig_cast_info _swigc__p_unsigned_char
[] = {  {&_swigt__p_unsigned_char
, 0, 0, 0},{0, 0, 0, 0}}; 
3998 static swig_cast_info _swigc__p_unsigned_int
[] = {  {&_swigt__p_unsigned_int
, 0, 0, 0},{0, 0, 0, 0}}; 
3999 static swig_cast_info _swigc__p_unsigned_long
[] = {  {&_swigt__p_unsigned_long
, 0, 0, 0},{0, 0, 0, 0}}; 
4000 static swig_cast_info _swigc__p_wxDuplexMode
[] = {  {&_swigt__p_wxDuplexMode
, 0, 0, 0},{0, 0, 0, 0}}; 
4001 static swig_cast_info _swigc__p_wxControl
[] = {{&_swigt__p_wxControl
, 0, 0, 0},{0, 0, 0, 0}}; 
4002 static swig_cast_info _swigc__p_wxControlWithItems
[] = {{&_swigt__p_wxControlWithItems
, 0, 0, 0},{0, 0, 0, 0}}; 
4003 static swig_cast_info _swigc__p_wxPyApp
[] = {{&_swigt__p_wxPyApp
, 0, 0, 0},{0, 0, 0, 0}}; 
4004 static swig_cast_info _swigc__p_wxMenuBar
[] = {{&_swigt__p_wxMenuBar
, 0, 0, 0},{0, 0, 0, 0}}; 
4005 static swig_cast_info _swigc__p_wxValidator
[] = {{&_swigt__p_wxValidator
, 0, 0, 0},{0, 0, 0, 0}}; 
4006 static swig_cast_info _swigc__p_wxPyValidator
[] = {{&_swigt__p_wxPyValidator
, 0, 0, 0},{0, 0, 0, 0}}; 
4007 static swig_cast_info _swigc__p_wxMenu
[] = {{&_swigt__p_wxMenu
, 0, 0, 0},{0, 0, 0, 0}}; 
4008 static 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}}; 
4009 static swig_cast_info _swigc__p_wxGLCanvas
[] = {  {&_swigt__p_wxGLCanvas
, 0, 0, 0},{0, 0, 0, 0}}; 
4010 static swig_cast_info _swigc__p_wxGLContext
[] = {  {&_swigt__p_wxGLContext
, 0, 0, 0},{0, 0, 0, 0}}; 
4011 static swig_cast_info _swigc__p_wxLayoutConstraints
[] = {{&_swigt__p_wxLayoutConstraints
, 0, 0, 0},{0, 0, 0, 0}}; 
4012 static swig_cast_info _swigc__p_wxGBSizerItem
[] = {{&_swigt__p_wxGBSizerItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4013 static swig_cast_info _swigc__p_wxSizerItem
[] = {{&_swigt__p_wxSizerItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4014 static swig_cast_info _swigc__p_wxScrollEvent
[] = {{&_swigt__p_wxScrollEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4015 static swig_cast_info _swigc__p_wxIndividualLayoutConstraint
[] = {{&_swigt__p_wxIndividualLayoutConstraint
, 0, 0, 0},{0, 0, 0, 0}}; 
4016 static swig_cast_info _swigc__p_wxStaticBoxSizer
[] = {{&_swigt__p_wxStaticBoxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4017 static swig_cast_info _swigc__p_wxBoxSizer
[] = {{&_swigt__p_wxBoxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4018 static swig_cast_info _swigc__p_wxSizer
[] = {{&_swigt__p_wxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4019 static swig_cast_info _swigc__p_wxGridBagSizer
[] = {{&_swigt__p_wxGridBagSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4020 static swig_cast_info _swigc__p_wxUpdateUIEvent
[] = {{&_swigt__p_wxUpdateUIEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4021 static swig_cast_info _swigc__p_wxEvent
[] = {{&_swigt__p_wxEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4022 static swig_cast_info _swigc__p_wxGridSizer
[] = {{&_swigt__p_wxGridSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4023 static swig_cast_info _swigc__p_wxFlexGridSizer
[] = {{&_swigt__p_wxFlexGridSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4024 static swig_cast_info _swigc__p_wxInitDialogEvent
[] = {{&_swigt__p_wxInitDialogEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4025 static swig_cast_info _swigc__p_wxPaintEvent
[] = {{&_swigt__p_wxPaintEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4026 static swig_cast_info _swigc__p_wxNcPaintEvent
[] = {{&_swigt__p_wxNcPaintEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4027 static swig_cast_info _swigc__p_wxPaletteChangedEvent
[] = {{&_swigt__p_wxPaletteChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4028 static swig_cast_info _swigc__p_wxDisplayChangedEvent
[] = {{&_swigt__p_wxDisplayChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4029 static swig_cast_info _swigc__p_wxMouseCaptureChangedEvent
[] = {{&_swigt__p_wxMouseCaptureChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4030 static swig_cast_info _swigc__p_wxSysColourChangedEvent
[] = {{&_swigt__p_wxSysColourChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4031 static swig_cast_info _swigc__p_wxSetCursorEvent
[] = {{&_swigt__p_wxSetCursorEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4032 static swig_cast_info _swigc__p_wxFSFile
[] = {{&_swigt__p_wxFSFile
, 0, 0, 0},{0, 0, 0, 0}}; 
4033 static swig_cast_info _swigc__p_wxPySizer
[] = {{&_swigt__p_wxPySizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4034 static swig_cast_info _swigc__p_wxPyEvent
[] = {{&_swigt__p_wxPyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4035 static swig_cast_info _swigc__p_wxNotifyEvent
[] = {{&_swigt__p_wxNotifyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4036 static swig_cast_info _swigc__p_wxShowEvent
[] = {{&_swigt__p_wxShowEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4037 static swig_cast_info _swigc__p_wxMenuItem
[] = {{&_swigt__p_wxMenuItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4038 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent
[] = {{&_swigt__p_wxQueryNewPaletteEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4039 static swig_cast_info _swigc__p_wxWindowCreateEvent
[] = {{&_swigt__p_wxWindowCreateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4040 static swig_cast_info _swigc__p_wxIdleEvent
[] = {{&_swigt__p_wxIdleEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4041 static swig_cast_info _swigc__p_wxDateEvent
[] = {{&_swigt__p_wxDateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4042 static swig_cast_info _swigc__p_wxMaximizeEvent
[] = {{&_swigt__p_wxMaximizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4043 static swig_cast_info _swigc__p_wxIconizeEvent
[] = {{&_swigt__p_wxIconizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4044 static swig_cast_info _swigc__p_wxActivateEvent
[] = {{&_swigt__p_wxActivateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4045 static swig_cast_info _swigc__p_wxMoveEvent
[] = {{&_swigt__p_wxMoveEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4046 static swig_cast_info _swigc__p_wxSizeEvent
[] = {{&_swigt__p_wxSizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4047 static swig_cast_info _swigc__p_wxPNMHandler
[] = {{&_swigt__p_wxPNMHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4048 static swig_cast_info _swigc__p_wxJPEGHandler
[] = {{&_swigt__p_wxJPEGHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4049 static swig_cast_info _swigc__p_wxPCXHandler
[] = {{&_swigt__p_wxPCXHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4050 static swig_cast_info _swigc__p_wxGIFHandler
[] = {{&_swigt__p_wxGIFHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4051 static swig_cast_info _swigc__p_wxPNGHandler
[] = {{&_swigt__p_wxPNGHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4052 static swig_cast_info _swigc__p_wxANIHandler
[] = {{&_swigt__p_wxANIHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4053 static swig_cast_info _swigc__p_wxCURHandler
[] = {{&_swigt__p_wxCURHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4054 static swig_cast_info _swigc__p_wxICOHandler
[] = {{&_swigt__p_wxICOHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4055 static swig_cast_info _swigc__p_wxBMPHandler
[] = {{&_swigt__p_wxBMPHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4056 static swig_cast_info _swigc__p_wxPyImageHandler
[] = {{&_swigt__p_wxPyImageHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4057 static swig_cast_info _swigc__p_wxImageHandler
[] = {{&_swigt__p_wxImageHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4058 static swig_cast_info _swigc__p_wxXPMHandler
[] = {{&_swigt__p_wxXPMHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4059 static swig_cast_info _swigc__p_wxTIFFHandler
[] = {{&_swigt__p_wxTIFFHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4060 static swig_cast_info _swigc__p_wxStdDialogButtonSizer
[] = {{&_swigt__p_wxStdDialogButtonSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4061 static swig_cast_info _swigc__p_wxAcceleratorTable
[] = {{&_swigt__p_wxAcceleratorTable
, 0, 0, 0},{0, 0, 0, 0}}; 
4062 static swig_cast_info _swigc__p_wxImage
[] = {{&_swigt__p_wxImage
, 0, 0, 0},{0, 0, 0, 0}}; 
4063 static swig_cast_info _swigc__p_wxScrollWinEvent
[] = {{&_swigt__p_wxScrollWinEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4064 static swig_cast_info _swigc__p_wxWindowDestroyEvent
[] = {{&_swigt__p_wxWindowDestroyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4065 static swig_cast_info _swigc__p_wxNavigationKeyEvent
[] = {{&_swigt__p_wxNavigationKeyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4066 static swig_cast_info _swigc__p_wxKeyEvent
[] = {{&_swigt__p_wxKeyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4067 static swig_cast_info _swigc__p_wxFileSystem
[] = {{&_swigt__p_wxFileSystem
, 0, 0, 0},{0, 0, 0, 0}}; 
4068 static swig_cast_info _swigc__p_wxContextMenuEvent
[] = {{&_swigt__p_wxContextMenuEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4069 static swig_cast_info _swigc__p_wxMenuEvent
[] = {{&_swigt__p_wxMenuEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4070 static swig_cast_info _swigc__p_wxCloseEvent
[] = {{&_swigt__p_wxCloseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4071 static swig_cast_info _swigc__p_wxMouseEvent
[] = {{&_swigt__p_wxMouseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4072 static swig_cast_info _swigc__p_wxEraseEvent
[] = {{&_swigt__p_wxEraseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4073 static swig_cast_info _swigc__p_wxCommandEvent
[] = {{&_swigt__p_wxCommandEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4074 static swig_cast_info _swigc__p_wxPyCommandEvent
[] = {{&_swigt__p_wxPyCommandEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4075 static swig_cast_info _swigc__p_wxDropFilesEvent
[] = {{&_swigt__p_wxDropFilesEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4076 static swig_cast_info _swigc__p_wxFocusEvent
[] = {{&_swigt__p_wxFocusEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4077 static swig_cast_info _swigc__p_wxChildFocusEvent
[] = {{&_swigt__p_wxChildFocusEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4078 static 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}}; 
4079 static swig_cast_info _swigc__p_wxPalette
[] = {  {&_swigt__p_wxPalette
, 0, 0, 0},{0, 0, 0, 0}}; 
4080 static swig_cast_info _swigc__p_wxPaperSize
[] = {  {&_swigt__p_wxPaperSize
, 0, 0, 0},{0, 0, 0, 0}}; 
4081 static 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}}; 
4083 static swig_cast_info 
*swig_cast_initial
[] = { 
4085   _swigc__p_form_ops_t
, 
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
, 
4108   _swigc__p_wxEvtHandler
, 
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
, 
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
, 
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
, 
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
, 
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
, 
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
, 
4169   _swigc__p_wxWindowCreateEvent
, 
4170   _swigc__p_wxWindowDestroyEvent
, 
4171   _swigc__p_wxXPMHandler
, 
4175 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ 
4177 static swig_const_info swig_const_table
[] = { 
4178 {0, 0, 0, 0.0, 0, 0}}; 
4183 /* ----------------------------------------------------------------------------- 
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. 
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. 
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 
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 
4222  * ----------------------------------------------------------------------------- */ 
4232 #define SWIGRUNTIME_DEBUG 
4236 SWIG_InitializeModule(void *clientdata
) { 
4238   swig_module_info 
*module_head
; 
4239   static int init_run 
= 0; 
4241   clientdata 
= clientdata
; 
4243   if (init_run
) return; 
4246   /* Initialize the swig_module */ 
4247   swig_module
.type_initial 
= swig_type_initial
; 
4248   swig_module
.cast_initial 
= swig_cast_initial
; 
4250   /* Try and load any already created modules */ 
4251   module_head 
= SWIG_GetModule(clientdata
); 
4253     swig_module
.next 
= module_head
->next
; 
4254     module_head
->next 
= &swig_module
; 
4256     /* This is the first module loaded */ 
4257     swig_module
.next 
= &swig_module
; 
4258     SWIG_SetModule(clientdata
, &swig_module
); 
4261   /* Now work on filling in swig_module.types */ 
4262 #ifdef SWIGRUNTIME_DEBUG 
4263   printf("SWIG_InitializeModule: size %d\n", swig_module
.size
); 
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
; 
4270 #ifdef SWIGRUNTIME_DEBUG 
4271     printf("SWIG_InitializeModule: type %d %s\n", i
, swig_module
.type_initial
[i
]->name
); 
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
); 
4279       /* Overwrite clientdata field */ 
4280 #ifdef SWIGRUNTIME_DEBUG 
4281       printf("SWIG_InitializeModule: found type %s\n", type
->name
); 
4283       if (swig_module
.type_initial
[i
]->clientdata
) { 
4284         type
->clientdata 
= swig_module
.type_initial
[i
]->clientdata
; 
4285 #ifdef SWIGRUNTIME_DEBUG 
4286         printf("SWIG_InitializeModule: found and overwrite type %s \n", type
->name
); 
4290       type 
= swig_module
.type_initial
[i
]; 
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 */ 
4298 #ifdef SWIGRUNTIME_DEBUG 
4299       printf("SWIG_InitializeModule: look cast %s\n", cast
->type
->name
); 
4301       if (swig_module
.next 
!= &swig_module
) { 
4302         ret 
= SWIG_MangledTypeQueryModule(swig_module
.next
, &swig_module
, cast
->type
->name
); 
4303 #ifdef SWIGRUNTIME_DEBUG 
4304         if (ret
) printf("SWIG_InitializeModule: found cast %s\n", ret
->name
); 
4308         if (type 
== swig_module
.type_initial
[i
]) { 
4309 #ifdef SWIGRUNTIME_DEBUG 
4310           printf("SWIG_InitializeModule: skip old type %s\n", ret
->name
); 
4315           /* Check for casting already in the list */ 
4316           swig_cast_info 
*ocast 
= SWIG_TypeCheck(ret
->name
, type
); 
4317 #ifdef SWIGRUNTIME_DEBUG 
4318           if (ocast
) printf("SWIG_InitializeModule: skip old cast %s\n", ret
->name
); 
4320           if (!ocast
) ret 
= 0; 
4325 #ifdef SWIGRUNTIME_DEBUG 
4326         printf("SWIG_InitializeModule: adding cast %s\n", cast
->type
->name
); 
4329           type
->cast
->prev 
= cast
; 
4330           cast
->next 
= type
->cast
; 
4336     /* Set entry in modules->types array equal to the type */ 
4337     swig_module
.types
[i
] = type
; 
4339   swig_module
.types
[i
] = 0; 
4341 #ifdef SWIGRUNTIME_DEBUG 
4342   printf("**** SWIG_InitializeModule: Cast List ******\n"); 
4343   for (i 
= 0; i 
< swig_module
.size
; ++i
) { 
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
); 
4352     printf("---- Total casts: %d\n",j
); 
4354   printf("**** SWIG_InitializeModule: Cast List ******\n"); 
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. 
4364 SWIG_PropagateClientData(void) { 
4366   swig_cast_info 
*equiv
; 
4367   static int init_run 
= 0; 
4369   if (init_run
) return; 
4372   for (i 
= 0; i 
< swig_module
.size
; i
++) { 
4373     if (swig_module
.types
[i
]->clientdata
) { 
4374       equiv 
= swig_module
.types
[i
]->cast
; 
4376         if (!equiv
->converter
) { 
4377           if (equiv
->type 
&& !equiv
->type
->clientdata
) 
4378           SWIG_TypeClientData(equiv
->type
, swig_module
.types
[i
]->clientdata
); 
4380         equiv 
= equiv
->next
; 
4400   /* Python-specific SWIG API */ 
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) 
4405   /* ----------------------------------------------------------------------------- 
4406    * global variable support code. 
4407    * ----------------------------------------------------------------------------- */ 
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
; 
4416   typedef struct swig_varlinkobject 
{ 
4418     swig_globalvar 
*vars
; 
4419   } swig_varlinkobject
; 
4421   SWIGINTERN PyObject 
* 
4422   swig_varlink_repr(swig_varlinkobject 
*SWIGUNUSEDPARM(v
)) { 
4423     return PyString_FromString("<Swig global variables>"); 
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(", ")); 
4434     PyString_ConcatAndDel(&str
,PyString_FromString(")")); 
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
)); 
4448   swig_varlink_dealloc(swig_varlinkobject 
*v
) { 
4449     swig_globalvar 
*var 
= v
->vars
; 
4451       swig_globalvar 
*n 
= var
->next
; 
4458   SWIGINTERN PyObject 
* 
4459   swig_varlink_getattr(swig_varlinkobject 
*v
, char *n
) { 
4460     PyObject 
*res 
= NULL
; 
4461     swig_globalvar 
*var 
= v
->vars
; 
4463       if (strcmp(var
->name
,n
) == 0) { 
4464         res 
= (*var
->get_attr
)(); 
4469     if (res 
== NULL 
&& !PyErr_Occurred()) { 
4470       PyErr_SetString(PyExc_NameError
,"Unknown C global variable"); 
4476   swig_varlink_setattr(swig_varlinkobject 
*v
, char *n
, PyObject 
*p
) { 
4478     swig_globalvar 
*var 
= v
->vars
; 
4480       if (strcmp(var
->name
,n
) == 0) { 
4481         res 
= (*var
->set_attr
)(p
); 
4486     if (res 
== 1 && !PyErr_Occurred()) { 
4487       PyErr_SetString(PyExc_NameError
,"Unknown C global variable"); 
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;   
4498       const PyTypeObject tmp
 
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) */ 
4510         (reprfunc
) swig_varlink_repr
,       /* tp_repr */ 
4511         0,                                  /* tp_as_number */ 
4512         0,                                  /* tp_as_sequence */ 
4513         0,                                  /* tp_as_mapping */ 
4516         (reprfunc
)swig_varlink_str
,        /* tp_str */ 
4517         0,                                  /* tp_getattro */ 
4518         0,                                  /* tp_setattro */ 
4519         0,                                  /* tp_as_buffer */ 
4521         varlink__doc__
,                     /* tp_doc */ 
4522         0,                                  /* tp_traverse */ 
4524         0,                                  /* tp_richcompare */ 
4525         0,                                  /* tp_weaklistoffset */ 
4526 #if PY_VERSION_HEX >= 0x02020000 
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 */ 
4529 #if PY_VERSION_HEX >= 0x02030000 
4533         0,0,0,0                             /* tp_alloc -> tp_next */ 
4537       varlink_type
.ob_type 
= &PyType_Type
; 
4540     return &varlink_type
; 
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()); 
4550     return ((PyObject
*) result
); 
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
)); 
4558       size_t size 
= strlen(name
)+1; 
4559       gv
->name 
= (char *)malloc(size
); 
4561         strncpy(gv
->name
,name
,size
); 
4562         gv
->get_attr 
= get_attr
; 
4563         gv
->set_attr 
= set_attr
; 
4570   SWIGINTERN PyObject 
* 
4572     static PyObject 
*_SWIG_globals 
= 0;  
4573     if (!_SWIG_globals
) _SWIG_globals 
= SWIG_newvarlink();   
4574     return _SWIG_globals
; 
4577   /* ----------------------------------------------------------------------------- 
4578    * constants/methods manipulation 
4579    * ----------------------------------------------------------------------------- */ 
4581   /* Install Constants */ 
4583   SWIG_Python_InstallConstants(PyObject 
*d
, swig_const_info constants
[]) { 
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); 
4591       case SWIG_PY_BINARY
: 
4592         obj 
= SWIG_NewPackedObj(constants
[i
].pvalue
, constants
[i
].lvalue
, *(constants
[i
].ptype
)); 
4599         PyDict_SetItemString(d
, constants
[i
].name
, obj
); 
4605   /* -----------------------------------------------------------------------------*/ 
4606   /* Fix SwigMethods to carry the callback ptrs when needed */ 
4607   /* -----------------------------------------------------------------------------*/ 
4610   SWIG_Python_FixMethods(PyMethodDef 
*methods
, 
4611     swig_const_info 
*const_table
, 
4612     swig_type_info 
**types
, 
4613     swig_type_info 
**types_initial
) { 
4615     for (i 
= 0; methods
[i
].ml_name
; ++i
) { 
4616       char *c 
= methods
[i
].ml_doc
; 
4617       if (c 
&& (c 
= strstr(c
, "swig_ptr: "))) { 
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
]); 
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); 
4636             void *ptr 
= (ci
->type 
== SWIG_PY_POINTER
) ? ci
->pvalue 
: 0; 
4638               strncpy(buff
, methods
[i
].ml_doc
, ldoc
); 
4640               strncpy(buff
, "swig_ptr: ", 10); 
4642               SWIG_PackVoidPtr(buff
, ptr
, ty
->name
, lptr
); 
4643               methods
[i
].ml_doc 
= ndoc
; 
4655 /* -----------------------------------------------------------------------------* 
4656  *  Partial Init method 
4657  * -----------------------------------------------------------------------------*/ 
4662 SWIGEXPORT 
void SWIG_init(void) { 
4665   /* Fix SwigMethods to carry the callback ptrs when needed */ 
4666   SWIG_Python_FixMethods(SwigMethods
, swig_const_table
, swig_types
, swig_type_initial
); 
4668   m 
= Py_InitModule((char *) SWIG_name
, SwigMethods
); 
4669   d 
= PyModule_GetDict(m
); 
4671   SWIG_InitializeModule(0); 
4672   SWIG_InstallConstants(d
,swig_const_table
); 
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
)));