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 #if PY_VERSION_HEX < 0x02050000 
 989 typedef int Py_ssize_t
; 
 992 /* for raw pointers */ 
 993 #define SWIG_Python_ConvertPtr(obj, pptr, type, flags)  SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, 0) 
 994 #define SWIG_ConvertPtr(obj, pptr, type, flags)         SWIG_Python_ConvertPtr(obj, pptr, type, flags) 
 995 #define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own)  SWIG_Python_ConvertPtrAndOwn(obj, pptr, type, flags, own) 
 996 #define SWIG_NewPointerObj(ptr, type, flags)            SWIG_Python_NewPointerObj(ptr, type, flags) 
 997 #define SWIG_CheckImplicit(ty)                          SWIG_Python_CheckImplicit(ty)  
 998 #define SWIG_AcquirePtr(ptr, src)                       SWIG_Python_AcquirePtr(ptr, src) 
 999 #define swig_owntype                                    int 
1001 /* for raw packed data */ 
1002 #define SWIG_ConvertPacked(obj, ptr, sz, ty)            SWIG_Python_ConvertPacked(obj, ptr, sz, ty) 
1003 #define SWIG_NewPackedObj(ptr, sz, type)                SWIG_Python_NewPackedObj(ptr, sz, type) 
1005 /* for class or struct pointers */ 
1006 #define SWIG_ConvertInstance(obj, pptr, type, flags)    SWIG_ConvertPtr(obj, pptr, type, flags) 
1007 #define SWIG_NewInstanceObj(ptr, type, flags)           SWIG_NewPointerObj(ptr, type, flags) 
1009 /* for C or C++ function pointers */ 
1010 #define SWIG_ConvertFunctionPtr(obj, pptr, type)        SWIG_Python_ConvertFunctionPtr(obj, pptr, type) 
1011 #define SWIG_NewFunctionPtrObj(ptr, type)               SWIG_Python_NewPointerObj(ptr, type, 0) 
1013 /* for C++ member pointers, ie, member methods */ 
1014 #define SWIG_ConvertMember(obj, ptr, sz, ty)            SWIG_Python_ConvertPacked(obj, ptr, sz, ty) 
1015 #define SWIG_NewMemberObj(ptr, sz, type)                SWIG_Python_NewPackedObj(ptr, sz, type) 
1020 #define SWIG_GetModule(clientdata)                      SWIG_Python_GetModule() 
1021 #define SWIG_SetModule(clientdata, pointer)             SWIG_Python_SetModule(pointer) 
1022 #define SWIG_NewClientData(obj)                         PySwigClientData_New(obj) 
1024 #define SWIG_SetErrorObj                                SWIG_Python_SetErrorObj                             
1025 #define SWIG_SetErrorMsg                                SWIG_Python_SetErrorMsg                             
1026 #define SWIG_ErrorType(code)                            SWIG_Python_ErrorType(code)                         
1027 #define SWIG_Error(code, msg)                           SWIG_Python_SetErrorMsg(SWIG_ErrorType(code), msg)  
1028 #define SWIG_fail                                       goto fail                                           
1031 /* Runtime API implementation */ 
1033 /* Error manipulation */ 
1036 SWIG_Python_SetErrorObj(PyObject 
*errtype
, PyObject 
*obj
) { 
1037   SWIG_PYTHON_THREAD_BEGIN_BLOCK
;  
1038   PyErr_SetObject(errtype
, obj
); 
1040   SWIG_PYTHON_THREAD_END_BLOCK
; 
1044 SWIG_Python_SetErrorMsg(PyObject 
*errtype
, const char *msg
) { 
1045   SWIG_PYTHON_THREAD_BEGIN_BLOCK
; 
1046   PyErr_SetString(errtype
, (char *) msg
); 
1047   SWIG_PYTHON_THREAD_END_BLOCK
; 
1050 #define SWIG_Python_Raise(obj, type, desc)  SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(desc), obj) 
1052 /* Set a constant value */ 
1055 SWIG_Python_SetConstant(PyObject 
*d
, const char *name
, PyObject 
*obj
) {    
1056   PyDict_SetItemString(d
, (char*) name
, obj
); 
1060 /* Append a value to the result obj */ 
1062 SWIGINTERN PyObject
* 
1063 SWIG_Python_AppendOutput(PyObject
* result
, PyObject
* obj
) { 
1064 #if !defined(SWIG_PYTHON_OUTPUT_TUPLE) 
1067   } else if (result 
== Py_None
) { 
1071     if (!PyList_Check(result
)) { 
1072       PyObject 
*o2 
= result
; 
1073       result 
= PyList_New(1); 
1074       PyList_SetItem(result
, 0, o2
); 
1076     PyList_Append(result
,obj
); 
1085   } else if (result 
== Py_None
) { 
1089     if (!PyTuple_Check(result
)) { 
1091       result 
= PyTuple_New(1); 
1092       PyTuple_SET_ITEM(result
, 0, o2
); 
1094     o3 
= PyTuple_New(1); 
1095     PyTuple_SET_ITEM(o3
, 0, obj
); 
1097     result 
= PySequence_Concat(o2
, o3
); 
1105 /* Unpack the argument tuple */ 
1108 SWIG_Python_UnpackTuple(PyObject 
*args
, const char *name
, int min
, int max
, PyObject 
**objs
) 
1114       PyErr_Format(PyExc_TypeError
, "%s expected %s%d arguments, got none",  
1115                    name
, (min 
== max 
? "" : "at least "), min
); 
1119   if (!PyTuple_Check(args
)) { 
1120     PyErr_SetString(PyExc_SystemError
, "UnpackTuple() argument list is not a tuple"); 
1123     register int l 
= PyTuple_GET_SIZE(args
); 
1125       PyErr_Format(PyExc_TypeError
, "%s expected %s%d arguments, got %d",  
1126                    name
, (min 
== max 
? "" : "at least "), min
, l
); 
1128     } else if (l 
> max
) { 
1129       PyErr_Format(PyExc_TypeError
, "%s expected %s%d arguments, got %d",  
1130                    name
, (min 
== max 
? "" : "at most "), max
, l
); 
1134       for (i 
= 0; i 
< l
; ++i
) { 
1135         objs
[i
] = PyTuple_GET_ITEM(args
, i
); 
1137       for (; l 
< max
; ++l
) { 
1145 /* A functor is a function object with one single object argument */ 
1146 #if PY_VERSION_HEX >= 0x02020000 
1147 #define SWIG_Python_CallFunctor(functor, obj)           PyObject_CallFunctionObjArgs(functor, obj, NULL); 
1149 #define SWIG_Python_CallFunctor(functor, obj)           PyObject_CallFunction(functor, "O", obj); 
1153   Helper for static pointer initialization for both C and C++ code, for example 
1154   static PyObject *SWIG_STATIC_POINTER(MyVar) = NewSomething(...); 
1157 #define SWIG_STATIC_POINTER(var)  var 
1159 #define SWIG_STATIC_POINTER(var)  var = 0; if (!var) var 
1162 /* ----------------------------------------------------------------------------- 
1163  * Pointer declarations 
1164  * ----------------------------------------------------------------------------- */ 
1166 /* Flags for new pointer objects */ 
1167 #define SWIG_POINTER_NOSHADOW       (SWIG_POINTER_OWN      << 1) 
1168 #define SWIG_POINTER_NEW            (SWIG_POINTER_NOSHADOW | SWIG_POINTER_OWN) 
1170 #define SWIG_POINTER_IMPLICIT_CONV  (SWIG_POINTER_DISOWN   << 1) 
1179 /*  How to access Py_None */ 
1180 #if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__) 
1181 #  ifndef SWIG_PYTHON_NO_BUILD_NONE 
1182 #    ifndef SWIG_PYTHON_BUILD_NONE 
1183 #      define SWIG_PYTHON_BUILD_NONE 
1188 #ifdef SWIG_PYTHON_BUILD_NONE 
1191 #   define Py_None SWIG_Py_None() 
1193 SWIGRUNTIMEINLINE PyObject 
*  
1196   PyObject 
*none 
= Py_BuildValue(""); 
1200 SWIGRUNTIME PyObject 
*  
1203   static PyObject 
*SWIG_STATIC_POINTER(none
) = _SWIG_Py_None(); 
1208 /* The python void return value */ 
1210 SWIGRUNTIMEINLINE PyObject 
*  
1213   PyObject 
*none 
= Py_None
; 
1218 /* PySwigClientData */ 
1229 SWIGRUNTIMEINLINE 
int  
1230 SWIG_Python_CheckImplicit(swig_type_info 
*ty
) 
1232   PySwigClientData 
*data 
= (PySwigClientData 
*)ty
->clientdata
; 
1233   return data 
? data
->implicitconv 
: 0; 
1236 SWIGRUNTIMEINLINE PyObject 
* 
1237 SWIG_Python_ExceptionType(swig_type_info 
*desc
) { 
1238   PySwigClientData 
*data 
= desc 
? (PySwigClientData 
*) desc
->clientdata 
: 0; 
1239   PyObject 
*klass 
= data 
? data
->klass 
: 0; 
1240   return (klass 
? klass 
: PyExc_RuntimeError
); 
1244 SWIGRUNTIME PySwigClientData 
*  
1245 PySwigClientData_New(PyObject
* obj
) 
1250     PySwigClientData 
*data 
= (PySwigClientData 
*)malloc(sizeof(PySwigClientData
)); 
1251     /* the klass element */ 
1253     Py_INCREF(data
->klass
); 
1254     /* the newraw method and newargs arguments used to create a new raw instance */ 
1255     if (PyClass_Check(obj
)) { 
1257       data
->newargs 
= obj
; 
1260 #if (PY_VERSION_HEX < 0x02020000) 
1263       data
->newraw 
= PyObject_GetAttrString(data
->klass
, (char *)"__new__"); 
1266         Py_INCREF(data
->newraw
); 
1267         data
->newargs 
= PyTuple_New(1); 
1268         PyTuple_SetItem(data
->newargs
, 0, obj
); 
1270         data
->newargs 
= obj
; 
1272       Py_INCREF(data
->newargs
); 
1274     /* the destroy method, aka as the C++ delete method */ 
1275     data
->destroy 
= PyObject_GetAttrString(data
->klass
, (char *)"__swig_destroy__"); 
1276     if (PyErr_Occurred()) { 
1280     if (data
->destroy
) { 
1282       Py_INCREF(data
->destroy
); 
1283       flags 
= PyCFunction_GET_FLAGS(data
->destroy
); 
1285       data
->delargs 
= !(flags 
& (METH_O
)); 
1292     data
->implicitconv 
= 0; 
1298 PySwigClientData_Del(PySwigClientData
* data
) 
1300   Py_XDECREF(data
->newraw
); 
1301   Py_XDECREF(data
->newargs
); 
1302   Py_XDECREF(data
->destroy
); 
1305 /* =============== PySwigObject =====================*/ 
1315 SWIGRUNTIME PyObject 
* 
1316 PySwigObject_long(PySwigObject 
*v
) 
1318   return PyLong_FromVoidPtr(v
->ptr
); 
1321 SWIGRUNTIME PyObject 
* 
1322 PySwigObject_format(const char* fmt
, PySwigObject 
*v
) 
1324   PyObject 
*res 
= NULL
; 
1325   PyObject 
*args 
= PyTuple_New(1); 
1327     if (PyTuple_SetItem(args
, 0, PySwigObject_long(v
)) == 0) { 
1328       PyObject 
*ofmt 
= PyString_FromString(fmt
); 
1330         res 
= PyString_Format(ofmt
,args
); 
1339 SWIGRUNTIME PyObject 
* 
1340 PySwigObject_oct(PySwigObject 
*v
) 
1342   return PySwigObject_format("%o",v
); 
1345 SWIGRUNTIME PyObject 
* 
1346 PySwigObject_hex(PySwigObject 
*v
) 
1348   return PySwigObject_format("%x",v
); 
1351 SWIGRUNTIME PyObject 
* 
1353 PySwigObject_repr(PySwigObject 
*v
) 
1355 PySwigObject_repr(PySwigObject 
*v
, PyObject 
*args
) 
1358   const char *name 
= SWIG_TypePrettyName(v
->ty
); 
1359   PyObject 
*hex 
= PySwigObject_hex(v
);     
1360   PyObject 
*repr 
= PyString_FromFormat("<Swig Object of type '%s' at 0x%s>", name
, PyString_AsString(hex
)); 
1364     PyObject 
*nrep 
= PySwigObject_repr((PySwigObject 
*)v
->next
); 
1366     PyObject 
*nrep 
= PySwigObject_repr((PySwigObject 
*)v
->next
, args
); 
1368     PyString_ConcatAndDel(&repr
,nrep
); 
1374 PySwigObject_print(PySwigObject 
*v
, FILE *fp
, int SWIGUNUSEDPARM(flags
)) 
1377   PyObject 
*repr 
= PySwigObject_repr(v
); 
1379   PyObject 
*repr 
= PySwigObject_repr(v
, NULL
); 
1382     fputs(PyString_AsString(repr
), fp
); 
1390 SWIGRUNTIME PyObject 
* 
1391 PySwigObject_str(PySwigObject 
*v
) 
1393   char result
[SWIG_BUFFER_SIZE
]; 
1394   return SWIG_PackVoidPtr(result
, v
->ptr
, v
->ty
->name
, sizeof(result
)) ? 
1395     PyString_FromString(result
) : 0; 
1399 PySwigObject_compare(PySwigObject 
*v
, PySwigObject 
*w
) 
1403   return (i 
< j
) ? -1 : ((i 
> j
) ? 1 : 0); 
1406 SWIGRUNTIME PyTypeObject
* _PySwigObject_type(void); 
1408 SWIGRUNTIME PyTypeObject
* 
1409 PySwigObject_type(void) { 
1410   static PyTypeObject 
*SWIG_STATIC_POINTER(type
) = _PySwigObject_type(); 
1414 SWIGRUNTIMEINLINE 
int 
1415 PySwigObject_Check(PyObject 
*op
) { 
1416   return ((op
)->ob_type 
== PySwigObject_type()) 
1417     || (strcmp((op
)->ob_type
->tp_name
,"PySwigObject") == 0); 
1420 SWIGRUNTIME PyObject 
* 
1421 PySwigObject_New(void *ptr
, swig_type_info 
*ty
, int own
); 
1424 PySwigObject_dealloc(PyObject 
*v
) 
1426   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1427   PyObject 
*next 
= sobj
->next
; 
1429     swig_type_info 
*ty 
= sobj
->ty
; 
1430     PySwigClientData 
*data 
= ty 
? (PySwigClientData 
*) ty
->clientdata 
: 0; 
1431     PyObject 
*destroy 
= data 
? data
->destroy 
: 0; 
1433       /* destroy is always a VARARGS method */ 
1435       if (data
->delargs
) { 
1436         /* we need to create a temporal object to carry the destroy operation */ 
1437         PyObject 
*tmp 
= PySwigObject_New(sobj
->ptr
, ty
, 0); 
1438         res 
= SWIG_Python_CallFunctor(destroy
, tmp
); 
1441         PyCFunction meth 
= PyCFunction_GET_FUNCTION(destroy
); 
1442         PyObject 
*mself 
= PyCFunction_GET_SELF(destroy
); 
1443         res 
= ((*meth
)(mself
, v
)); 
1447       const char *name 
= SWIG_TypePrettyName(ty
); 
1448 #if !defined(SWIG_PYTHON_SILENT_MEMLEAK) 
1449       printf("swig/python detected a memory leak of type '%s', no destructor found.\n", name
); 
1457 SWIGRUNTIME PyObject
*  
1458 PySwigObject_append(PyObject
* v
, PyObject
* next
) 
1460   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1463   if (!PyArg_ParseTuple(next
,(char *)"O:append", &tmp
)) return NULL
; 
1466   if (!PySwigObject_Check(next
)) { 
1471   return SWIG_Py_Void(); 
1474 SWIGRUNTIME PyObject
*  
1476 PySwigObject_next(PyObject
* v
) 
1478 PySwigObject_next(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1481   PySwigObject 
*sobj 
= (PySwigObject 
*) v
; 
1483     Py_INCREF(sobj
->next
); 
1486     return SWIG_Py_Void(); 
1490 SWIGINTERN PyObject
* 
1492 PySwigObject_disown(PyObject 
*v
) 
1494 PySwigObject_disown(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1497   PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1499   return SWIG_Py_Void(); 
1502 SWIGINTERN PyObject
* 
1504 PySwigObject_acquire(PyObject 
*v
) 
1506 PySwigObject_acquire(PyObject
* v
, PyObject 
*SWIGUNUSEDPARM(args
)) 
1509   PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1510   sobj
->own 
= SWIG_POINTER_OWN
; 
1511   return SWIG_Py_Void(); 
1514 SWIGINTERN PyObject
* 
1515 PySwigObject_own(PyObject 
*v
, PyObject 
*args
) 
1518 #if (PY_VERSION_HEX < 0x02020000) 
1519   if (!PyArg_ParseTuple(args
,(char *)"|O:own",&val
)) 
1521   if (!PyArg_UnpackTuple(args
, (char *)"own", 0, 1, &val
))  
1528       PySwigObject 
*sobj 
= (PySwigObject 
*)v
; 
1529       PyObject 
*obj 
= PyBool_FromLong(sobj
->own
); 
1532         if (PyObject_IsTrue(val
)) { 
1533           PySwigObject_acquire(v
); 
1535           PySwigObject_disown(v
); 
1538         if (PyObject_IsTrue(val
)) { 
1539           PySwigObject_acquire(v
,args
); 
1541           PySwigObject_disown(v
,args
); 
1551 swigobject_methods
[] = { 
1552   {(char *)"disown",  (PyCFunction
)PySwigObject_disown
,  METH_NOARGS
,  (char *)"releases ownership of the pointer"}, 
1553   {(char *)"acquire", (PyCFunction
)PySwigObject_acquire
, METH_NOARGS
,  (char *)"aquires ownership of the pointer"}, 
1554   {(char *)"own",     (PyCFunction
)PySwigObject_own
,     METH_VARARGS
, (char *)"returns/sets ownership of the pointer"}, 
1555   {(char *)"append",  (PyCFunction
)PySwigObject_append
,  METH_O
,       (char *)"appends another 'this' object"}, 
1556   {(char *)"next",    (PyCFunction
)PySwigObject_next
,    METH_NOARGS
,  (char *)"returns the next 'this' object"}, 
1557   {(char *)"__repr__",(PyCFunction
)PySwigObject_repr
,    METH_NOARGS
,  (char *)"returns object representation"}, 
1562 swigobject_methods
[] = { 
1563   {(char *)"disown",  (PyCFunction
)PySwigObject_disown
,  METH_VARARGS
,  (char *)"releases ownership of the pointer"}, 
1564   {(char *)"acquire", (PyCFunction
)PySwigObject_acquire
, METH_VARARGS
,  (char *)"aquires ownership of the pointer"}, 
1565   {(char *)"own",     (PyCFunction
)PySwigObject_own
,     METH_VARARGS
,  (char *)"returns/sets ownership of the pointer"}, 
1566   {(char *)"append",  (PyCFunction
)PySwigObject_append
,  METH_VARARGS
,  (char *)"appends another 'this' object"}, 
1567   {(char *)"next",    (PyCFunction
)PySwigObject_next
,    METH_VARARGS
,  (char *)"returns the next 'this' object"}, 
1568   {(char *)"__repr__",(PyCFunction
)PySwigObject_repr
,   METH_VARARGS
,  (char *)"returns object representation"}, 
1573 #if PY_VERSION_HEX < 0x02020000 
1574 SWIGINTERN PyObject 
* 
1575 PySwigObject_getattr(PySwigObject 
*sobj
,char *name
) 
1577   return Py_FindMethod(swigobject_methods
, (PyObject 
*)sobj
, name
); 
1581 SWIGRUNTIME PyTypeObject
* 
1582 _PySwigObject_type(void) { 
1583   static char swigobject_doc
[] = "Swig object carries a C/C++ instance pointer"; 
1585   static PyNumberMethods PySwigObject_as_number 
= { 
1586     (binaryfunc
)0, /*nb_add*/ 
1587     (binaryfunc
)0, /*nb_subtract*/ 
1588     (binaryfunc
)0, /*nb_multiply*/ 
1589     (binaryfunc
)0, /*nb_divide*/ 
1590     (binaryfunc
)0, /*nb_remainder*/ 
1591     (binaryfunc
)0, /*nb_divmod*/ 
1592     (ternaryfunc
)0,/*nb_power*/ 
1593     (unaryfunc
)0,  /*nb_negative*/ 
1594     (unaryfunc
)0,  /*nb_positive*/ 
1595     (unaryfunc
)0,  /*nb_absolute*/ 
1596     (inquiry
)0,    /*nb_nonzero*/ 
1603     (coercion
)0,   /*nb_coerce*/ 
1604     (unaryfunc
)PySwigObject_long
, /*nb_int*/ 
1605     (unaryfunc
)PySwigObject_long
, /*nb_long*/ 
1606     (unaryfunc
)0,                 /*nb_float*/ 
1607     (unaryfunc
)PySwigObject_oct
,  /*nb_oct*/ 
1608     (unaryfunc
)PySwigObject_hex
,  /*nb_hex*/ 
1609 #if PY_VERSION_HEX >= 0x02020000 
1610     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_true_divide */  
1611 #elif PY_VERSION_HEX >= 0x02000000 
1612     0,0,0,0,0,0,0,0,0,0,0 /* nb_inplace_add -> nb_inplace_or */ 
1616   static PyTypeObject pyswigobject_type
;   
1617   static int type_init 
= 0; 
1619     const PyTypeObject tmp
 
1621         PyObject_HEAD_INIT(NULL
) 
1623         (char *)"PySwigObject",             /* tp_name */ 
1624         sizeof(PySwigObject
),               /* tp_basicsize */ 
1625         0,                                  /* tp_itemsize */ 
1626         (destructor
)PySwigObject_dealloc
,   /* tp_dealloc */ 
1627         (printfunc
)PySwigObject_print
,      /* tp_print */ 
1628 #if PY_VERSION_HEX < 0x02020000 
1629         (getattrfunc
)PySwigObject_getattr
,  /* tp_getattr */  
1631         (getattrfunc
)0,                     /* tp_getattr */  
1633         (setattrfunc
)0,                     /* tp_setattr */  
1634         (cmpfunc
)PySwigObject_compare
,      /* tp_compare */  
1635         (reprfunc
)PySwigObject_repr
,        /* tp_repr */     
1636         &PySwigObject_as_number
,            /* tp_as_number */ 
1637         0,                                  /* tp_as_sequence */ 
1638         0,                                  /* tp_as_mapping */ 
1639         (hashfunc
)0,                        /* tp_hash */ 
1640         (ternaryfunc
)0,                     /* tp_call */ 
1641         (reprfunc
)PySwigObject_str
,         /* tp_str */ 
1642         PyObject_GenericGetAttr
,            /* tp_getattro */ 
1643         0,                                  /* tp_setattro */ 
1644         0,                                  /* tp_as_buffer */ 
1645         Py_TPFLAGS_DEFAULT
,                 /* tp_flags */ 
1646         swigobject_doc
,                     /* tp_doc */         
1647         0,                                  /* tp_traverse */ 
1649         0,                                  /* tp_richcompare */ 
1650         0,                                  /* tp_weaklistoffset */ 
1651 #if PY_VERSION_HEX >= 0x02020000 
1653         0,                                  /* tp_iternext */ 
1654         swigobject_methods
,                 /* tp_methods */  
1659         0,                                  /* tp_descr_get */           
1660         0,                                  /* tp_descr_set */           
1661         0,                                  /* tp_dictoffset */          
1670         0,                                  /* tp_subclasses */ 
1671         0,                                  /* tp_weaklist */ 
1673 #if PY_VERSION_HEX >= 0x02030000 
1677         0,0,0,0                             /* tp_alloc -> tp_next */ 
1680     pyswigobject_type 
= tmp
; 
1681     pyswigobject_type
.ob_type 
= &PyType_Type
; 
1684   return &pyswigobject_type
; 
1687 SWIGRUNTIME PyObject 
* 
1688 PySwigObject_New(void *ptr
, swig_type_info 
*ty
, int own
) 
1690   PySwigObject 
*sobj 
= PyObject_NEW(PySwigObject
, PySwigObject_type()); 
1697   return (PyObject 
*)sobj
; 
1700 /* ----------------------------------------------------------------------------- 
1701  * Implements a simple Swig Packed type, and use it instead of string 
1702  * ----------------------------------------------------------------------------- */ 
1712 PySwigPacked_print(PySwigPacked 
*v
, FILE *fp
, int SWIGUNUSEDPARM(flags
)) 
1714   char result
[SWIG_BUFFER_SIZE
]; 
1715   fputs("<Swig Packed ", fp
);  
1716   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))) { 
1720   fputs(v
->ty
->name
,fp
);  
1725 SWIGRUNTIME PyObject 
* 
1726 PySwigPacked_repr(PySwigPacked 
*v
) 
1728   char result
[SWIG_BUFFER_SIZE
]; 
1729   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))) { 
1730     return PyString_FromFormat("<Swig Packed at %s%s>", result
, v
->ty
->name
); 
1732     return PyString_FromFormat("<Swig Packed %s>", v
->ty
->name
); 
1736 SWIGRUNTIME PyObject 
* 
1737 PySwigPacked_str(PySwigPacked 
*v
) 
1739   char result
[SWIG_BUFFER_SIZE
]; 
1740   if (SWIG_PackDataName(result
, v
->pack
, v
->size
, 0, sizeof(result
))){ 
1741     return PyString_FromFormat("%s%s", result
, v
->ty
->name
); 
1743     return PyString_FromString(v
->ty
->name
); 
1748 PySwigPacked_compare(PySwigPacked 
*v
, PySwigPacked 
*w
) 
1752   int s 
= (i 
< j
) ? -1 : ((i 
> j
) ? 1 : 0); 
1753   return s 
? s 
: strncmp((char *)v
->pack
, (char *)w
->pack
, 2*v
->size
); 
1756 SWIGRUNTIME PyTypeObject
* _PySwigPacked_type(void); 
1758 SWIGRUNTIME PyTypeObject
* 
1759 PySwigPacked_type(void) { 
1760   static PyTypeObject 
*SWIG_STATIC_POINTER(type
) = _PySwigPacked_type(); 
1764 SWIGRUNTIMEINLINE 
int 
1765 PySwigPacked_Check(PyObject 
*op
) { 
1766   return ((op
)->ob_type 
== _PySwigPacked_type())  
1767     || (strcmp((op
)->ob_type
->tp_name
,"PySwigPacked") == 0); 
1771 PySwigPacked_dealloc(PyObject 
*v
) 
1773   if (PySwigPacked_Check(v
)) { 
1774     PySwigPacked 
*sobj 
= (PySwigPacked 
*) v
; 
1780 SWIGRUNTIME PyTypeObject
* 
1781 _PySwigPacked_type(void) { 
1782   static char swigpacked_doc
[] = "Swig object carries a C/C++ instance pointer"; 
1783   static PyTypeObject pyswigpacked_type
; 
1784   static int type_init 
= 0;   
1786     const PyTypeObject tmp
 
1788         PyObject_HEAD_INIT(NULL
) 
1790         (char *)"PySwigPacked",             /* tp_name */        
1791         sizeof(PySwigPacked
),               /* tp_basicsize */   
1792         0,                                  /* tp_itemsize */    
1793         (destructor
)PySwigPacked_dealloc
,   /* tp_dealloc */     
1794         (printfunc
)PySwigPacked_print
,      /* tp_print */       
1795         (getattrfunc
)0,                     /* tp_getattr */     
1796         (setattrfunc
)0,                     /* tp_setattr */     
1797         (cmpfunc
)PySwigPacked_compare
,      /* tp_compare */     
1798         (reprfunc
)PySwigPacked_repr
,        /* tp_repr */        
1799         0,                                  /* tp_as_number */   
1800         0,                                  /* tp_as_sequence */ 
1801         0,                                  /* tp_as_mapping */  
1802         (hashfunc
)0,                        /* tp_hash */        
1803         (ternaryfunc
)0,                     /* tp_call */        
1804         (reprfunc
)PySwigPacked_str
,         /* tp_str */         
1805         PyObject_GenericGetAttr
,            /* tp_getattro */ 
1806         0,                                  /* tp_setattro */ 
1807         0,                                  /* tp_as_buffer */ 
1808         Py_TPFLAGS_DEFAULT
,                 /* tp_flags */ 
1809         swigpacked_doc
,                     /* tp_doc */ 
1810         0,                                  /* tp_traverse */ 
1812         0,                                  /* tp_richcompare */ 
1813         0,                                  /* tp_weaklistoffset */ 
1814 #if PY_VERSION_HEX >= 0x02020000 
1816         0,                                  /* tp_iternext */ 
1822         0,                                  /* tp_descr_get */           
1823         0,                                  /* tp_descr_set */           
1824         0,                                  /* tp_dictoffset */          
1833         0,                                  /* tp_subclasses */ 
1834         0,                                  /* tp_weaklist */ 
1836 #if PY_VERSION_HEX >= 0x02030000 
1840         0,0,0,0                             /* tp_alloc -> tp_next */ 
1843     pyswigpacked_type 
= tmp
; 
1844     pyswigpacked_type
.ob_type 
= &PyType_Type
; 
1847   return &pyswigpacked_type
; 
1850 SWIGRUNTIME PyObject 
* 
1851 PySwigPacked_New(void *ptr
, size_t size
, swig_type_info 
*ty
) 
1853   PySwigPacked 
*sobj 
= PyObject_NEW(PySwigPacked
, PySwigPacked_type()); 
1855     void *pack 
= malloc(size
); 
1857       memcpy(pack
, ptr
, size
); 
1862       PyObject_DEL((PyObject 
*) sobj
); 
1866   return (PyObject 
*) sobj
; 
1869 SWIGRUNTIME swig_type_info 
* 
1870 PySwigPacked_UnpackData(PyObject 
*obj
, void *ptr
, size_t size
) 
1872   if (PySwigPacked_Check(obj
)) { 
1873     PySwigPacked 
*sobj 
= (PySwigPacked 
*)obj
; 
1874     if (sobj
->size 
!= size
) return 0; 
1875     memcpy(ptr
, sobj
->pack
, size
); 
1882 /* ----------------------------------------------------------------------------- 
1883  * pointers/data manipulation 
1884  * ----------------------------------------------------------------------------- */ 
1886 SWIGRUNTIMEINLINE PyObject 
* 
1889   return PyString_FromString("this"); 
1892 SWIGRUNTIME PyObject 
* 
1895   static PyObject 
*SWIG_STATIC_POINTER(swig_this
) = _SWIG_This(); 
1899 /* #define SWIG_PYTHON_SLOW_GETSET_THIS */ 
1901 SWIGRUNTIME PySwigObject 
* 
1902 SWIG_Python_GetSwigThis(PyObject 
*pyobj
)  
1904   if (PySwigObject_Check(pyobj
)) { 
1905     return (PySwigObject 
*) pyobj
; 
1908 #if (!defined(SWIG_PYTHON_SLOW_GETSET_THIS) && (PY_VERSION_HEX >= 0x02030000)) 
1909     if (PyInstance_Check(pyobj
)) { 
1910       obj 
= _PyInstance_Lookup(pyobj
, SWIG_This());       
1912       PyObject 
**dictptr 
= _PyObject_GetDictPtr(pyobj
); 
1913       if (dictptr 
!= NULL
) { 
1914         PyObject 
*dict 
= *dictptr
; 
1915         obj 
= dict 
? PyDict_GetItem(dict
, SWIG_This()) : 0; 
1917 #ifdef PyWeakref_CheckProxy 
1918         if (PyWeakref_CheckProxy(pyobj
)) { 
1919           PyObject 
*wobj 
= PyWeakref_GET_OBJECT(pyobj
); 
1920           return wobj 
? SWIG_Python_GetSwigThis(wobj
) : 0; 
1923         obj 
= PyObject_GetAttr(pyobj
,SWIG_This()); 
1927           if (PyErr_Occurred()) PyErr_Clear(); 
1933     obj 
= PyObject_GetAttr(pyobj
,SWIG_This()); 
1937       if (PyErr_Occurred()) PyErr_Clear(); 
1941     if (obj 
&& !PySwigObject_Check(obj
)) { 
1942       /* a PyObject is called 'this', try to get the 'real this' 
1943          PySwigObject from it */  
1944       return SWIG_Python_GetSwigThis(obj
); 
1946     return (PySwigObject 
*)obj
; 
1950 /* Acquire a pointer value */ 
1953 SWIG_Python_AcquirePtr(PyObject 
*obj
, int own
) { 
1955     PySwigObject 
*sobj 
= SWIG_Python_GetSwigThis(obj
); 
1957       int oldown 
= sobj
->own
; 
1965 /* Convert a pointer value */ 
1968 SWIG_Python_ConvertPtrAndOwn(PyObject 
*obj
, void **ptr
, swig_type_info 
*ty
, int flags
, int *own
) { 
1969   if (!obj
) return SWIG_ERROR
; 
1970   if (obj 
== Py_None
) { 
1974     PySwigObject 
*sobj 
= SWIG_Python_GetSwigThis(obj
); 
1976       void *vptr 
= sobj
->ptr
; 
1978         swig_type_info 
*to 
= sobj
->ty
; 
1980           /* no type cast needed */ 
1981           if (ptr
) *ptr 
= vptr
; 
1984           swig_cast_info 
*tc 
= SWIG_TypeCheck(to
->name
,ty
); 
1986             sobj 
= (PySwigObject 
*)sobj
->next
; 
1988             if (ptr
) *ptr 
= SWIG_TypeCast(tc
,vptr
); 
1993         if (ptr
) *ptr 
= vptr
; 
1998       if (own
) *own 
= sobj
->own
; 
1999       if (flags 
& SWIG_POINTER_DISOWN
) { 
2004       int res 
= SWIG_ERROR
; 
2005       if (flags 
& SWIG_POINTER_IMPLICIT_CONV
) { 
2006         PySwigClientData 
*data 
= ty 
? (PySwigClientData 
*) ty
->clientdata 
: 0; 
2007         if (data 
&& !data
->implicitconv
) { 
2008           PyObject 
*klass 
= data
->klass
; 
2011             data
->implicitconv 
= 1; /* avoid recursion and call 'explicit' constructors*/ 
2012             impconv 
= SWIG_Python_CallFunctor(klass
, obj
); 
2013             data
->implicitconv 
= 0; 
2014             if (PyErr_Occurred()) { 
2019               PySwigObject 
*iobj 
= SWIG_Python_GetSwigThis(impconv
); 
2022                 res 
= SWIG_Python_ConvertPtrAndOwn((PyObject
*)iobj
, &vptr
, ty
, 0, 0); 
2023                 if (SWIG_IsOK(res
)) { 
2026                     /* transfer the ownership to 'ptr' */ 
2028                     res 
= SWIG_AddCast(res
); 
2029                     res 
= SWIG_AddNewMask(res
); 
2031                     res 
= SWIG_AddCast(res
);                 
2045 /* Convert a function ptr value */ 
2048 SWIG_Python_ConvertFunctionPtr(PyObject 
*obj
, void **ptr
, swig_type_info 
*ty
) { 
2049   if (!PyCFunction_Check(obj
)) { 
2050     return SWIG_ConvertPtr(obj
, ptr
, ty
, 0); 
2054     /* here we get the method pointer for callbacks */ 
2055     const char *doc 
= (((PyCFunctionObject 
*)obj
) -> m_ml 
-> ml_doc
); 
2056     const char *desc 
= doc 
? strstr(doc
, "swig_ptr: ") : 0; 
2058       desc 
= ty 
? SWIG_UnpackVoidPtr(desc 
+ 10, &vptr
, ty
->name
) : 0; 
2059       if (!desc
) return SWIG_ERROR
; 
2062       swig_cast_info 
*tc 
= SWIG_TypeCheck(desc
,ty
); 
2063       if (!tc
) return SWIG_ERROR
; 
2064       *ptr 
= SWIG_TypeCast(tc
,vptr
); 
2072 /* Convert a packed value value */ 
2075 SWIG_Python_ConvertPacked(PyObject 
*obj
, void *ptr
, size_t sz
, swig_type_info 
*ty
) { 
2076   swig_type_info 
*to 
= PySwigPacked_UnpackData(obj
, ptr
, sz
); 
2077   if (!to
) return SWIG_ERROR
; 
2080       /* check type cast? */ 
2081       swig_cast_info 
*tc 
= SWIG_TypeCheck(to
->name
,ty
); 
2082       if (!tc
) return SWIG_ERROR
; 
2088 /* ----------------------------------------------------------------------------- 
2089  * Create a new pointer object 
2090  * ----------------------------------------------------------------------------- */ 
2093   Create a new instance object, whitout calling __init__, and set the 
2097 SWIGRUNTIME PyObject
*  
2098 SWIG_Python_NewShadowInstance(PySwigClientData 
*data
, PyObject 
*swig_this
) 
2100 #if (PY_VERSION_HEX >= 0x02020000) 
2102   PyObject 
*newraw 
= data
->newraw
; 
2104     inst 
= PyObject_Call(newraw
, data
->newargs
, NULL
); 
2106 #if !defined(SWIG_PYTHON_SLOW_GETSET_THIS) 
2107       PyObject 
**dictptr 
= _PyObject_GetDictPtr(inst
); 
2108       if (dictptr 
!= NULL
) { 
2109         PyObject 
*dict 
= *dictptr
; 
2111           dict 
= PyDict_New(); 
2113           PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2117       PyObject 
*key 
= SWIG_This(); 
2118       PyObject_SetAttr(inst
, key
, swig_this
); 
2122     PyObject 
*dict 
= PyDict_New(); 
2123     PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2124     inst 
= PyInstance_NewRaw(data
->newargs
, dict
); 
2129 #if (PY_VERSION_HEX >= 0x02010000) 
2131   PyObject 
*dict 
= PyDict_New(); 
2132   PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2133   inst 
= PyInstance_NewRaw(data
->newargs
, dict
); 
2135   return (PyObject 
*) inst
; 
2137   PyInstanceObject 
*inst 
= PyObject_NEW(PyInstanceObject
, &PyInstance_Type
); 
2141   inst
->in_class 
= (PyClassObject 
*)data
->newargs
; 
2142   Py_INCREF(inst
->in_class
); 
2143   inst
->in_dict 
= PyDict_New(); 
2144   if (inst
->in_dict 
== NULL
) { 
2148 #ifdef Py_TPFLAGS_HAVE_WEAKREFS 
2149   inst
->in_weakreflist 
= NULL
; 
2151 #ifdef Py_TPFLAGS_GC 
2152   PyObject_GC_Init(inst
); 
2154   PyDict_SetItem(inst
->in_dict
, SWIG_This(), swig_this
); 
2155   return (PyObject 
*) inst
; 
2161 SWIG_Python_SetSwigThis(PyObject 
*inst
, PyObject 
*swig_this
) 
2164 #if (PY_VERSION_HEX >= 0x02020000) && !defined(SWIG_PYTHON_SLOW_GETSET_THIS) 
2165  PyObject 
**dictptr 
= _PyObject_GetDictPtr(inst
); 
2166  if (dictptr 
!= NULL
) { 
2169      dict 
= PyDict_New(); 
2172    PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2176  dict 
= PyObject_GetAttrString(inst
, "__dict__"); 
2177  PyDict_SetItem(dict
, SWIG_This(), swig_this
); 
2182 SWIGINTERN PyObject 
* 
2183 SWIG_Python_InitShadowInstance(PyObject 
*args
) { 
2185   if (!SWIG_Python_UnpackTuple(args
,(char*)"swiginit", 2, 2, obj
)) { 
2188     PySwigObject 
*sthis 
= SWIG_Python_GetSwigThis(obj
[0]); 
2190       PySwigObject_append((PyObject
*) sthis
, obj
[1]); 
2192       SWIG_Python_SetSwigThis(obj
[0], obj
[1]); 
2194     return SWIG_Py_Void(); 
2198 /* Create a new pointer object */ 
2200 SWIGRUNTIME PyObject 
* 
2201 SWIG_Python_NewPointerObj(void *ptr
, swig_type_info 
*type
, int flags
) { 
2203     return SWIG_Py_Void(); 
2205     int own 
= (flags 
& SWIG_POINTER_OWN
) ? SWIG_POINTER_OWN 
: 0; 
2206     PyObject 
*robj 
= PySwigObject_New(ptr
, type
, own
); 
2207     PySwigClientData 
*clientdata 
= type 
? (PySwigClientData 
*)(type
->clientdata
) : 0; 
2208     if (clientdata 
&& !(flags 
& SWIG_POINTER_NOSHADOW
)) { 
2209       PyObject 
*inst 
= SWIG_Python_NewShadowInstance(clientdata
, robj
); 
2219 /* Create a new packed object */ 
2221 SWIGRUNTIMEINLINE PyObject 
* 
2222 SWIG_Python_NewPackedObj(void *ptr
, size_t sz
, swig_type_info 
*type
) { 
2223   return ptr 
? PySwigPacked_New((void *) ptr
, sz
, type
) : SWIG_Py_Void(); 
2226 /* -----------------------------------------------------------------------------* 
2228  * -----------------------------------------------------------------------------*/ 
2230 #ifdef SWIG_LINK_RUNTIME 
2231 void *SWIG_ReturnGlobalTypeList(void *); 
2234 SWIGRUNTIME swig_module_info 
* 
2235 SWIG_Python_GetModule(void) { 
2236   static void *type_pointer 
= (void *)0; 
2237   /* first check if module already created */ 
2238   if (!type_pointer
) { 
2239 #ifdef SWIG_LINK_RUNTIME 
2240     type_pointer 
= SWIG_ReturnGlobalTypeList((void *)0); 
2242     type_pointer 
= PyCObject_Import((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION
, 
2243                                     (char*)"type_pointer" SWIG_TYPE_TABLE_NAME
); 
2244     if (PyErr_Occurred()) { 
2246       type_pointer 
= (void *)0; 
2250   return (swig_module_info 
*) type_pointer
; 
2253 #if PY_MAJOR_VERSION < 2 
2254 /* PyModule_AddObject function was introduced in Python 2.0.  The following function 
2255    is copied out of Python/modsupport.c in python version 2.3.4 */ 
2257 PyModule_AddObject(PyObject 
*m
, char *name
, PyObject 
*o
) 
2260   if (!PyModule_Check(m
)) { 
2261     PyErr_SetString(PyExc_TypeError
, 
2262                     "PyModule_AddObject() needs module as first arg"); 
2266     PyErr_SetString(PyExc_TypeError
, 
2267                     "PyModule_AddObject() needs non-NULL value"); 
2271   dict 
= PyModule_GetDict(m
); 
2273     /* Internal error -- modules must have a dict! */ 
2274     PyErr_Format(PyExc_SystemError
, "module '%s' has no __dict__", 
2275                  PyModule_GetName(m
)); 
2278   if (PyDict_SetItemString(dict
, name
, o
)) 
2286 SWIG_Python_DestroyModule(void *vptr
) 
2288   swig_module_info 
*swig_module 
= (swig_module_info 
*) vptr
; 
2289   swig_type_info 
**types 
= swig_module
->types
; 
2291   for (i 
=0; i 
< swig_module
->size
; ++i
) { 
2292     swig_type_info 
*ty 
= types
[i
]; 
2294       PySwigClientData 
*data 
= (PySwigClientData 
*) ty
->clientdata
; 
2295       if (data
) PySwigClientData_Del(data
); 
2298   Py_DECREF(SWIG_This()); 
2302 SWIG_Python_SetModule(swig_module_info 
*swig_module
) { 
2303   static PyMethodDef swig_empty_runtime_method_table
[] = { {NULL
, NULL
, 0, NULL
} };/* Sentinel */ 
2305   PyObject 
*module = Py_InitModule((char*)"swig_runtime_data" SWIG_RUNTIME_VERSION
, 
2306                                    swig_empty_runtime_method_table
); 
2307   PyObject 
*pointer 
= PyCObject_FromVoidPtr((void *) swig_module
, SWIG_Python_DestroyModule
); 
2308   if (pointer 
&& module) { 
2309     PyModule_AddObject(module, (char*)"type_pointer" SWIG_TYPE_TABLE_NAME
, pointer
); 
2311     Py_XDECREF(pointer
); 
2315 /* The python cached type query */ 
2316 SWIGRUNTIME PyObject 
* 
2317 SWIG_Python_TypeCache() { 
2318   static PyObject 
*SWIG_STATIC_POINTER(cache
) = PyDict_New(); 
2322 SWIGRUNTIME swig_type_info 
* 
2323 SWIG_Python_TypeQuery(const char *type
) 
2325   PyObject 
*cache 
= SWIG_Python_TypeCache(); 
2326   PyObject 
*key 
= PyString_FromString(type
);  
2327   PyObject 
*obj 
= PyDict_GetItem(cache
, key
); 
2328   swig_type_info 
*descriptor
; 
2330     descriptor 
= (swig_type_info 
*) PyCObject_AsVoidPtr(obj
); 
2332     swig_module_info 
*swig_module 
= SWIG_Python_GetModule(); 
2333     descriptor 
= SWIG_TypeQueryModule(swig_module
, swig_module
, type
); 
2335       obj 
= PyCObject_FromVoidPtr(descriptor
, NULL
); 
2336       PyDict_SetItem(cache
, key
, obj
); 
2345    For backward compatibility only 
2347 #define SWIG_POINTER_EXCEPTION  0 
2348 #define SWIG_arg_fail(arg)      SWIG_Python_ArgFail(arg) 
2349 #define SWIG_MustGetPtr(p, type, argnum, flags)  SWIG_Python_MustGetPtr(p, type, argnum, flags) 
2352 SWIG_Python_AddErrMesg(const char* mesg
, int infront
) 
2354   if (PyErr_Occurred()) { 
2356     PyObject 
*value 
= 0; 
2357     PyObject 
*traceback 
= 0; 
2358     PyErr_Fetch(&type
, &value
, &traceback
); 
2360       PyObject 
*old_str 
= PyObject_Str(value
); 
2364         PyErr_Format(type
, "%s %s", mesg
, PyString_AsString(old_str
)); 
2366         PyErr_Format(type
, "%s %s", PyString_AsString(old_str
), mesg
); 
2377 SWIG_Python_ArgFail(int argnum
) 
2379   if (PyErr_Occurred()) { 
2380     /* add information about failing argument */ 
2382     PyOS_snprintf(mesg
, sizeof(mesg
), "argument number %d:", argnum
); 
2383     return SWIG_Python_AddErrMesg(mesg
, 1); 
2389 SWIGRUNTIMEINLINE 
const char * 
2390 PySwigObject_GetDesc(PyObject 
*self
) 
2392   PySwigObject 
*v 
= (PySwigObject 
*)self
; 
2393   swig_type_info 
*ty 
= v 
? v
->ty 
: 0; 
2394   return ty 
? ty
->str 
: (char*)""; 
2398 SWIG_Python_TypeError(const char *type
, PyObject 
*obj
) 
2401 #if defined(SWIG_COBJECT_TYPES) 
2402     if (obj 
&& PySwigObject_Check(obj
)) { 
2403       const char *otype 
= (const char *) PySwigObject_GetDesc(obj
); 
2405         PyErr_Format(PyExc_TypeError
, "a '%s' is expected, 'PySwigObject(%s)' is received", 
2412       const char *otype 
= (obj 
? obj
->ob_type
->tp_name 
: 0);  
2414         PyObject 
*str 
= PyObject_Str(obj
); 
2415         const char *cstr 
= str 
? PyString_AsString(str
) : 0; 
2417           PyErr_Format(PyExc_TypeError
, "a '%s' is expected, '%s(%s)' is received", 
2420           PyErr_Format(PyExc_TypeError
, "a '%s' is expected, '%s' is received", 
2427     PyErr_Format(PyExc_TypeError
, "a '%s' is expected", type
); 
2429     PyErr_Format(PyExc_TypeError
, "unexpected type is received"); 
2434 /* Convert a pointer value, signal an exception on a type mismatch */ 
2436 SWIG_Python_MustGetPtr(PyObject 
*obj
, swig_type_info 
*ty
, int argnum
, int flags
) { 
2438   if (SWIG_Python_ConvertPtr(obj
, &result
, ty
, flags
) == -1) { 
2440     if (flags 
& SWIG_POINTER_EXCEPTION
) { 
2441       SWIG_Python_TypeError(SWIG_TypePrettyName(ty
), obj
); 
2442       SWIG_Python_ArgFail(argnum
); 
2458 #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)  
2460 #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else  
2464 /* -------- TYPES TABLE (BEGIN) -------- */ 
2466 #define SWIGTYPE_p_char swig_types[0] 
2467 #define SWIGTYPE_p_form_ops_t swig_types[1] 
2468 #define SWIGTYPE_p_int swig_types[2] 
2469 #define SWIGTYPE_p_unsigned_char swig_types[3] 
2470 #define SWIGTYPE_p_unsigned_int swig_types[4] 
2471 #define SWIGTYPE_p_unsigned_long swig_types[5] 
2472 #define SWIGTYPE_p_wxANIHandler swig_types[6] 
2473 #define SWIGTYPE_p_wxAcceleratorTable swig_types[7] 
2474 #define SWIGTYPE_p_wxActivateEvent swig_types[8] 
2475 #define SWIGTYPE_p_wxBMPHandler swig_types[9] 
2476 #define SWIGTYPE_p_wxBoxSizer swig_types[10] 
2477 #define SWIGTYPE_p_wxCURHandler swig_types[11] 
2478 #define SWIGTYPE_p_wxChildFocusEvent swig_types[12] 
2479 #define SWIGTYPE_p_wxClipboardTextEvent swig_types[13] 
2480 #define SWIGTYPE_p_wxCloseEvent swig_types[14] 
2481 #define SWIGTYPE_p_wxCommandEvent swig_types[15] 
2482 #define SWIGTYPE_p_wxContextMenuEvent swig_types[16] 
2483 #define SWIGTYPE_p_wxControl swig_types[17] 
2484 #define SWIGTYPE_p_wxControlWithItems swig_types[18] 
2485 #define SWIGTYPE_p_wxDateEvent swig_types[19] 
2486 #define SWIGTYPE_p_wxDisplayChangedEvent swig_types[20] 
2487 #define SWIGTYPE_p_wxDropFilesEvent swig_types[21] 
2488 #define SWIGTYPE_p_wxDuplexMode swig_types[22] 
2489 #define SWIGTYPE_p_wxEraseEvent swig_types[23] 
2490 #define SWIGTYPE_p_wxEvent swig_types[24] 
2491 #define SWIGTYPE_p_wxEvtHandler swig_types[25] 
2492 #define SWIGTYPE_p_wxFSFile swig_types[26] 
2493 #define SWIGTYPE_p_wxFileOffset swig_types[27] 
2494 #define SWIGTYPE_p_wxFileSystem swig_types[28] 
2495 #define SWIGTYPE_p_wxFlexGridSizer swig_types[29] 
2496 #define SWIGTYPE_p_wxFocusEvent swig_types[30] 
2497 #define SWIGTYPE_p_wxGBSizerItem swig_types[31] 
2498 #define SWIGTYPE_p_wxGIFHandler swig_types[32] 
2499 #define SWIGTYPE_p_wxGridBagSizer swig_types[33] 
2500 #define SWIGTYPE_p_wxGridSizer swig_types[34] 
2501 #define SWIGTYPE_p_wxICOHandler swig_types[35] 
2502 #define SWIGTYPE_p_wxIconizeEvent swig_types[36] 
2503 #define SWIGTYPE_p_wxIdleEvent swig_types[37] 
2504 #define SWIGTYPE_p_wxImage swig_types[38] 
2505 #define SWIGTYPE_p_wxImageHandler swig_types[39] 
2506 #define SWIGTYPE_p_wxIndividualLayoutConstraint swig_types[40] 
2507 #define SWIGTYPE_p_wxInitDialogEvent swig_types[41] 
2508 #define SWIGTYPE_p_wxJPEGHandler swig_types[42] 
2509 #define SWIGTYPE_p_wxKeyEvent swig_types[43] 
2510 #define SWIGTYPE_p_wxLayoutConstraints swig_types[44] 
2511 #define SWIGTYPE_p_wxMaximizeEvent swig_types[45] 
2512 #define SWIGTYPE_p_wxMediaCtrl swig_types[46] 
2513 #define SWIGTYPE_p_wxMediaEvent swig_types[47] 
2514 #define SWIGTYPE_p_wxMenu swig_types[48] 
2515 #define SWIGTYPE_p_wxMenuBar swig_types[49] 
2516 #define SWIGTYPE_p_wxMenuEvent swig_types[50] 
2517 #define SWIGTYPE_p_wxMenuItem swig_types[51] 
2518 #define SWIGTYPE_p_wxMouseCaptureChangedEvent swig_types[52] 
2519 #define SWIGTYPE_p_wxMouseCaptureLostEvent swig_types[53] 
2520 #define SWIGTYPE_p_wxMouseEvent swig_types[54] 
2521 #define SWIGTYPE_p_wxMoveEvent swig_types[55] 
2522 #define SWIGTYPE_p_wxNavigationKeyEvent swig_types[56] 
2523 #define SWIGTYPE_p_wxNcPaintEvent swig_types[57] 
2524 #define SWIGTYPE_p_wxNotifyEvent swig_types[58] 
2525 #define SWIGTYPE_p_wxObject swig_types[59] 
2526 #define SWIGTYPE_p_wxPCXHandler swig_types[60] 
2527 #define SWIGTYPE_p_wxPNGHandler swig_types[61] 
2528 #define SWIGTYPE_p_wxPNMHandler swig_types[62] 
2529 #define SWIGTYPE_p_wxPaintEvent swig_types[63] 
2530 #define SWIGTYPE_p_wxPaletteChangedEvent swig_types[64] 
2531 #define SWIGTYPE_p_wxPaperSize swig_types[65] 
2532 #define SWIGTYPE_p_wxPyApp swig_types[66] 
2533 #define SWIGTYPE_p_wxPyCommandEvent swig_types[67] 
2534 #define SWIGTYPE_p_wxPyEvent swig_types[68] 
2535 #define SWIGTYPE_p_wxPyImageHandler swig_types[69] 
2536 #define SWIGTYPE_p_wxPySizer swig_types[70] 
2537 #define SWIGTYPE_p_wxPyValidator swig_types[71] 
2538 #define SWIGTYPE_p_wxQueryNewPaletteEvent swig_types[72] 
2539 #define SWIGTYPE_p_wxScrollEvent swig_types[73] 
2540 #define SWIGTYPE_p_wxScrollWinEvent swig_types[74] 
2541 #define SWIGTYPE_p_wxSetCursorEvent swig_types[75] 
2542 #define SWIGTYPE_p_wxShowEvent swig_types[76] 
2543 #define SWIGTYPE_p_wxSizeEvent swig_types[77] 
2544 #define SWIGTYPE_p_wxSizer swig_types[78] 
2545 #define SWIGTYPE_p_wxSizerItem swig_types[79] 
2546 #define SWIGTYPE_p_wxStaticBoxSizer swig_types[80] 
2547 #define SWIGTYPE_p_wxStdDialogButtonSizer swig_types[81] 
2548 #define SWIGTYPE_p_wxSysColourChangedEvent swig_types[82] 
2549 #define SWIGTYPE_p_wxTGAHandler swig_types[83] 
2550 #define SWIGTYPE_p_wxTIFFHandler swig_types[84] 
2551 #define SWIGTYPE_p_wxUpdateUIEvent swig_types[85] 
2552 #define SWIGTYPE_p_wxValidator swig_types[86] 
2553 #define SWIGTYPE_p_wxWindow swig_types[87] 
2554 #define SWIGTYPE_p_wxWindowCreateEvent swig_types[88] 
2555 #define SWIGTYPE_p_wxWindowDestroyEvent swig_types[89] 
2556 #define SWIGTYPE_p_wxXPMHandler swig_types[90] 
2557 static swig_type_info 
*swig_types
[92]; 
2558 static swig_module_info swig_module 
= {swig_types
, 91, 0, 0, 0, 0}; 
2559 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) 
2560 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) 
2562 /* -------- TYPES TABLE (END) -------- */ 
2564 #if (PY_VERSION_HEX <= 0x02000000) 
2565 # if !defined(SWIG_PYTHON_CLASSIC) 
2566 #  error "This python version requires to use swig with the '-classic' option" 
2569 #if (PY_VERSION_HEX <= 0x02020000) 
2570 # error "This python version requires to use swig with the '-nomodern' option" 
2572 #if (PY_VERSION_HEX <= 0x02020000) 
2573 # error "This python version requires to use swig with the '-nomodernargs' option" 
2576 # error "This python version requires to use swig with the '-nofastunpack' option" 
2579 /*----------------------------------------------- 
2580               @(target):= _media.so 
2581   ------------------------------------------------*/ 
2582 #define SWIG_init    init_media 
2584 #define SWIG_name    "_media" 
2586 #define SWIGVERSION 0x010329  
2589 #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))  
2590 #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))  
2593 #include <stdexcept> 
2597   class PyObject_ptr 
{ 
2602     PyObject_ptr() :_obj(0) 
2606     PyObject_ptr(const PyObject_ptr
& item
) : _obj(item
._obj
) 
2611     PyObject_ptr(PyObject 
*obj
, bool initial_ref 
= true) :_obj(obj
) 
2613       if (initial_ref
) Py_XINCREF(_obj
); 
2616     PyObject_ptr 
& operator=(const PyObject_ptr
& item
)  
2618       Py_XINCREF(item
._obj
); 
2629     operator PyObject 
*() const 
2634     PyObject 
*operator->() const 
2643   struct PyObject_var 
: PyObject_ptr 
{ 
2644     PyObject_var(PyObject
* obj 
= 0) : PyObject_ptr(obj
, false) { } 
2646     PyObject_var 
& operator = (PyObject
* obj
) 
2656 #include "wx/wxPython/wxPython.h" 
2657 #include "wx/wxPython/pyclasses.h" 
2659 #include <wx/mediactrl.h> 
2663 #if !wxUSE_MEDIACTRL 
2666     wxMEDIASTATE_STOPPED
=0, 
2667     wxMEDIASTATE_PAUSED
=0, 
2668     wxMEDIASTATE_PLAYING
=0 
2671 enum wxMediaCtrlPlayerControls
 
2673     wxMEDIACTRLPLAYERCONTROLS_NONE
, 
2674     wxMEDIACTRLPLAYERCONTROLS_STEP
, 
2675     wxMEDIACTRLPLAYERCONTROLS_VOLUME
, 
2676     wxMEDIACTRLPLAYERCONTROLS_DEFAULT
 
2679 static wxString 
wxMEDIABACKEND_DIRECTSHOW(wxEmptyString
); 
2680 static wxString 
wxMEDIABACKEND_MCI       (wxEmptyString
); 
2681 static wxString 
wxMEDIABACKEND_QUICKTIME (wxEmptyString
); 
2682 static wxString 
wxMEDIABACKEND_GSTREAMER (wxEmptyString
); 
2683 static wxString 
wxMEDIABACKEND_REALPLAYER(wxEmptyString
); 
2684 static wxString 
wxMEDIABACKEND_WMP10     (wxEmptyString
); 
2687 class wxMediaEvent 
: public wxNotifyEvent
 
2690     wxMediaEvent(wxEventType
, int )    { wxPyRaiseNotImplemented(); } 
2693 class wxMediaCtrl 
: public wxControl
 
2696     wxMediaCtrl()    { wxPyRaiseNotImplemented(); } 
2698     wxMediaCtrl(wxWindow
* , wxWindowID 
, 
2704                 const wxValidator
& , 
2705                 const wxString
& ) { wxPyRaiseNotImplemented(); } 
2707     bool Create(wxWindow
* , wxWindowID 
, 
2713                 const wxValidator
& , 
2714                 const wxString
& ) { return false; } 
2716     bool Play() { return false; } 
2717     bool Pause() { return false; } 
2718     bool Stop() { return false; } 
2720     wxMediaState 
GetState() { return wxMEDIASTATE_STOPPED
; } 
2722     double GetPlaybackRate()  { return 0.0; } 
2723     bool SetPlaybackRate(double dRate
) { return false; } 
2725     wxFileOffset 
Seek(wxFileOffset where
, wxSeekMode mode 
= wxFromStart
) 
2728     wxFileOffset 
Tell()    { return 0; } 
2729     wxFileOffset 
Length()    { return 0; } 
2731     double GetVolume() { return 0.0; } 
2732     bool   SetVolume(double dVolume
) { return false; } 
2734     bool    ShowPlayerControls( 
2735         wxMediaCtrlPlayerControls flags 
= wxMEDIACTRLPLAYERCONTROLS_DEFAULT
) 
2738     bool Load(const wxString
& fileName
) { return false; } 
2739     bool LoadURI(const wxString
& fileName
) { return false; } 
2740     bool LoadURIWithProxy(const wxString
& fileName
, const wxString
& proxy
) { return false; } 
2742     wxFileOffset 
GetDownloadProgress() { return 0; } 
2743     wxFileOffset 
GetDownloadTotal()    { return 0; } 
2747 const wxEventType wxEVT_MEDIA_FINISHED 
= 0; 
2748 const wxEventType wxEVT_MEDIA_STOP 
= 0; 
2749 const wxEventType wxEVT_MEDIA_LOADED 
= 0; 
2750 const wxEventType wxEVT_MEDIA_STATECHANGED 
= 0; 
2751 const wxEventType wxEVT_MEDIA_PLAY 
= 0; 
2752 const wxEventType wxEVT_MEDIA_PAUSE 
= 0; 
2757   #define SWIG_From_long   PyInt_FromLong  
2760 SWIGINTERNINLINE PyObject 
* 
2761 SWIG_From_int  (int value
) 
2763   return SWIG_From_long  (value
); 
2766  static const wxString 
wxPyMEDIABACKEND_DIRECTSHOW(wxMEDIABACKEND_DIRECTSHOW
);  
2767  static const wxString 
wxPyMEDIABACKEND_MCI(wxMEDIABACKEND_MCI
);  
2768  static const wxString 
wxPyMEDIABACKEND_QUICKTIME(wxMEDIABACKEND_QUICKTIME
);  
2769  static const wxString 
wxPyMEDIABACKEND_GSTREAMER(wxMEDIABACKEND_GSTREAMER
);  
2770  static const wxString 
wxPyMEDIABACKEND_REALPLAYER(wxMEDIABACKEND_REALPLAYER
);  
2771  static const wxString 
wxPyMEDIABACKEND_WMP10(wxMEDIABACKEND_WMP10
);  
2775 # define LLONG_MIN      LONG_LONG_MIN 
2778 # define LLONG_MAX      LONG_LONG_MAX 
2781 # define ULLONG_MAX     ULONG_LONG_MAX 
2786 SWIG_AsVal_long (PyObject
* obj
, long* val
) 
2788     if (PyNumber_Check(obj
)) { 
2789         if (val
) *val 
= PyInt_AsLong(obj
); 
2792     return SWIG_TypeError
; 
2797 SWIG_AsVal_int (PyObject 
* obj
, int *val
) 
2800   int res 
= SWIG_AsVal_long (obj
, &v
); 
2801   if (SWIG_IsOK(res
)) { 
2802     if ((v 
< INT_MIN 
|| v 
> INT_MAX
)) { 
2803       return SWIG_OverflowError
; 
2805       if (val
) *val 
= static_cast< int >(v
); 
2811  static const wxString 
wxPyEmptyString(wxEmptyString
);  
2812  static const wxString 
wxPyMediaCtrlNameStr(wxT("mediaCtrl"));  
2814   #define SWIG_From_double   PyFloat_FromDouble  
2818 SWIG_AsVal_double (PyObject 
*obj
, double* val
) 
2820     if (PyNumber_Check(obj
)) { 
2821         if (val
) *val 
= PyFloat_AsDouble(obj
); 
2824     return SWIG_TypeError
; 
2830 SWIGINTERN 
int MEDIABACKEND_DIRECTSHOW_set(PyObject 
*) { 
2831   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_DIRECTSHOW is read-only."); 
2836 SWIGINTERN PyObject 
*MEDIABACKEND_DIRECTSHOW_get(void) { 
2837   PyObject 
*pyobj 
= 0; 
2841     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_DIRECTSHOW
)->c_str(), (&wxPyMEDIABACKEND_DIRECTSHOW
)->Len()); 
2843     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_DIRECTSHOW
)->c_str(), (&wxPyMEDIABACKEND_DIRECTSHOW
)->Len()); 
2850 SWIGINTERN 
int MEDIABACKEND_MCI_set(PyObject 
*) { 
2851   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_MCI is read-only."); 
2856 SWIGINTERN PyObject 
*MEDIABACKEND_MCI_get(void) { 
2857   PyObject 
*pyobj 
= 0; 
2861     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_MCI
)->c_str(), (&wxPyMEDIABACKEND_MCI
)->Len()); 
2863     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_MCI
)->c_str(), (&wxPyMEDIABACKEND_MCI
)->Len()); 
2870 SWIGINTERN 
int MEDIABACKEND_QUICKTIME_set(PyObject 
*) { 
2871   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_QUICKTIME is read-only."); 
2876 SWIGINTERN PyObject 
*MEDIABACKEND_QUICKTIME_get(void) { 
2877   PyObject 
*pyobj 
= 0; 
2881     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_QUICKTIME
)->c_str(), (&wxPyMEDIABACKEND_QUICKTIME
)->Len()); 
2883     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_QUICKTIME
)->c_str(), (&wxPyMEDIABACKEND_QUICKTIME
)->Len()); 
2890 SWIGINTERN 
int MEDIABACKEND_GSTREAMER_set(PyObject 
*) { 
2891   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_GSTREAMER is read-only."); 
2896 SWIGINTERN PyObject 
*MEDIABACKEND_GSTREAMER_get(void) { 
2897   PyObject 
*pyobj 
= 0; 
2901     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_GSTREAMER
)->c_str(), (&wxPyMEDIABACKEND_GSTREAMER
)->Len()); 
2903     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_GSTREAMER
)->c_str(), (&wxPyMEDIABACKEND_GSTREAMER
)->Len()); 
2910 SWIGINTERN 
int MEDIABACKEND_REALPLAYER_set(PyObject 
*) { 
2911   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_REALPLAYER is read-only."); 
2916 SWIGINTERN PyObject 
*MEDIABACKEND_REALPLAYER_get(void) { 
2917   PyObject 
*pyobj 
= 0; 
2921     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_REALPLAYER
)->c_str(), (&wxPyMEDIABACKEND_REALPLAYER
)->Len()); 
2923     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_REALPLAYER
)->c_str(), (&wxPyMEDIABACKEND_REALPLAYER
)->Len()); 
2930 SWIGINTERN 
int MEDIABACKEND_WMP10_set(PyObject 
*) { 
2931   SWIG_Error(SWIG_AttributeError
,"Variable MEDIABACKEND_WMP10 is read-only."); 
2936 SWIGINTERN PyObject 
*MEDIABACKEND_WMP10_get(void) { 
2937   PyObject 
*pyobj 
= 0; 
2941     pyobj 
= PyUnicode_FromWideChar((&wxPyMEDIABACKEND_WMP10
)->c_str(), (&wxPyMEDIABACKEND_WMP10
)->Len()); 
2943     pyobj 
= PyString_FromStringAndSize((&wxPyMEDIABACKEND_WMP10
)->c_str(), (&wxPyMEDIABACKEND_WMP10
)->Len()); 
2950 SWIGINTERN PyObject 
*_wrap_new_MediaEvent(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
2951   PyObject 
*resultobj 
= 0; 
2952   wxEventType arg1 
= (wxEventType
) wxEVT_NULL 
; 
2953   int arg2 
= (int) 0 ; 
2954   wxMediaEvent 
*result 
= 0 ; 
2959   PyObject 
* obj0 
= 0 ; 
2960   PyObject 
* obj1 
= 0 ; 
2961   char *  kwnames
[] = { 
2962     (char *) "commandType",(char *) "id", NULL 
 
2965   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"|OO:new_MediaEvent",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
2967     ecode1 
= SWIG_AsVal_int(obj0
, &val1
); 
2968     if (!SWIG_IsOK(ecode1
)) { 
2969       SWIG_exception_fail(SWIG_ArgError(ecode1
), "in method '" "new_MediaEvent" "', expected argument " "1"" of type '" "wxEventType""'"); 
2971     arg1 
= static_cast< wxEventType 
>(val1
); 
2974     ecode2 
= SWIG_AsVal_int(obj1
, &val2
); 
2975     if (!SWIG_IsOK(ecode2
)) { 
2976       SWIG_exception_fail(SWIG_ArgError(ecode2
), "in method '" "new_MediaEvent" "', expected argument " "2"" of type '" "int""'"); 
2978     arg2 
= static_cast< int >(val2
); 
2981     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
2982     result 
= (wxMediaEvent 
*)new wxMediaEvent(arg1
,arg2
); 
2983     wxPyEndAllowThreads(__tstate
); 
2984     if (PyErr_Occurred()) SWIG_fail
; 
2986   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxMediaEvent
, SWIG_POINTER_NEW 
|  0 ); 
2993 SWIGINTERN PyObject 
*MediaEvent_swigregister(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
2995   if (!SWIG_Python_UnpackTuple(args
,(char*)"swigregister", 1, 1,&obj
)) return NULL
; 
2996   SWIG_TypeNewClientData(SWIGTYPE_p_wxMediaEvent
, SWIG_NewClientData(obj
)); 
2997   return SWIG_Py_Void(); 
3000 SWIGINTERN PyObject 
*MediaEvent_swiginit(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3001   return SWIG_Python_InitShadowInstance(args
); 
3004 SWIGINTERN 
int MediaCtrlNameStr_set(PyObject 
*) { 
3005   SWIG_Error(SWIG_AttributeError
,"Variable MediaCtrlNameStr is read-only."); 
3010 SWIGINTERN PyObject 
*MediaCtrlNameStr_get(void) { 
3011   PyObject 
*pyobj 
= 0; 
3015     pyobj 
= PyUnicode_FromWideChar((&wxPyMediaCtrlNameStr
)->c_str(), (&wxPyMediaCtrlNameStr
)->Len()); 
3017     pyobj 
= PyString_FromStringAndSize((&wxPyMediaCtrlNameStr
)->c_str(), (&wxPyMediaCtrlNameStr
)->Len()); 
3024 SWIGINTERN PyObject 
*_wrap_new_MediaCtrl(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3025   PyObject 
*resultobj 
= 0; 
3026   wxWindow 
*arg1 
= (wxWindow 
*) 0 ; 
3027   int arg2 
= (int) -1 ; 
3028   wxString 
const &arg3_defvalue 
= wxPyEmptyString 
; 
3029   wxString 
*arg3 
= (wxString 
*) &arg3_defvalue 
; 
3030   wxPoint 
const &arg4_defvalue 
= wxDefaultPosition 
; 
3031   wxPoint 
*arg4 
= (wxPoint 
*) &arg4_defvalue 
; 
3032   wxSize 
const &arg5_defvalue 
= wxDefaultSize 
; 
3033   wxSize 
*arg5 
= (wxSize 
*) &arg5_defvalue 
; 
3034   long arg6 
= (long) 0 ; 
3035   wxString 
const &arg7_defvalue 
= wxPyEmptyString 
; 
3036   wxString 
*arg7 
= (wxString 
*) &arg7_defvalue 
; 
3037   wxValidator 
const &arg8_defvalue 
= wxDefaultValidator 
; 
3038   wxValidator 
*arg8 
= (wxValidator 
*) &arg8_defvalue 
; 
3039   wxString 
const &arg9_defvalue 
= wxPyMediaCtrlNameStr 
; 
3040   wxString 
*arg9 
= (wxString 
*) &arg9_defvalue 
; 
3041   wxMediaCtrl 
*result 
= 0 ; 
3046   bool temp3 
= false ; 
3051   bool temp7 
= false ; 
3054   bool temp9 
= false ; 
3055   PyObject 
* obj0 
= 0 ; 
3056   PyObject 
* obj1 
= 0 ; 
3057   PyObject 
* obj2 
= 0 ; 
3058   PyObject 
* obj3 
= 0 ; 
3059   PyObject 
* obj4 
= 0 ; 
3060   PyObject 
* obj5 
= 0 ; 
3061   PyObject 
* obj6 
= 0 ; 
3062   PyObject 
* obj7 
= 0 ; 
3063   PyObject 
* obj8 
= 0 ; 
3064   char *  kwnames
[] = { 
3065     (char *) "parent",(char *) "id",(char *) "fileName",(char *) "pos",(char *) "size",(char *) "style",(char *) "szBackend",(char *) "validator",(char *) "name", NULL 
 
3068   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"O|OOOOOOOO:new_MediaCtrl",kwnames
,&obj0
,&obj1
,&obj2
,&obj3
,&obj4
,&obj5
,&obj6
,&obj7
,&obj8
)) SWIG_fail
; 
3069   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxWindow
, 0 |  0 ); 
3070   if (!SWIG_IsOK(res1
)) { 
3071     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "new_MediaCtrl" "', expected argument " "1"" of type '" "wxWindow *""'");  
3073   arg1 
= reinterpret_cast< wxWindow 
* >(argp1
); 
3075     ecode2 
= SWIG_AsVal_int(obj1
, &val2
); 
3076     if (!SWIG_IsOK(ecode2
)) { 
3077       SWIG_exception_fail(SWIG_ArgError(ecode2
), "in method '" "new_MediaCtrl" "', expected argument " "2"" of type '" "int""'"); 
3079     arg2 
= static_cast< int >(val2
); 
3083       arg3 
= wxString_in_helper(obj2
); 
3084       if (arg3 
== NULL
) SWIG_fail
; 
3091       if ( ! wxPoint_helper(obj3
, &arg4
)) SWIG_fail
; 
3097       if ( ! wxSize_helper(obj4
, &arg5
)) SWIG_fail
; 
3101     ecode6 
= SWIG_AsVal_long(obj5
, &val6
); 
3102     if (!SWIG_IsOK(ecode6
)) { 
3103       SWIG_exception_fail(SWIG_ArgError(ecode6
), "in method '" "new_MediaCtrl" "', expected argument " "6"" of type '" "long""'"); 
3105     arg6 
= static_cast< long >(val6
); 
3109       arg7 
= wxString_in_helper(obj6
); 
3110       if (arg7 
== NULL
) SWIG_fail
; 
3115     res8 
= SWIG_ConvertPtr(obj7
, &argp8
, SWIGTYPE_p_wxValidator
,  0  | 0); 
3116     if (!SWIG_IsOK(res8
)) { 
3117       SWIG_exception_fail(SWIG_ArgError(res8
), "in method '" "new_MediaCtrl" "', expected argument " "8"" of type '" "wxValidator const &""'");  
3120       SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "new_MediaCtrl" "', expected argument " "8"" of type '" "wxValidator const &""'");  
3122     arg8 
= reinterpret_cast< wxValidator 
* >(argp8
); 
3126       arg9 
= wxString_in_helper(obj8
); 
3127       if (arg9 
== NULL
) SWIG_fail
; 
3132     if (!wxPyCheckForApp()) SWIG_fail
; 
3133     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3134     result 
= (wxMediaCtrl 
*)new wxMediaCtrl(arg1
,arg2
,(wxString 
const &)*arg3
,(wxPoint 
const &)*arg4
,(wxSize 
const &)*arg5
,arg6
,(wxString 
const &)*arg7
,(wxValidator 
const &)*arg8
,(wxString 
const &)*arg9
); 
3135     wxPyEndAllowThreads(__tstate
); 
3136     if (PyErr_Occurred()) SWIG_fail
; 
3138   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxMediaCtrl
, SWIG_POINTER_NEW 
|  0 ); 
3169 SWIGINTERN PyObject 
*_wrap_new_PreMediaCtrl(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3170   PyObject 
*resultobj 
= 0; 
3171   wxMediaCtrl 
*result 
= 0 ; 
3173   if (!SWIG_Python_UnpackTuple(args
,"new_PreMediaCtrl",0,0,0)) SWIG_fail
; 
3175     if (!wxPyCheckForApp()) SWIG_fail
; 
3176     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3177     result 
= (wxMediaCtrl 
*)new wxMediaCtrl(); 
3178     wxPyEndAllowThreads(__tstate
); 
3179     if (PyErr_Occurred()) SWIG_fail
; 
3181   resultobj 
= SWIG_NewPointerObj(SWIG_as_voidptr(result
), SWIGTYPE_p_wxMediaCtrl
, SWIG_POINTER_OWN 
|  0 ); 
3188 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Create(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3189   PyObject 
*resultobj 
= 0; 
3190   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3191   wxWindow 
*arg2 
= (wxWindow 
*) 0 ; 
3192   int arg3 
= (int) -1 ; 
3193   wxString 
const &arg4_defvalue 
= wxPyEmptyString 
; 
3194   wxString 
*arg4 
= (wxString 
*) &arg4_defvalue 
; 
3195   wxPoint 
const &arg5_defvalue 
= wxDefaultPosition 
; 
3196   wxPoint 
*arg5 
= (wxPoint 
*) &arg5_defvalue 
; 
3197   wxSize 
const &arg6_defvalue 
= wxDefaultSize 
; 
3198   wxSize 
*arg6 
= (wxSize 
*) &arg6_defvalue 
; 
3199   long arg7 
= (long) 0 ; 
3200   wxString 
const &arg8_defvalue 
= wxPyEmptyString 
; 
3201   wxString 
*arg8 
= (wxString 
*) &arg8_defvalue 
; 
3202   wxValidator 
const &arg9_defvalue 
= wxDefaultValidator 
; 
3203   wxValidator 
*arg9 
= (wxValidator 
*) &arg9_defvalue 
; 
3204   wxString 
const &arg10_defvalue 
= wxPyMediaCtrlNameStr 
; 
3205   wxString 
*arg10 
= (wxString 
*) &arg10_defvalue 
; 
3213   bool temp4 
= false ; 
3218   bool temp8 
= false ; 
3221   bool temp10 
= false ; 
3222   PyObject 
* obj0 
= 0 ; 
3223   PyObject 
* obj1 
= 0 ; 
3224   PyObject 
* obj2 
= 0 ; 
3225   PyObject 
* obj3 
= 0 ; 
3226   PyObject 
* obj4 
= 0 ; 
3227   PyObject 
* obj5 
= 0 ; 
3228   PyObject 
* obj6 
= 0 ; 
3229   PyObject 
* obj7 
= 0 ; 
3230   PyObject 
* obj8 
= 0 ; 
3231   PyObject 
* obj9 
= 0 ; 
3232   char *  kwnames
[] = { 
3233     (char *) "self",(char *) "parent",(char *) "id",(char *) "fileName",(char *) "pos",(char *) "size",(char *) "style",(char *) "szBackend",(char *) "validator",(char *) "name", NULL 
 
3236   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO|OOOOOOOO:MediaCtrl_Create",kwnames
,&obj0
,&obj1
,&obj2
,&obj3
,&obj4
,&obj5
,&obj6
,&obj7
,&obj8
,&obj9
)) SWIG_fail
; 
3237   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3238   if (!SWIG_IsOK(res1
)) { 
3239     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Create" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3241   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3242   res2 
= SWIG_ConvertPtr(obj1
, &argp2
,SWIGTYPE_p_wxWindow
, 0 |  0 ); 
3243   if (!SWIG_IsOK(res2
)) { 
3244     SWIG_exception_fail(SWIG_ArgError(res2
), "in method '" "MediaCtrl_Create" "', expected argument " "2"" of type '" "wxWindow *""'");  
3246   arg2 
= reinterpret_cast< wxWindow 
* >(argp2
); 
3248     ecode3 
= SWIG_AsVal_int(obj2
, &val3
); 
3249     if (!SWIG_IsOK(ecode3
)) { 
3250       SWIG_exception_fail(SWIG_ArgError(ecode3
), "in method '" "MediaCtrl_Create" "', expected argument " "3"" of type '" "int""'"); 
3252     arg3 
= static_cast< int >(val3
); 
3256       arg4 
= wxString_in_helper(obj3
); 
3257       if (arg4 
== NULL
) SWIG_fail
; 
3264       if ( ! wxPoint_helper(obj4
, &arg5
)) SWIG_fail
; 
3270       if ( ! wxSize_helper(obj5
, &arg6
)) SWIG_fail
; 
3274     ecode7 
= SWIG_AsVal_long(obj6
, &val7
); 
3275     if (!SWIG_IsOK(ecode7
)) { 
3276       SWIG_exception_fail(SWIG_ArgError(ecode7
), "in method '" "MediaCtrl_Create" "', expected argument " "7"" of type '" "long""'"); 
3278     arg7 
= static_cast< long >(val7
); 
3282       arg8 
= wxString_in_helper(obj7
); 
3283       if (arg8 
== NULL
) SWIG_fail
; 
3288     res9 
= SWIG_ConvertPtr(obj8
, &argp9
, SWIGTYPE_p_wxValidator
,  0  | 0); 
3289     if (!SWIG_IsOK(res9
)) { 
3290       SWIG_exception_fail(SWIG_ArgError(res9
), "in method '" "MediaCtrl_Create" "', expected argument " "9"" of type '" "wxValidator const &""'");  
3293       SWIG_exception_fail(SWIG_ValueError
, "invalid null reference " "in method '" "MediaCtrl_Create" "', expected argument " "9"" of type '" "wxValidator const &""'");  
3295     arg9 
= reinterpret_cast< wxValidator 
* >(argp9
); 
3299       arg10 
= wxString_in_helper(obj9
); 
3300       if (arg10 
== NULL
) SWIG_fail
; 
3305     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3306     result 
= (bool)(arg1
)->Create(arg2
,arg3
,(wxString 
const &)*arg4
,(wxPoint 
const &)*arg5
,(wxSize 
const &)*arg6
,arg7
,(wxString 
const &)*arg8
,(wxValidator 
const &)*arg9
,(wxString 
const &)*arg10
); 
3307     wxPyEndAllowThreads(__tstate
); 
3308     if (PyErr_Occurred()) SWIG_fail
; 
3311     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3343 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Play(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3344   PyObject 
*resultobj 
= 0; 
3345   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3349   PyObject 
*swig_obj
[1] ; 
3351   if (!args
) SWIG_fail
; 
3353   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3354   if (!SWIG_IsOK(res1
)) { 
3355     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Play" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3357   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3359     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3360     result 
= (bool)(arg1
)->Play(); 
3361     wxPyEndAllowThreads(__tstate
); 
3362     if (PyErr_Occurred()) SWIG_fail
; 
3365     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3373 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Pause(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3374   PyObject 
*resultobj 
= 0; 
3375   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3379   PyObject 
*swig_obj
[1] ; 
3381   if (!args
) SWIG_fail
; 
3383   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3384   if (!SWIG_IsOK(res1
)) { 
3385     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Pause" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3387   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3389     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3390     result 
= (bool)(arg1
)->Pause(); 
3391     wxPyEndAllowThreads(__tstate
); 
3392     if (PyErr_Occurred()) SWIG_fail
; 
3395     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3403 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Stop(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3404   PyObject 
*resultobj 
= 0; 
3405   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3409   PyObject 
*swig_obj
[1] ; 
3411   if (!args
) SWIG_fail
; 
3413   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3414   if (!SWIG_IsOK(res1
)) { 
3415     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Stop" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3417   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3419     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3420     result 
= (bool)(arg1
)->Stop(); 
3421     wxPyEndAllowThreads(__tstate
); 
3422     if (PyErr_Occurred()) SWIG_fail
; 
3425     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3433 SWIGINTERN PyObject 
*_wrap_MediaCtrl_GetState(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3434   PyObject 
*resultobj 
= 0; 
3435   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3436   wxMediaState result
; 
3439   PyObject 
*swig_obj
[1] ; 
3441   if (!args
) SWIG_fail
; 
3443   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3444   if (!SWIG_IsOK(res1
)) { 
3445     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_GetState" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3447   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3449     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3450     result 
= (wxMediaState
)(arg1
)->GetState(); 
3451     wxPyEndAllowThreads(__tstate
); 
3452     if (PyErr_Occurred()) SWIG_fail
; 
3454   resultobj 
= SWIG_From_int(static_cast< int >(result
)); 
3461 SWIGINTERN PyObject 
*_wrap_MediaCtrl_GetPlaybackRate(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3462   PyObject 
*resultobj 
= 0; 
3463   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3467   PyObject 
*swig_obj
[1] ; 
3469   if (!args
) SWIG_fail
; 
3471   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3472   if (!SWIG_IsOK(res1
)) { 
3473     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_GetPlaybackRate" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3475   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3477     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3478     result 
= (double)(arg1
)->GetPlaybackRate(); 
3479     wxPyEndAllowThreads(__tstate
); 
3480     if (PyErr_Occurred()) SWIG_fail
; 
3482   resultobj 
= SWIG_From_double(static_cast< double >(result
)); 
3489 SWIGINTERN PyObject 
*_wrap_MediaCtrl_SetPlaybackRate(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3490   PyObject 
*resultobj 
= 0; 
3491   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3498   PyObject 
* obj0 
= 0 ; 
3499   PyObject 
* obj1 
= 0 ; 
3500   char *  kwnames
[] = { 
3501     (char *) "self",(char *) "dRate", NULL 
 
3504   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO:MediaCtrl_SetPlaybackRate",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
3505   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3506   if (!SWIG_IsOK(res1
)) { 
3507     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_SetPlaybackRate" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3509   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3510   ecode2 
= SWIG_AsVal_double(obj1
, &val2
); 
3511   if (!SWIG_IsOK(ecode2
)) { 
3512     SWIG_exception_fail(SWIG_ArgError(ecode2
), "in method '" "MediaCtrl_SetPlaybackRate" "', expected argument " "2"" of type '" "double""'"); 
3514   arg2 
= static_cast< double >(val2
); 
3516     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3517     result 
= (bool)(arg1
)->SetPlaybackRate(arg2
); 
3518     wxPyEndAllowThreads(__tstate
); 
3519     if (PyErr_Occurred()) SWIG_fail
; 
3522     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3530 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Seek(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3531   PyObject 
*resultobj 
= 0; 
3532   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3534   wxSeekMode arg3 
= (wxSeekMode
) wxFromStart 
; 
3535   wxFileOffset result
; 
3540   PyObject 
* obj0 
= 0 ; 
3541   PyObject 
* obj1 
= 0 ; 
3542   PyObject 
* obj2 
= 0 ; 
3543   char *  kwnames
[] = { 
3544     (char *) "self",(char *) "where",(char *) "mode", NULL 
 
3547   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO|O:MediaCtrl_Seek",kwnames
,&obj0
,&obj1
,&obj2
)) SWIG_fail
; 
3548   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3549   if (!SWIG_IsOK(res1
)) { 
3550     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Seek" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3552   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3554     if (sizeof(wxFileOffset
) > sizeof(long)) 
3555     arg2 
= PyLong_AsLongLong(obj1
); 
3557     arg2 
= PyInt_AsLong(obj1
); 
3560     ecode3 
= SWIG_AsVal_int(obj2
, &val3
); 
3561     if (!SWIG_IsOK(ecode3
)) { 
3562       SWIG_exception_fail(SWIG_ArgError(ecode3
), "in method '" "MediaCtrl_Seek" "', expected argument " "3"" of type '" "wxSeekMode""'"); 
3564     arg3 
= static_cast< wxSeekMode 
>(val3
); 
3567     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3568     result 
= (arg1
)->Seek(arg2
,arg3
); 
3569     wxPyEndAllowThreads(__tstate
); 
3570     if (PyErr_Occurred()) SWIG_fail
; 
3573     if (sizeof(wxFileOffset
) > sizeof(long)) 
3574     resultobj 
= PyLong_FromLongLong(result
); 
3576     resultobj 
= PyInt_FromLong(result
); 
3584 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Tell(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3585   PyObject 
*resultobj 
= 0; 
3586   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3587   wxFileOffset result
; 
3590   PyObject 
*swig_obj
[1] ; 
3592   if (!args
) SWIG_fail
; 
3594   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3595   if (!SWIG_IsOK(res1
)) { 
3596     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Tell" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3598   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3600     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3601     result 
= (arg1
)->Tell(); 
3602     wxPyEndAllowThreads(__tstate
); 
3603     if (PyErr_Occurred()) SWIG_fail
; 
3606     if (sizeof(wxFileOffset
) > sizeof(long)) 
3607     resultobj 
= PyLong_FromLongLong(result
); 
3609     resultobj 
= PyInt_FromLong(result
); 
3617 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Length(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3618   PyObject 
*resultobj 
= 0; 
3619   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3620   wxFileOffset result
; 
3623   PyObject 
*swig_obj
[1] ; 
3625   if (!args
) SWIG_fail
; 
3627   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3628   if (!SWIG_IsOK(res1
)) { 
3629     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Length" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3631   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3633     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3634     result 
= (arg1
)->Length(); 
3635     wxPyEndAllowThreads(__tstate
); 
3636     if (PyErr_Occurred()) SWIG_fail
; 
3639     if (sizeof(wxFileOffset
) > sizeof(long)) 
3640     resultobj 
= PyLong_FromLongLong(result
); 
3642     resultobj 
= PyInt_FromLong(result
); 
3650 SWIGINTERN PyObject 
*_wrap_MediaCtrl_GetVolume(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3651   PyObject 
*resultobj 
= 0; 
3652   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3656   PyObject 
*swig_obj
[1] ; 
3658   if (!args
) SWIG_fail
; 
3660   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3661   if (!SWIG_IsOK(res1
)) { 
3662     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_GetVolume" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3664   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3666     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3667     result 
= (double)(arg1
)->GetVolume(); 
3668     wxPyEndAllowThreads(__tstate
); 
3669     if (PyErr_Occurred()) SWIG_fail
; 
3671   resultobj 
= SWIG_From_double(static_cast< double >(result
)); 
3678 SWIGINTERN PyObject 
*_wrap_MediaCtrl_SetVolume(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3679   PyObject 
*resultobj 
= 0; 
3680   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3687   PyObject 
* obj0 
= 0 ; 
3688   PyObject 
* obj1 
= 0 ; 
3689   char *  kwnames
[] = { 
3690     (char *) "self",(char *) "dVolume", NULL 
 
3693   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO:MediaCtrl_SetVolume",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
3694   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3695   if (!SWIG_IsOK(res1
)) { 
3696     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_SetVolume" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3698   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3699   ecode2 
= SWIG_AsVal_double(obj1
, &val2
); 
3700   if (!SWIG_IsOK(ecode2
)) { 
3701     SWIG_exception_fail(SWIG_ArgError(ecode2
), "in method '" "MediaCtrl_SetVolume" "', expected argument " "2"" of type '" "double""'"); 
3703   arg2 
= static_cast< double >(val2
); 
3705     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3706     result 
= (bool)(arg1
)->SetVolume(arg2
); 
3707     wxPyEndAllowThreads(__tstate
); 
3708     if (PyErr_Occurred()) SWIG_fail
; 
3711     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3719 SWIGINTERN PyObject 
*_wrap_MediaCtrl_ShowPlayerControls(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3720   PyObject 
*resultobj 
= 0; 
3721   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3722   wxMediaCtrlPlayerControls arg2 
= (wxMediaCtrlPlayerControls
) wxMEDIACTRLPLAYERCONTROLS_DEFAULT 
; 
3728   PyObject 
* obj0 
= 0 ; 
3729   PyObject 
* obj1 
= 0 ; 
3730   char *  kwnames
[] = { 
3731     (char *) "self",(char *) "flags", NULL 
 
3734   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"O|O:MediaCtrl_ShowPlayerControls",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
3735   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3736   if (!SWIG_IsOK(res1
)) { 
3737     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_ShowPlayerControls" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3739   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3741     ecode2 
= SWIG_AsVal_int(obj1
, &val2
); 
3742     if (!SWIG_IsOK(ecode2
)) { 
3743       SWIG_exception_fail(SWIG_ArgError(ecode2
), "in method '" "MediaCtrl_ShowPlayerControls" "', expected argument " "2"" of type '" "wxMediaCtrlPlayerControls""'"); 
3745     arg2 
= static_cast< wxMediaCtrlPlayerControls 
>(val2
); 
3748     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3749     result 
= (bool)(arg1
)->ShowPlayerControls(arg2
); 
3750     wxPyEndAllowThreads(__tstate
); 
3751     if (PyErr_Occurred()) SWIG_fail
; 
3754     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3762 SWIGINTERN PyObject 
*_wrap_MediaCtrl_Load(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3763   PyObject 
*resultobj 
= 0; 
3764   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3765   wxString 
*arg2 
= 0 ; 
3769   bool temp2 
= false ; 
3770   PyObject 
* obj0 
= 0 ; 
3771   PyObject 
* obj1 
= 0 ; 
3772   char *  kwnames
[] = { 
3773     (char *) "self",(char *) "fileName", NULL 
 
3776   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO:MediaCtrl_Load",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
3777   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3778   if (!SWIG_IsOK(res1
)) { 
3779     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_Load" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3781   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3783     arg2 
= wxString_in_helper(obj1
); 
3784     if (arg2 
== NULL
) SWIG_fail
; 
3788     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3789     result 
= (bool)(arg1
)->Load((wxString 
const &)*arg2
); 
3790     wxPyEndAllowThreads(__tstate
); 
3791     if (PyErr_Occurred()) SWIG_fail
; 
3794     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3810 SWIGINTERN PyObject 
*_wrap_MediaCtrl_LoadURI(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3811   PyObject 
*resultobj 
= 0; 
3812   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3813   wxString 
*arg2 
= 0 ; 
3817   bool temp2 
= false ; 
3818   PyObject 
* obj0 
= 0 ; 
3819   PyObject 
* obj1 
= 0 ; 
3820   char *  kwnames
[] = { 
3821     (char *) "self",(char *) "fileName", NULL 
 
3824   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OO:MediaCtrl_LoadURI",kwnames
,&obj0
,&obj1
)) SWIG_fail
; 
3825   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3826   if (!SWIG_IsOK(res1
)) { 
3827     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_LoadURI" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3829   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3831     arg2 
= wxString_in_helper(obj1
); 
3832     if (arg2 
== NULL
) SWIG_fail
; 
3836     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3837     result 
= (bool)(arg1
)->LoadURI((wxString 
const &)*arg2
); 
3838     wxPyEndAllowThreads(__tstate
); 
3839     if (PyErr_Occurred()) SWIG_fail
; 
3842     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3858 SWIGINTERN PyObject 
*_wrap_MediaCtrl_LoadURIWithProxy(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
, PyObject 
*kwargs
) { 
3859   PyObject 
*resultobj 
= 0; 
3860   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3861   wxString 
*arg2 
= 0 ; 
3862   wxString 
*arg3 
= 0 ; 
3866   bool temp2 
= false ; 
3867   bool temp3 
= false ; 
3868   PyObject 
* obj0 
= 0 ; 
3869   PyObject 
* obj1 
= 0 ; 
3870   PyObject 
* obj2 
= 0 ; 
3871   char *  kwnames
[] = { 
3872     (char *) "self",(char *) "fileName",(char *) "proxy", NULL 
 
3875   if (!PyArg_ParseTupleAndKeywords(args
,kwargs
,(char *)"OOO:MediaCtrl_LoadURIWithProxy",kwnames
,&obj0
,&obj1
,&obj2
)) SWIG_fail
; 
3876   res1 
= SWIG_ConvertPtr(obj0
, &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3877   if (!SWIG_IsOK(res1
)) { 
3878     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_LoadURIWithProxy" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3880   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3882     arg2 
= wxString_in_helper(obj1
); 
3883     if (arg2 
== NULL
) SWIG_fail
; 
3887     arg3 
= wxString_in_helper(obj2
); 
3888     if (arg3 
== NULL
) SWIG_fail
; 
3892     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3893     result 
= (bool)(arg1
)->LoadURIWithProxy((wxString 
const &)*arg2
,(wxString 
const &)*arg3
); 
3894     wxPyEndAllowThreads(__tstate
); 
3895     if (PyErr_Occurred()) SWIG_fail
; 
3898     resultobj 
= result 
? Py_True 
: Py_False
; Py_INCREF(resultobj
); 
3922 SWIGINTERN PyObject 
*_wrap_MediaCtrl_GetDownloadProgress(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3923   PyObject 
*resultobj 
= 0; 
3924   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3925   wxFileOffset result
; 
3928   PyObject 
*swig_obj
[1] ; 
3930   if (!args
) SWIG_fail
; 
3932   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3933   if (!SWIG_IsOK(res1
)) { 
3934     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_GetDownloadProgress" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3936   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3938     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3939     result 
= (arg1
)->GetDownloadProgress(); 
3940     wxPyEndAllowThreads(__tstate
); 
3941     if (PyErr_Occurred()) SWIG_fail
; 
3944     if (sizeof(wxFileOffset
) > sizeof(long)) 
3945     resultobj 
= PyLong_FromLongLong(result
); 
3947     resultobj 
= PyInt_FromLong(result
); 
3955 SWIGINTERN PyObject 
*_wrap_MediaCtrl_GetDownloadTotal(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3956   PyObject 
*resultobj 
= 0; 
3957   wxMediaCtrl 
*arg1 
= (wxMediaCtrl 
*) 0 ; 
3958   wxFileOffset result
; 
3961   PyObject 
*swig_obj
[1] ; 
3963   if (!args
) SWIG_fail
; 
3965   res1 
= SWIG_ConvertPtr(swig_obj
[0], &argp1
,SWIGTYPE_p_wxMediaCtrl
, 0 |  0 ); 
3966   if (!SWIG_IsOK(res1
)) { 
3967     SWIG_exception_fail(SWIG_ArgError(res1
), "in method '" "MediaCtrl_GetDownloadTotal" "', expected argument " "1"" of type '" "wxMediaCtrl *""'");  
3969   arg1 
= reinterpret_cast< wxMediaCtrl 
* >(argp1
); 
3971     PyThreadState
* __tstate 
= wxPyBeginAllowThreads(); 
3972     result 
= (arg1
)->GetDownloadTotal(); 
3973     wxPyEndAllowThreads(__tstate
); 
3974     if (PyErr_Occurred()) SWIG_fail
; 
3977     if (sizeof(wxFileOffset
) > sizeof(long)) 
3978     resultobj 
= PyLong_FromLongLong(result
); 
3980     resultobj 
= PyInt_FromLong(result
); 
3988 SWIGINTERN PyObject 
*MediaCtrl_swigregister(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3990   if (!SWIG_Python_UnpackTuple(args
,(char*)"swigregister", 1, 1,&obj
)) return NULL
; 
3991   SWIG_TypeNewClientData(SWIGTYPE_p_wxMediaCtrl
, SWIG_NewClientData(obj
)); 
3992   return SWIG_Py_Void(); 
3995 SWIGINTERN PyObject 
*MediaCtrl_swiginit(PyObject 
*SWIGUNUSEDPARM(self
), PyObject 
*args
) { 
3996   return SWIG_Python_InitShadowInstance(args
); 
3999 static PyMethodDef SwigMethods
[] = { 
4000          { (char *)"new_MediaEvent", (PyCFunction
) _wrap_new_MediaEvent
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4001          { (char *)"MediaEvent_swigregister", MediaEvent_swigregister
, METH_VARARGS
, NULL
}, 
4002          { (char *)"MediaEvent_swiginit", MediaEvent_swiginit
, METH_VARARGS
, NULL
}, 
4003          { (char *)"new_MediaCtrl", (PyCFunction
) _wrap_new_MediaCtrl
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4004          { (char *)"new_PreMediaCtrl", (PyCFunction
)_wrap_new_PreMediaCtrl
, METH_NOARGS
, NULL
}, 
4005          { (char *)"MediaCtrl_Create", (PyCFunction
) _wrap_MediaCtrl_Create
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4006          { (char *)"MediaCtrl_Play", (PyCFunction
)_wrap_MediaCtrl_Play
, METH_O
, NULL
}, 
4007          { (char *)"MediaCtrl_Pause", (PyCFunction
)_wrap_MediaCtrl_Pause
, METH_O
, NULL
}, 
4008          { (char *)"MediaCtrl_Stop", (PyCFunction
)_wrap_MediaCtrl_Stop
, METH_O
, NULL
}, 
4009          { (char *)"MediaCtrl_GetState", (PyCFunction
)_wrap_MediaCtrl_GetState
, METH_O
, NULL
}, 
4010          { (char *)"MediaCtrl_GetPlaybackRate", (PyCFunction
)_wrap_MediaCtrl_GetPlaybackRate
, METH_O
, NULL
}, 
4011          { (char *)"MediaCtrl_SetPlaybackRate", (PyCFunction
) _wrap_MediaCtrl_SetPlaybackRate
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4012          { (char *)"MediaCtrl_Seek", (PyCFunction
) _wrap_MediaCtrl_Seek
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4013          { (char *)"MediaCtrl_Tell", (PyCFunction
)_wrap_MediaCtrl_Tell
, METH_O
, NULL
}, 
4014          { (char *)"MediaCtrl_Length", (PyCFunction
)_wrap_MediaCtrl_Length
, METH_O
, NULL
}, 
4015          { (char *)"MediaCtrl_GetVolume", (PyCFunction
)_wrap_MediaCtrl_GetVolume
, METH_O
, NULL
}, 
4016          { (char *)"MediaCtrl_SetVolume", (PyCFunction
) _wrap_MediaCtrl_SetVolume
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4017          { (char *)"MediaCtrl_ShowPlayerControls", (PyCFunction
) _wrap_MediaCtrl_ShowPlayerControls
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4018          { (char *)"MediaCtrl_Load", (PyCFunction
) _wrap_MediaCtrl_Load
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4019          { (char *)"MediaCtrl_LoadURI", (PyCFunction
) _wrap_MediaCtrl_LoadURI
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4020          { (char *)"MediaCtrl_LoadURIWithProxy", (PyCFunction
) _wrap_MediaCtrl_LoadURIWithProxy
, METH_VARARGS 
| METH_KEYWORDS
, NULL
}, 
4021          { (char *)"MediaCtrl_GetDownloadProgress", (PyCFunction
)_wrap_MediaCtrl_GetDownloadProgress
, METH_O
, NULL
}, 
4022          { (char *)"MediaCtrl_GetDownloadTotal", (PyCFunction
)_wrap_MediaCtrl_GetDownloadTotal
, METH_O
, NULL
}, 
4023          { (char *)"MediaCtrl_swigregister", MediaCtrl_swigregister
, METH_VARARGS
, NULL
}, 
4024          { (char *)"MediaCtrl_swiginit", MediaCtrl_swiginit
, METH_VARARGS
, NULL
}, 
4025          { NULL
, NULL
, 0, NULL 
} 
4029 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ 
4031 static void *_p_wxLayoutConstraintsTo_p_wxObject(void *x
) { 
4032     return (void *)((wxObject 
*)  ((wxLayoutConstraints 
*) x
)); 
4034 static void *_p_wxSizerItemTo_p_wxObject(void *x
) { 
4035     return (void *)((wxObject 
*)  ((wxSizerItem 
*) x
)); 
4037 static void *_p_wxGBSizerItemTo_p_wxObject(void *x
) { 
4038     return (void *)((wxObject 
*) (wxSizerItem 
*) ((wxGBSizerItem 
*) x
)); 
4040 static void *_p_wxScrollEventTo_p_wxObject(void *x
) { 
4041     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxScrollEvent 
*) x
)); 
4043 static void *_p_wxIndividualLayoutConstraintTo_p_wxObject(void *x
) { 
4044     return (void *)((wxObject 
*)  ((wxIndividualLayoutConstraint 
*) x
)); 
4046 static void *_p_wxStaticBoxSizerTo_p_wxObject(void *x
) { 
4047     return (void *)((wxObject 
*) (wxSizer 
*)(wxBoxSizer 
*) ((wxStaticBoxSizer 
*) x
)); 
4049 static void *_p_wxBoxSizerTo_p_wxObject(void *x
) { 
4050     return (void *)((wxObject 
*) (wxSizer 
*) ((wxBoxSizer 
*) x
)); 
4052 static void *_p_wxSizerTo_p_wxObject(void *x
) { 
4053     return (void *)((wxObject 
*)  ((wxSizer 
*) x
)); 
4055 static void *_p_wxGridBagSizerTo_p_wxObject(void *x
) { 
4056     return (void *)((wxObject 
*) (wxSizer 
*)(wxGridSizer 
*)(wxFlexGridSizer 
*) ((wxGridBagSizer 
*) x
)); 
4058 static void *_p_wxUpdateUIEventTo_p_wxObject(void *x
) { 
4059     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxUpdateUIEvent 
*) x
)); 
4061 static void *_p_wxEventTo_p_wxObject(void *x
) { 
4062     return (void *)((wxObject 
*)  ((wxEvent 
*) x
)); 
4064 static void *_p_wxFlexGridSizerTo_p_wxObject(void *x
) { 
4065     return (void *)((wxObject 
*) (wxSizer 
*)(wxGridSizer 
*) ((wxFlexGridSizer 
*) x
)); 
4067 static void *_p_wxGridSizerTo_p_wxObject(void *x
) { 
4068     return (void *)((wxObject 
*) (wxSizer 
*) ((wxGridSizer 
*) x
)); 
4070 static void *_p_wxInitDialogEventTo_p_wxObject(void *x
) { 
4071     return (void *)((wxObject 
*) (wxEvent 
*) ((wxInitDialogEvent 
*) x
)); 
4073 static void *_p_wxClipboardTextEventTo_p_wxObject(void *x
) { 
4074     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxClipboardTextEvent 
*) x
)); 
4076 static void *_p_wxPaintEventTo_p_wxObject(void *x
) { 
4077     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPaintEvent 
*) x
)); 
4079 static void *_p_wxNcPaintEventTo_p_wxObject(void *x
) { 
4080     return (void *)((wxObject 
*) (wxEvent 
*) ((wxNcPaintEvent 
*) x
)); 
4082 static void *_p_wxPaletteChangedEventTo_p_wxObject(void *x
) { 
4083     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPaletteChangedEvent 
*) x
)); 
4085 static void *_p_wxDisplayChangedEventTo_p_wxObject(void *x
) { 
4086     return (void *)((wxObject 
*) (wxEvent 
*) ((wxDisplayChangedEvent 
*) x
)); 
4088 static void *_p_wxMouseCaptureChangedEventTo_p_wxObject(void *x
) { 
4089     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMouseCaptureChangedEvent 
*) x
)); 
4091 static void *_p_wxSysColourChangedEventTo_p_wxObject(void *x
) { 
4092     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSysColourChangedEvent 
*) x
)); 
4094 static void *_p_wxMediaCtrlTo_p_wxObject(void *x
) { 
4095     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*)(wxControl 
*) ((wxMediaCtrl 
*) x
)); 
4097 static void *_p_wxControlTo_p_wxObject(void *x
) { 
4098     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*) ((wxControl 
*) x
)); 
4100 static void *_p_wxSetCursorEventTo_p_wxObject(void *x
) { 
4101     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSetCursorEvent 
*) x
)); 
4103 static void *_p_wxFSFileTo_p_wxObject(void *x
) { 
4104     return (void *)((wxObject 
*)  ((wxFSFile 
*) x
)); 
4106 static void *_p_wxMediaEventTo_p_wxObject(void *x
) { 
4107     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*)(wxNotifyEvent 
*) ((wxMediaEvent 
*) x
)); 
4109 static void *_p_wxPySizerTo_p_wxObject(void *x
) { 
4110     return (void *)((wxObject 
*) (wxSizer 
*) ((wxPySizer 
*) x
)); 
4112 static void *_p_wxPyEventTo_p_wxObject(void *x
) { 
4113     return (void *)((wxObject 
*) (wxEvent 
*) ((wxPyEvent 
*) x
)); 
4115 static void *_p_wxNotifyEventTo_p_wxObject(void *x
) { 
4116     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxNotifyEvent 
*) x
)); 
4118 static void *_p_wxShowEventTo_p_wxObject(void *x
) { 
4119     return (void *)((wxObject 
*) (wxEvent 
*) ((wxShowEvent 
*) x
)); 
4121 static void *_p_wxMenuItemTo_p_wxObject(void *x
) { 
4122     return (void *)((wxObject 
*)  ((wxMenuItem 
*) x
)); 
4124 static void *_p_wxDateEventTo_p_wxObject(void *x
) { 
4125     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxDateEvent 
*) x
)); 
4127 static void *_p_wxIdleEventTo_p_wxObject(void *x
) { 
4128     return (void *)((wxObject 
*) (wxEvent 
*) ((wxIdleEvent 
*) x
)); 
4130 static void *_p_wxWindowCreateEventTo_p_wxObject(void *x
) { 
4131     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxWindowCreateEvent 
*) x
)); 
4133 static void *_p_wxQueryNewPaletteEventTo_p_wxObject(void *x
) { 
4134     return (void *)((wxObject 
*) (wxEvent 
*) ((wxQueryNewPaletteEvent 
*) x
)); 
4136 static void *_p_wxMaximizeEventTo_p_wxObject(void *x
) { 
4137     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMaximizeEvent 
*) x
)); 
4139 static void *_p_wxIconizeEventTo_p_wxObject(void *x
) { 
4140     return (void *)((wxObject 
*) (wxEvent 
*) ((wxIconizeEvent 
*) x
)); 
4142 static void *_p_wxSizeEventTo_p_wxObject(void *x
) { 
4143     return (void *)((wxObject 
*) (wxEvent 
*) ((wxSizeEvent 
*) x
)); 
4145 static void *_p_wxMoveEventTo_p_wxObject(void *x
) { 
4146     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMoveEvent 
*) x
)); 
4148 static void *_p_wxActivateEventTo_p_wxObject(void *x
) { 
4149     return (void *)((wxObject 
*) (wxEvent 
*) ((wxActivateEvent 
*) x
)); 
4151 static void *_p_wxPNMHandlerTo_p_wxObject(void *x
) { 
4152     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPNMHandler 
*) x
)); 
4154 static void *_p_wxJPEGHandlerTo_p_wxObject(void *x
) { 
4155     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxJPEGHandler 
*) x
)); 
4157 static void *_p_wxPCXHandlerTo_p_wxObject(void *x
) { 
4158     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPCXHandler 
*) x
)); 
4160 static void *_p_wxGIFHandlerTo_p_wxObject(void *x
) { 
4161     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxGIFHandler 
*) x
)); 
4163 static void *_p_wxPNGHandlerTo_p_wxObject(void *x
) { 
4164     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPNGHandler 
*) x
)); 
4166 static void *_p_wxANIHandlerTo_p_wxObject(void *x
) { 
4167     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*)(wxICOHandler 
*)(wxCURHandler 
*) ((wxANIHandler 
*) x
)); 
4169 static void *_p_wxCURHandlerTo_p_wxObject(void *x
) { 
4170     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*)(wxICOHandler 
*) ((wxCURHandler 
*) x
)); 
4172 static void *_p_wxICOHandlerTo_p_wxObject(void *x
) { 
4173     return (void *)((wxObject 
*) (wxImageHandler 
*)(wxBMPHandler 
*) ((wxICOHandler 
*) x
)); 
4175 static void *_p_wxBMPHandlerTo_p_wxObject(void *x
) { 
4176     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxBMPHandler 
*) x
)); 
4178 static void *_p_wxPyImageHandlerTo_p_wxObject(void *x
) { 
4179     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxPyImageHandler 
*) x
)); 
4181 static void *_p_wxImageHandlerTo_p_wxObject(void *x
) { 
4182     return (void *)((wxObject 
*)  ((wxImageHandler 
*) x
)); 
4184 static void *_p_wxXPMHandlerTo_p_wxObject(void *x
) { 
4185     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxXPMHandler 
*) x
)); 
4187 static void *_p_wxTIFFHandlerTo_p_wxObject(void *x
) { 
4188     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxTIFFHandler 
*) x
)); 
4190 static void *_p_wxTGAHandlerTo_p_wxObject(void *x
) { 
4191     return (void *)((wxObject 
*) (wxImageHandler 
*) ((wxTGAHandler 
*) x
)); 
4193 static void *_p_wxEvtHandlerTo_p_wxObject(void *x
) { 
4194     return (void *)((wxObject 
*)  ((wxEvtHandler 
*) x
)); 
4196 static void *_p_wxMouseCaptureLostEventTo_p_wxObject(void *x
) { 
4197     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMouseCaptureLostEvent 
*) x
)); 
4199 static void *_p_wxAcceleratorTableTo_p_wxObject(void *x
) { 
4200     return (void *)((wxObject 
*)  ((wxAcceleratorTable 
*) x
)); 
4202 static void *_p_wxStdDialogButtonSizerTo_p_wxObject(void *x
) { 
4203     return (void *)((wxObject 
*) (wxSizer 
*)(wxBoxSizer 
*) ((wxStdDialogButtonSizer 
*) x
)); 
4205 static void *_p_wxImageTo_p_wxObject(void *x
) { 
4206     return (void *)((wxObject 
*)  ((wxImage 
*) x
)); 
4208 static void *_p_wxScrollWinEventTo_p_wxObject(void *x
) { 
4209     return (void *)((wxObject 
*) (wxEvent 
*) ((wxScrollWinEvent 
*) x
)); 
4211 static void *_p_wxWindowDestroyEventTo_p_wxObject(void *x
) { 
4212     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxWindowDestroyEvent 
*) x
)); 
4214 static void *_p_wxNavigationKeyEventTo_p_wxObject(void *x
) { 
4215     return (void *)((wxObject 
*) (wxEvent 
*) ((wxNavigationKeyEvent 
*) x
)); 
4217 static void *_p_wxKeyEventTo_p_wxObject(void *x
) { 
4218     return (void *)((wxObject 
*) (wxEvent 
*) ((wxKeyEvent 
*) x
)); 
4220 static void *_p_wxWindowTo_p_wxObject(void *x
) { 
4221     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxWindow 
*) x
)); 
4223 static void *_p_wxMenuTo_p_wxObject(void *x
) { 
4224     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxMenu 
*) x
)); 
4226 static void *_p_wxMenuBarTo_p_wxObject(void *x
) { 
4227     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*) ((wxMenuBar 
*) x
)); 
4229 static void *_p_wxFileSystemTo_p_wxObject(void *x
) { 
4230     return (void *)((wxObject 
*)  ((wxFileSystem 
*) x
)); 
4232 static void *_p_wxContextMenuEventTo_p_wxObject(void *x
) { 
4233     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxContextMenuEvent 
*) x
)); 
4235 static void *_p_wxMenuEventTo_p_wxObject(void *x
) { 
4236     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMenuEvent 
*) x
)); 
4238 static void *_p_wxPyAppTo_p_wxObject(void *x
) { 
4239     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxPyApp 
*) x
)); 
4241 static void *_p_wxCloseEventTo_p_wxObject(void *x
) { 
4242     return (void *)((wxObject 
*) (wxEvent 
*) ((wxCloseEvent 
*) x
)); 
4244 static void *_p_wxMouseEventTo_p_wxObject(void *x
) { 
4245     return (void *)((wxObject 
*) (wxEvent 
*) ((wxMouseEvent 
*) x
)); 
4247 static void *_p_wxEraseEventTo_p_wxObject(void *x
) { 
4248     return (void *)((wxObject 
*) (wxEvent 
*) ((wxEraseEvent 
*) x
)); 
4250 static void *_p_wxPyCommandEventTo_p_wxObject(void *x
) { 
4251     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxPyCommandEvent 
*) x
)); 
4253 static void *_p_wxCommandEventTo_p_wxObject(void *x
) { 
4254     return (void *)((wxObject 
*) (wxEvent 
*) ((wxCommandEvent 
*) x
)); 
4256 static void *_p_wxDropFilesEventTo_p_wxObject(void *x
) { 
4257     return (void *)((wxObject 
*) (wxEvent 
*) ((wxDropFilesEvent 
*) x
)); 
4259 static void *_p_wxFocusEventTo_p_wxObject(void *x
) { 
4260     return (void *)((wxObject 
*) (wxEvent 
*) ((wxFocusEvent 
*) x
)); 
4262 static void *_p_wxChildFocusEventTo_p_wxObject(void *x
) { 
4263     return (void *)((wxObject 
*) (wxEvent 
*)(wxCommandEvent 
*) ((wxChildFocusEvent 
*) x
)); 
4265 static void *_p_wxControlWithItemsTo_p_wxObject(void *x
) { 
4266     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxWindow 
*)(wxControl 
*) ((wxControlWithItems 
*) x
)); 
4268 static void *_p_wxPyValidatorTo_p_wxObject(void *x
) { 
4269     return (void *)((wxObject 
*) (wxEvtHandler 
*)(wxValidator 
*) ((wxPyValidator 
*) x
)); 
4271 static void *_p_wxValidatorTo_p_wxObject(void *x
) { 
4272     return (void *)((wxObject 
*) (wxEvtHandler 
*) ((wxValidator 
*) x
)); 
4274 static void *_p_wxControlTo_p_wxWindow(void *x
) { 
4275     return (void *)((wxWindow 
*)  ((wxControl 
*) x
)); 
4277 static void *_p_wxControlWithItemsTo_p_wxWindow(void *x
) { 
4278     return (void *)((wxWindow 
*) (wxControl 
*) ((wxControlWithItems 
*) x
)); 
4280 static void *_p_wxMediaCtrlTo_p_wxWindow(void *x
) { 
4281     return (void *)((wxWindow 
*) (wxControl 
*) ((wxMediaCtrl 
*) x
)); 
4283 static void *_p_wxMenuBarTo_p_wxWindow(void *x
) { 
4284     return (void *)((wxWindow 
*)  ((wxMenuBar 
*) x
)); 
4286 static void *_p_wxPyValidatorTo_p_wxValidator(void *x
) { 
4287     return (void *)((wxValidator 
*)  ((wxPyValidator 
*) x
)); 
4289 static void *_p_wxChildFocusEventTo_p_wxCommandEvent(void *x
) { 
4290     return (void *)((wxCommandEvent 
*)  ((wxChildFocusEvent 
*) x
)); 
4292 static void *_p_wxScrollEventTo_p_wxCommandEvent(void *x
) { 
4293     return (void *)((wxCommandEvent 
*)  ((wxScrollEvent 
*) x
)); 
4295 static void *_p_wxWindowCreateEventTo_p_wxCommandEvent(void *x
) { 
4296     return (void *)((wxCommandEvent 
*)  ((wxWindowCreateEvent 
*) x
)); 
4298 static void *_p_wxDateEventTo_p_wxCommandEvent(void *x
) { 
4299     return (void *)((wxCommandEvent 
*)  ((wxDateEvent 
*) x
)); 
4301 static void *_p_wxUpdateUIEventTo_p_wxCommandEvent(void *x
) { 
4302     return (void *)((wxCommandEvent 
*)  ((wxUpdateUIEvent 
*) x
)); 
4304 static void *_p_wxClipboardTextEventTo_p_wxCommandEvent(void *x
) { 
4305     return (void *)((wxCommandEvent 
*)  ((wxClipboardTextEvent 
*) x
)); 
4307 static void *_p_wxWindowDestroyEventTo_p_wxCommandEvent(void *x
) { 
4308     return (void *)((wxCommandEvent 
*)  ((wxWindowDestroyEvent 
*) x
)); 
4310 static void *_p_wxContextMenuEventTo_p_wxCommandEvent(void *x
) { 
4311     return (void *)((wxCommandEvent 
*)  ((wxContextMenuEvent 
*) x
)); 
4313 static void *_p_wxNotifyEventTo_p_wxCommandEvent(void *x
) { 
4314     return (void *)((wxCommandEvent 
*)  ((wxNotifyEvent 
*) x
)); 
4316 static void *_p_wxPyCommandEventTo_p_wxCommandEvent(void *x
) { 
4317     return (void *)((wxCommandEvent 
*)  ((wxPyCommandEvent 
*) x
)); 
4319 static void *_p_wxMediaEventTo_p_wxCommandEvent(void *x
) { 
4320     return (void *)((wxCommandEvent 
*) (wxNotifyEvent 
*) ((wxMediaEvent 
*) x
)); 
4322 static void *_p_wxControlTo_p_wxEvtHandler(void *x
) { 
4323     return (void *)((wxEvtHandler 
*) (wxWindow 
*) ((wxControl 
*) x
)); 
4325 static void *_p_wxWindowTo_p_wxEvtHandler(void *x
) { 
4326     return (void *)((wxEvtHandler 
*)  ((wxWindow 
*) x
)); 
4328 static void *_p_wxControlWithItemsTo_p_wxEvtHandler(void *x
) { 
4329     return (void *)((wxEvtHandler 
*) (wxWindow 
*)(wxControl 
*) ((wxControlWithItems 
*) x
)); 
4331 static void *_p_wxPyAppTo_p_wxEvtHandler(void *x
) { 
4332     return (void *)((wxEvtHandler 
*)  ((wxPyApp 
*) x
)); 
4334 static void *_p_wxMediaCtrlTo_p_wxEvtHandler(void *x
) { 
4335     return (void *)((wxEvtHandler 
*) (wxWindow 
*)(wxControl 
*) ((wxMediaCtrl 
*) x
)); 
4337 static void *_p_wxValidatorTo_p_wxEvtHandler(void *x
) { 
4338     return (void *)((wxEvtHandler 
*)  ((wxValidator 
*) x
)); 
4340 static void *_p_wxPyValidatorTo_p_wxEvtHandler(void *x
) { 
4341     return (void *)((wxEvtHandler 
*) (wxValidator 
*) ((wxPyValidator 
*) x
)); 
4343 static void *_p_wxMenuBarTo_p_wxEvtHandler(void *x
) { 
4344     return (void *)((wxEvtHandler 
*) (wxWindow 
*) ((wxMenuBar 
*) x
)); 
4346 static void *_p_wxMenuTo_p_wxEvtHandler(void *x
) { 
4347     return (void *)((wxEvtHandler 
*)  ((wxMenu 
*) x
)); 
4349 static void *_p_wxMediaEventTo_p_wxNotifyEvent(void *x
) { 
4350     return (void *)((wxNotifyEvent 
*)  ((wxMediaEvent 
*) x
)); 
4352 static void *_p_wxControlWithItemsTo_p_wxControl(void *x
) { 
4353     return (void *)((wxControl 
*)  ((wxControlWithItems 
*) x
)); 
4355 static void *_p_wxMediaCtrlTo_p_wxControl(void *x
) { 
4356     return (void *)((wxControl 
*)  ((wxMediaCtrl 
*) x
)); 
4358 static void *_p_wxContextMenuEventTo_p_wxEvent(void *x
) { 
4359     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxContextMenuEvent 
*) x
)); 
4361 static void *_p_wxMenuEventTo_p_wxEvent(void *x
) { 
4362     return (void *)((wxEvent 
*)  ((wxMenuEvent 
*) x
)); 
4364 static void *_p_wxCloseEventTo_p_wxEvent(void *x
) { 
4365     return (void *)((wxEvent 
*)  ((wxCloseEvent 
*) x
)); 
4367 static void *_p_wxMouseEventTo_p_wxEvent(void *x
) { 
4368     return (void *)((wxEvent 
*)  ((wxMouseEvent 
*) x
)); 
4370 static void *_p_wxEraseEventTo_p_wxEvent(void *x
) { 
4371     return (void *)((wxEvent 
*)  ((wxEraseEvent 
*) x
)); 
4373 static void *_p_wxSetCursorEventTo_p_wxEvent(void *x
) { 
4374     return (void *)((wxEvent 
*)  ((wxSetCursorEvent 
*) x
)); 
4376 static void *_p_wxInitDialogEventTo_p_wxEvent(void *x
) { 
4377     return (void *)((wxEvent 
*)  ((wxInitDialogEvent 
*) x
)); 
4379 static void *_p_wxScrollEventTo_p_wxEvent(void *x
) { 
4380     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxScrollEvent 
*) x
)); 
4382 static void *_p_wxNotifyEventTo_p_wxEvent(void *x
) { 
4383     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxNotifyEvent 
*) x
)); 
4385 static void *_p_wxMouseCaptureLostEventTo_p_wxEvent(void *x
) { 
4386     return (void *)((wxEvent 
*)  ((wxMouseCaptureLostEvent 
*) x
)); 
4388 static void *_p_wxPyEventTo_p_wxEvent(void *x
) { 
4389     return (void *)((wxEvent 
*)  ((wxPyEvent 
*) x
)); 
4391 static void *_p_wxIdleEventTo_p_wxEvent(void *x
) { 
4392     return (void *)((wxEvent 
*)  ((wxIdleEvent 
*) x
)); 
4394 static void *_p_wxWindowCreateEventTo_p_wxEvent(void *x
) { 
4395     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxWindowCreateEvent 
*) x
)); 
4397 static void *_p_wxQueryNewPaletteEventTo_p_wxEvent(void *x
) { 
4398     return (void *)((wxEvent 
*)  ((wxQueryNewPaletteEvent 
*) x
)); 
4400 static void *_p_wxMaximizeEventTo_p_wxEvent(void *x
) { 
4401     return (void *)((wxEvent 
*)  ((wxMaximizeEvent 
*) x
)); 
4403 static void *_p_wxIconizeEventTo_p_wxEvent(void *x
) { 
4404     return (void *)((wxEvent 
*)  ((wxIconizeEvent 
*) x
)); 
4406 static void *_p_wxActivateEventTo_p_wxEvent(void *x
) { 
4407     return (void *)((wxEvent 
*)  ((wxActivateEvent 
*) x
)); 
4409 static void *_p_wxSizeEventTo_p_wxEvent(void *x
) { 
4410     return (void *)((wxEvent 
*)  ((wxSizeEvent 
*) x
)); 
4412 static void *_p_wxMoveEventTo_p_wxEvent(void *x
) { 
4413     return (void *)((wxEvent 
*)  ((wxMoveEvent 
*) x
)); 
4415 static void *_p_wxDateEventTo_p_wxEvent(void *x
) { 
4416     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxDateEvent 
*) x
)); 
4418 static void *_p_wxPaintEventTo_p_wxEvent(void *x
) { 
4419     return (void *)((wxEvent 
*)  ((wxPaintEvent 
*) x
)); 
4421 static void *_p_wxNcPaintEventTo_p_wxEvent(void *x
) { 
4422     return (void *)((wxEvent 
*)  ((wxNcPaintEvent 
*) x
)); 
4424 static void *_p_wxClipboardTextEventTo_p_wxEvent(void *x
) { 
4425     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxClipboardTextEvent 
*) x
)); 
4427 static void *_p_wxUpdateUIEventTo_p_wxEvent(void *x
) { 
4428     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxUpdateUIEvent 
*) x
)); 
4430 static void *_p_wxPaletteChangedEventTo_p_wxEvent(void *x
) { 
4431     return (void *)((wxEvent 
*)  ((wxPaletteChangedEvent 
*) x
)); 
4433 static void *_p_wxDisplayChangedEventTo_p_wxEvent(void *x
) { 
4434     return (void *)((wxEvent 
*)  ((wxDisplayChangedEvent 
*) x
)); 
4436 static void *_p_wxMouseCaptureChangedEventTo_p_wxEvent(void *x
) { 
4437     return (void *)((wxEvent 
*)  ((wxMouseCaptureChangedEvent 
*) x
)); 
4439 static void *_p_wxSysColourChangedEventTo_p_wxEvent(void *x
) { 
4440     return (void *)((wxEvent 
*)  ((wxSysColourChangedEvent 
*) x
)); 
4442 static void *_p_wxDropFilesEventTo_p_wxEvent(void *x
) { 
4443     return (void *)((wxEvent 
*)  ((wxDropFilesEvent 
*) x
)); 
4445 static void *_p_wxFocusEventTo_p_wxEvent(void *x
) { 
4446     return (void *)((wxEvent 
*)  ((wxFocusEvent 
*) x
)); 
4448 static void *_p_wxChildFocusEventTo_p_wxEvent(void *x
) { 
4449     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxChildFocusEvent 
*) x
)); 
4451 static void *_p_wxShowEventTo_p_wxEvent(void *x
) { 
4452     return (void *)((wxEvent 
*)  ((wxShowEvent 
*) x
)); 
4454 static void *_p_wxCommandEventTo_p_wxEvent(void *x
) { 
4455     return (void *)((wxEvent 
*)  ((wxCommandEvent 
*) x
)); 
4457 static void *_p_wxPyCommandEventTo_p_wxEvent(void *x
) { 
4458     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxPyCommandEvent 
*) x
)); 
4460 static void *_p_wxWindowDestroyEventTo_p_wxEvent(void *x
) { 
4461     return (void *)((wxEvent 
*) (wxCommandEvent 
*) ((wxWindowDestroyEvent 
*) x
)); 
4463 static void *_p_wxNavigationKeyEventTo_p_wxEvent(void *x
) { 
4464     return (void *)((wxEvent 
*)  ((wxNavigationKeyEvent 
*) x
)); 
4466 static void *_p_wxKeyEventTo_p_wxEvent(void *x
) { 
4467     return (void *)((wxEvent 
*)  ((wxKeyEvent 
*) x
)); 
4469 static void *_p_wxMediaEventTo_p_wxEvent(void *x
) { 
4470     return (void *)((wxEvent 
*) (wxCommandEvent 
*)(wxNotifyEvent 
*) ((wxMediaEvent 
*) x
)); 
4472 static void *_p_wxScrollWinEventTo_p_wxEvent(void *x
) { 
4473     return (void *)((wxEvent 
*)  ((wxScrollWinEvent 
*) x
)); 
4475 static swig_type_info _swigt__p_char 
= {"_p_char", "char *", 0, 0, (void*)0, 0}; 
4476 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}; 
4477 static swig_type_info _swigt__p_int 
= {"_p_int", "int *|wxEventType *", 0, 0, (void*)0, 0}; 
4478 static swig_type_info _swigt__p_unsigned_char 
= {"_p_unsigned_char", "unsigned char *|byte *", 0, 0, (void*)0, 0}; 
4479 static swig_type_info _swigt__p_unsigned_int 
= {"_p_unsigned_int", "unsigned int *|time_t *", 0, 0, (void*)0, 0}; 
4480 static swig_type_info _swigt__p_unsigned_long 
= {"_p_unsigned_long", "unsigned long *|wxUIntPtr *", 0, 0, (void*)0, 0}; 
4481 static swig_type_info _swigt__p_wxCommandEvent 
= {"_p_wxCommandEvent", "wxCommandEvent *", 0, 0, (void*)0, 0}; 
4482 static swig_type_info _swigt__p_wxChildFocusEvent 
= {"_p_wxChildFocusEvent", 0, 0, 0, 0, 0}; 
4483 static swig_type_info _swigt__p_wxScrollEvent 
= {"_p_wxScrollEvent", 0, 0, 0, 0, 0}; 
4484 static swig_type_info _swigt__p_wxWindowCreateEvent 
= {"_p_wxWindowCreateEvent", 0, 0, 0, 0, 0}; 
4485 static swig_type_info _swigt__p_wxDateEvent 
= {"_p_wxDateEvent", 0, 0, 0, 0, 0}; 
4486 static swig_type_info _swigt__p_wxUpdateUIEvent 
= {"_p_wxUpdateUIEvent", 0, 0, 0, 0, 0}; 
4487 static swig_type_info _swigt__p_wxClipboardTextEvent 
= {"_p_wxClipboardTextEvent", 0, 0, 0, 0, 0}; 
4488 static swig_type_info _swigt__p_wxWindowDestroyEvent 
= {"_p_wxWindowDestroyEvent", 0, 0, 0, 0, 0}; 
4489 static swig_type_info _swigt__p_wxContextMenuEvent 
= {"_p_wxContextMenuEvent", 0, 0, 0, 0, 0}; 
4490 static swig_type_info _swigt__p_wxPyCommandEvent 
= {"_p_wxPyCommandEvent", 0, 0, 0, 0, 0}; 
4491 static swig_type_info _swigt__p_wxControl 
= {"_p_wxControl", "wxControl *", 0, 0, (void*)0, 0}; 
4492 static swig_type_info _swigt__p_wxControlWithItems 
= {"_p_wxControlWithItems", 0, 0, 0, 0, 0}; 
4493 static swig_type_info _swigt__p_wxDuplexMode 
= {"_p_wxDuplexMode", "enum wxDuplexMode *|wxDuplexMode *", 0, 0, (void*)0, 0}; 
4494 static swig_type_info _swigt__p_wxEvent 
= {"_p_wxEvent", "wxEvent *", 0, 0, (void*)0, 0}; 
4495 static swig_type_info _swigt__p_wxMenuEvent 
= {"_p_wxMenuEvent", 0, 0, 0, 0, 0}; 
4496 static swig_type_info _swigt__p_wxCloseEvent 
= {"_p_wxCloseEvent", 0, 0, 0, 0, 0}; 
4497 static swig_type_info _swigt__p_wxMouseEvent 
= {"_p_wxMouseEvent", 0, 0, 0, 0, 0}; 
4498 static swig_type_info _swigt__p_wxEraseEvent 
= {"_p_wxEraseEvent", 0, 0, 0, 0, 0}; 
4499 static swig_type_info _swigt__p_wxSetCursorEvent 
= {"_p_wxSetCursorEvent", 0, 0, 0, 0, 0}; 
4500 static swig_type_info _swigt__p_wxInitDialogEvent 
= {"_p_wxInitDialogEvent", 0, 0, 0, 0, 0}; 
4501 static swig_type_info _swigt__p_wxPyEvent 
= {"_p_wxPyEvent", 0, 0, 0, 0, 0}; 
4502 static swig_type_info _swigt__p_wxMouseCaptureLostEvent 
= {"_p_wxMouseCaptureLostEvent", 0, 0, 0, 0, 0}; 
4503 static swig_type_info _swigt__p_wxIdleEvent 
= {"_p_wxIdleEvent", 0, 0, 0, 0, 0}; 
4504 static swig_type_info _swigt__p_wxQueryNewPaletteEvent 
= {"_p_wxQueryNewPaletteEvent", 0, 0, 0, 0, 0}; 
4505 static swig_type_info _swigt__p_wxMaximizeEvent 
= {"_p_wxMaximizeEvent", 0, 0, 0, 0, 0}; 
4506 static swig_type_info _swigt__p_wxIconizeEvent 
= {"_p_wxIconizeEvent", 0, 0, 0, 0, 0}; 
4507 static swig_type_info _swigt__p_wxActivateEvent 
= {"_p_wxActivateEvent", 0, 0, 0, 0, 0}; 
4508 static swig_type_info _swigt__p_wxSizeEvent 
= {"_p_wxSizeEvent", 0, 0, 0, 0, 0}; 
4509 static swig_type_info _swigt__p_wxMoveEvent 
= {"_p_wxMoveEvent", 0, 0, 0, 0, 0}; 
4510 static swig_type_info _swigt__p_wxPaintEvent 
= {"_p_wxPaintEvent", 0, 0, 0, 0, 0}; 
4511 static swig_type_info _swigt__p_wxNcPaintEvent 
= {"_p_wxNcPaintEvent", 0, 0, 0, 0, 0}; 
4512 static swig_type_info _swigt__p_wxPaletteChangedEvent 
= {"_p_wxPaletteChangedEvent", 0, 0, 0, 0, 0}; 
4513 static swig_type_info _swigt__p_wxDisplayChangedEvent 
= {"_p_wxDisplayChangedEvent", 0, 0, 0, 0, 0}; 
4514 static swig_type_info _swigt__p_wxMouseCaptureChangedEvent 
= {"_p_wxMouseCaptureChangedEvent", 0, 0, 0, 0, 0}; 
4515 static swig_type_info _swigt__p_wxSysColourChangedEvent 
= {"_p_wxSysColourChangedEvent", 0, 0, 0, 0, 0}; 
4516 static swig_type_info _swigt__p_wxDropFilesEvent 
= {"_p_wxDropFilesEvent", 0, 0, 0, 0, 0}; 
4517 static swig_type_info _swigt__p_wxFocusEvent 
= {"_p_wxFocusEvent", 0, 0, 0, 0, 0}; 
4518 static swig_type_info _swigt__p_wxShowEvent 
= {"_p_wxShowEvent", 0, 0, 0, 0, 0}; 
4519 static swig_type_info _swigt__p_wxNavigationKeyEvent 
= {"_p_wxNavigationKeyEvent", 0, 0, 0, 0, 0}; 
4520 static swig_type_info _swigt__p_wxKeyEvent 
= {"_p_wxKeyEvent", 0, 0, 0, 0, 0}; 
4521 static swig_type_info _swigt__p_wxScrollWinEvent 
= {"_p_wxScrollWinEvent", 0, 0, 0, 0, 0}; 
4522 static swig_type_info _swigt__p_wxEvtHandler 
= {"_p_wxEvtHandler", "wxEvtHandler *", 0, 0, (void*)0, 0}; 
4523 static swig_type_info _swigt__p_wxPyApp 
= {"_p_wxPyApp", 0, 0, 0, 0, 0}; 
4524 static swig_type_info _swigt__p_wxMenuBar 
= {"_p_wxMenuBar", 0, 0, 0, 0, 0}; 
4525 static swig_type_info _swigt__p_wxPyValidator 
= {"_p_wxPyValidator", 0, 0, 0, 0, 0}; 
4526 static swig_type_info _swigt__p_wxMenu 
= {"_p_wxMenu", 0, 0, 0, 0, 0}; 
4527 static swig_type_info _swigt__p_wxFileOffset 
= {"_p_wxFileOffset", "wxFileOffset *", 0, 0, (void*)0, 0}; 
4528 static swig_type_info _swigt__p_wxMediaCtrl 
= {"_p_wxMediaCtrl", "wxMediaCtrl *", 0, 0, (void*)0, 0}; 
4529 static swig_type_info _swigt__p_wxMediaEvent 
= {"_p_wxMediaEvent", "wxMediaEvent *", 0, 0, (void*)0, 0}; 
4530 static swig_type_info _swigt__p_wxNotifyEvent 
= {"_p_wxNotifyEvent", "wxNotifyEvent *", 0, 0, (void*)0, 0}; 
4531 static swig_type_info _swigt__p_wxObject 
= {"_p_wxObject", "wxObject *", 0, 0, (void*)0, 0}; 
4532 static swig_type_info _swigt__p_wxLayoutConstraints 
= {"_p_wxLayoutConstraints", 0, 0, 0, 0, 0}; 
4533 static swig_type_info _swigt__p_wxSizerItem 
= {"_p_wxSizerItem", 0, 0, 0, 0, 0}; 
4534 static swig_type_info _swigt__p_wxGBSizerItem 
= {"_p_wxGBSizerItem", 0, 0, 0, 0, 0}; 
4535 static swig_type_info _swigt__p_wxIndividualLayoutConstraint 
= {"_p_wxIndividualLayoutConstraint", 0, 0, 0, 0, 0}; 
4536 static swig_type_info _swigt__p_wxStaticBoxSizer 
= {"_p_wxStaticBoxSizer", 0, 0, 0, 0, 0}; 
4537 static swig_type_info _swigt__p_wxBoxSizer 
= {"_p_wxBoxSizer", 0, 0, 0, 0, 0}; 
4538 static swig_type_info _swigt__p_wxSizer 
= {"_p_wxSizer", 0, 0, 0, 0, 0}; 
4539 static swig_type_info _swigt__p_wxGridBagSizer 
= {"_p_wxGridBagSizer", 0, 0, 0, 0, 0}; 
4540 static swig_type_info _swigt__p_wxFlexGridSizer 
= {"_p_wxFlexGridSizer", 0, 0, 0, 0, 0}; 
4541 static swig_type_info _swigt__p_wxGridSizer 
= {"_p_wxGridSizer", 0, 0, 0, 0, 0}; 
4542 static swig_type_info _swigt__p_wxFSFile 
= {"_p_wxFSFile", 0, 0, 0, 0, 0}; 
4543 static swig_type_info _swigt__p_wxPySizer 
= {"_p_wxPySizer", 0, 0, 0, 0, 0}; 
4544 static swig_type_info _swigt__p_wxMenuItem 
= {"_p_wxMenuItem", 0, 0, 0, 0, 0}; 
4545 static swig_type_info _swigt__p_wxPNGHandler 
= {"_p_wxPNGHandler", 0, 0, 0, 0, 0}; 
4546 static swig_type_info _swigt__p_wxANIHandler 
= {"_p_wxANIHandler", 0, 0, 0, 0, 0}; 
4547 static swig_type_info _swigt__p_wxCURHandler 
= {"_p_wxCURHandler", 0, 0, 0, 0, 0}; 
4548 static swig_type_info _swigt__p_wxICOHandler 
= {"_p_wxICOHandler", 0, 0, 0, 0, 0}; 
4549 static swig_type_info _swigt__p_wxBMPHandler 
= {"_p_wxBMPHandler", 0, 0, 0, 0, 0}; 
4550 static swig_type_info _swigt__p_wxPyImageHandler 
= {"_p_wxPyImageHandler", 0, 0, 0, 0, 0}; 
4551 static swig_type_info _swigt__p_wxImageHandler 
= {"_p_wxImageHandler", 0, 0, 0, 0, 0}; 
4552 static swig_type_info _swigt__p_wxXPMHandler 
= {"_p_wxXPMHandler", 0, 0, 0, 0, 0}; 
4553 static swig_type_info _swigt__p_wxTIFFHandler 
= {"_p_wxTIFFHandler", 0, 0, 0, 0, 0}; 
4554 static swig_type_info _swigt__p_wxTGAHandler 
= {"_p_wxTGAHandler", 0, 0, 0, 0, 0}; 
4555 static swig_type_info _swigt__p_wxGIFHandler 
= {"_p_wxGIFHandler", 0, 0, 0, 0, 0}; 
4556 static swig_type_info _swigt__p_wxPCXHandler 
= {"_p_wxPCXHandler", 0, 0, 0, 0, 0}; 
4557 static swig_type_info _swigt__p_wxJPEGHandler 
= {"_p_wxJPEGHandler", 0, 0, 0, 0, 0}; 
4558 static swig_type_info _swigt__p_wxPNMHandler 
= {"_p_wxPNMHandler", 0, 0, 0, 0, 0}; 
4559 static swig_type_info _swigt__p_wxStdDialogButtonSizer 
= {"_p_wxStdDialogButtonSizer", 0, 0, 0, 0, 0}; 
4560 static swig_type_info _swigt__p_wxAcceleratorTable 
= {"_p_wxAcceleratorTable", 0, 0, 0, 0, 0}; 
4561 static swig_type_info _swigt__p_wxImage 
= {"_p_wxImage", 0, 0, 0, 0, 0}; 
4562 static swig_type_info _swigt__p_wxFileSystem 
= {"_p_wxFileSystem", 0, 0, 0, 0, 0}; 
4563 static swig_type_info _swigt__p_wxPaperSize 
= {"_p_wxPaperSize", "enum wxPaperSize *|wxPaperSize *", 0, 0, (void*)0, 0}; 
4564 static swig_type_info _swigt__p_wxValidator 
= {"_p_wxValidator", "wxValidator *", 0, 0, (void*)0, 0}; 
4565 static swig_type_info _swigt__p_wxWindow 
= {"_p_wxWindow", "wxWindow *", 0, 0, (void*)0, 0}; 
4567 static swig_type_info 
*swig_type_initial
[] = { 
4569   &_swigt__p_form_ops_t
, 
4571   &_swigt__p_unsigned_char
, 
4572   &_swigt__p_unsigned_int
, 
4573   &_swigt__p_unsigned_long
, 
4574   &_swigt__p_wxANIHandler
, 
4575   &_swigt__p_wxAcceleratorTable
, 
4576   &_swigt__p_wxActivateEvent
, 
4577   &_swigt__p_wxBMPHandler
, 
4578   &_swigt__p_wxBoxSizer
, 
4579   &_swigt__p_wxCURHandler
, 
4580   &_swigt__p_wxChildFocusEvent
, 
4581   &_swigt__p_wxClipboardTextEvent
, 
4582   &_swigt__p_wxCloseEvent
, 
4583   &_swigt__p_wxCommandEvent
, 
4584   &_swigt__p_wxContextMenuEvent
, 
4585   &_swigt__p_wxControl
, 
4586   &_swigt__p_wxControlWithItems
, 
4587   &_swigt__p_wxDateEvent
, 
4588   &_swigt__p_wxDisplayChangedEvent
, 
4589   &_swigt__p_wxDropFilesEvent
, 
4590   &_swigt__p_wxDuplexMode
, 
4591   &_swigt__p_wxEraseEvent
, 
4593   &_swigt__p_wxEvtHandler
, 
4594   &_swigt__p_wxFSFile
, 
4595   &_swigt__p_wxFileOffset
, 
4596   &_swigt__p_wxFileSystem
, 
4597   &_swigt__p_wxFlexGridSizer
, 
4598   &_swigt__p_wxFocusEvent
, 
4599   &_swigt__p_wxGBSizerItem
, 
4600   &_swigt__p_wxGIFHandler
, 
4601   &_swigt__p_wxGridBagSizer
, 
4602   &_swigt__p_wxGridSizer
, 
4603   &_swigt__p_wxICOHandler
, 
4604   &_swigt__p_wxIconizeEvent
, 
4605   &_swigt__p_wxIdleEvent
, 
4607   &_swigt__p_wxImageHandler
, 
4608   &_swigt__p_wxIndividualLayoutConstraint
, 
4609   &_swigt__p_wxInitDialogEvent
, 
4610   &_swigt__p_wxJPEGHandler
, 
4611   &_swigt__p_wxKeyEvent
, 
4612   &_swigt__p_wxLayoutConstraints
, 
4613   &_swigt__p_wxMaximizeEvent
, 
4614   &_swigt__p_wxMediaCtrl
, 
4615   &_swigt__p_wxMediaEvent
, 
4617   &_swigt__p_wxMenuBar
, 
4618   &_swigt__p_wxMenuEvent
, 
4619   &_swigt__p_wxMenuItem
, 
4620   &_swigt__p_wxMouseCaptureChangedEvent
, 
4621   &_swigt__p_wxMouseCaptureLostEvent
, 
4622   &_swigt__p_wxMouseEvent
, 
4623   &_swigt__p_wxMoveEvent
, 
4624   &_swigt__p_wxNavigationKeyEvent
, 
4625   &_swigt__p_wxNcPaintEvent
, 
4626   &_swigt__p_wxNotifyEvent
, 
4627   &_swigt__p_wxObject
, 
4628   &_swigt__p_wxPCXHandler
, 
4629   &_swigt__p_wxPNGHandler
, 
4630   &_swigt__p_wxPNMHandler
, 
4631   &_swigt__p_wxPaintEvent
, 
4632   &_swigt__p_wxPaletteChangedEvent
, 
4633   &_swigt__p_wxPaperSize
, 
4635   &_swigt__p_wxPyCommandEvent
, 
4636   &_swigt__p_wxPyEvent
, 
4637   &_swigt__p_wxPyImageHandler
, 
4638   &_swigt__p_wxPySizer
, 
4639   &_swigt__p_wxPyValidator
, 
4640   &_swigt__p_wxQueryNewPaletteEvent
, 
4641   &_swigt__p_wxScrollEvent
, 
4642   &_swigt__p_wxScrollWinEvent
, 
4643   &_swigt__p_wxSetCursorEvent
, 
4644   &_swigt__p_wxShowEvent
, 
4645   &_swigt__p_wxSizeEvent
, 
4647   &_swigt__p_wxSizerItem
, 
4648   &_swigt__p_wxStaticBoxSizer
, 
4649   &_swigt__p_wxStdDialogButtonSizer
, 
4650   &_swigt__p_wxSysColourChangedEvent
, 
4651   &_swigt__p_wxTGAHandler
, 
4652   &_swigt__p_wxTIFFHandler
, 
4653   &_swigt__p_wxUpdateUIEvent
, 
4654   &_swigt__p_wxValidator
, 
4655   &_swigt__p_wxWindow
, 
4656   &_swigt__p_wxWindowCreateEvent
, 
4657   &_swigt__p_wxWindowDestroyEvent
, 
4658   &_swigt__p_wxXPMHandler
, 
4661 static swig_cast_info _swigc__p_char
[] = {  {&_swigt__p_char
, 0, 0, 0},{0, 0, 0, 0}}; 
4662 static swig_cast_info _swigc__p_form_ops_t
[] = {  {&_swigt__p_form_ops_t
, 0, 0, 0},{0, 0, 0, 0}}; 
4663 static swig_cast_info _swigc__p_int
[] = {  {&_swigt__p_int
, 0, 0, 0},{0, 0, 0, 0}}; 
4664 static swig_cast_info _swigc__p_unsigned_char
[] = {  {&_swigt__p_unsigned_char
, 0, 0, 0},{0, 0, 0, 0}}; 
4665 static swig_cast_info _swigc__p_unsigned_int
[] = {  {&_swigt__p_unsigned_int
, 0, 0, 0},{0, 0, 0, 0}}; 
4666 static swig_cast_info _swigc__p_unsigned_long
[] = {  {&_swigt__p_unsigned_long
, 0, 0, 0},{0, 0, 0, 0}}; 
4667 static swig_cast_info _swigc__p_wxChildFocusEvent
[] = {{&_swigt__p_wxChildFocusEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4668 static swig_cast_info _swigc__p_wxScrollEvent
[] = {{&_swigt__p_wxScrollEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4669 static swig_cast_info _swigc__p_wxWindowCreateEvent
[] = {{&_swigt__p_wxWindowCreateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4670 static swig_cast_info _swigc__p_wxDateEvent
[] = {{&_swigt__p_wxDateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4671 static swig_cast_info _swigc__p_wxUpdateUIEvent
[] = {{&_swigt__p_wxUpdateUIEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4672 static swig_cast_info _swigc__p_wxClipboardTextEvent
[] = {{&_swigt__p_wxClipboardTextEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4673 static swig_cast_info _swigc__p_wxWindowDestroyEvent
[] = {{&_swigt__p_wxWindowDestroyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4674 static swig_cast_info _swigc__p_wxContextMenuEvent
[] = {{&_swigt__p_wxContextMenuEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4675 static swig_cast_info _swigc__p_wxPyCommandEvent
[] = {{&_swigt__p_wxPyCommandEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4676 static swig_cast_info _swigc__p_wxCommandEvent
[] = {  {&_swigt__p_wxChildFocusEvent
, _p_wxChildFocusEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxScrollEvent
, _p_wxScrollEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxWindowCreateEvent
, _p_wxWindowCreateEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxDateEvent
, _p_wxDateEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxUpdateUIEvent
, _p_wxUpdateUIEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxClipboardTextEvent
, _p_wxClipboardTextEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxWindowDestroyEvent
, _p_wxWindowDestroyEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxContextMenuEvent
, _p_wxContextMenuEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxCommandEvent
, 0, 0, 0},  {&_swigt__p_wxNotifyEvent
, _p_wxNotifyEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxMediaEvent
, _p_wxMediaEventTo_p_wxCommandEvent
, 0, 0},  {&_swigt__p_wxPyCommandEvent
, _p_wxPyCommandEventTo_p_wxCommandEvent
, 0, 0},{0, 0, 0, 0}}; 
4677 static swig_cast_info _swigc__p_wxControlWithItems
[] = {{&_swigt__p_wxControlWithItems
, 0, 0, 0},{0, 0, 0, 0}}; 
4678 static swig_cast_info _swigc__p_wxControl
[] = {  {&_swigt__p_wxControl
, 0, 0, 0},  {&_swigt__p_wxControlWithItems
, _p_wxControlWithItemsTo_p_wxControl
, 0, 0},  {&_swigt__p_wxMediaCtrl
, _p_wxMediaCtrlTo_p_wxControl
, 0, 0},{0, 0, 0, 0}}; 
4679 static swig_cast_info _swigc__p_wxDuplexMode
[] = {  {&_swigt__p_wxDuplexMode
, 0, 0, 0},{0, 0, 0, 0}}; 
4680 static swig_cast_info _swigc__p_wxMenuEvent
[] = {{&_swigt__p_wxMenuEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4681 static swig_cast_info _swigc__p_wxCloseEvent
[] = {{&_swigt__p_wxCloseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4682 static swig_cast_info _swigc__p_wxMouseEvent
[] = {{&_swigt__p_wxMouseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4683 static swig_cast_info _swigc__p_wxEraseEvent
[] = {{&_swigt__p_wxEraseEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4684 static swig_cast_info _swigc__p_wxSetCursorEvent
[] = {{&_swigt__p_wxSetCursorEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4685 static swig_cast_info _swigc__p_wxInitDialogEvent
[] = {{&_swigt__p_wxInitDialogEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4686 static swig_cast_info _swigc__p_wxPyEvent
[] = {{&_swigt__p_wxPyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4687 static swig_cast_info _swigc__p_wxMouseCaptureLostEvent
[] = {{&_swigt__p_wxMouseCaptureLostEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4688 static swig_cast_info _swigc__p_wxIdleEvent
[] = {{&_swigt__p_wxIdleEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4689 static swig_cast_info _swigc__p_wxQueryNewPaletteEvent
[] = {{&_swigt__p_wxQueryNewPaletteEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4690 static swig_cast_info _swigc__p_wxMaximizeEvent
[] = {{&_swigt__p_wxMaximizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4691 static swig_cast_info _swigc__p_wxIconizeEvent
[] = {{&_swigt__p_wxIconizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4692 static swig_cast_info _swigc__p_wxActivateEvent
[] = {{&_swigt__p_wxActivateEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4693 static swig_cast_info _swigc__p_wxSizeEvent
[] = {{&_swigt__p_wxSizeEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4694 static swig_cast_info _swigc__p_wxMoveEvent
[] = {{&_swigt__p_wxMoveEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4695 static swig_cast_info _swigc__p_wxPaintEvent
[] = {{&_swigt__p_wxPaintEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4696 static swig_cast_info _swigc__p_wxNcPaintEvent
[] = {{&_swigt__p_wxNcPaintEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4697 static swig_cast_info _swigc__p_wxPaletteChangedEvent
[] = {{&_swigt__p_wxPaletteChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4698 static swig_cast_info _swigc__p_wxDisplayChangedEvent
[] = {{&_swigt__p_wxDisplayChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4699 static swig_cast_info _swigc__p_wxMouseCaptureChangedEvent
[] = {{&_swigt__p_wxMouseCaptureChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4700 static swig_cast_info _swigc__p_wxSysColourChangedEvent
[] = {{&_swigt__p_wxSysColourChangedEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4701 static swig_cast_info _swigc__p_wxDropFilesEvent
[] = {{&_swigt__p_wxDropFilesEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4702 static swig_cast_info _swigc__p_wxFocusEvent
[] = {{&_swigt__p_wxFocusEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4703 static swig_cast_info _swigc__p_wxShowEvent
[] = {{&_swigt__p_wxShowEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4704 static swig_cast_info _swigc__p_wxNavigationKeyEvent
[] = {{&_swigt__p_wxNavigationKeyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4705 static swig_cast_info _swigc__p_wxKeyEvent
[] = {{&_swigt__p_wxKeyEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4706 static swig_cast_info _swigc__p_wxScrollWinEvent
[] = {{&_swigt__p_wxScrollWinEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4707 static swig_cast_info _swigc__p_wxEvent
[] = {  {&_swigt__p_wxContextMenuEvent
, _p_wxContextMenuEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMenuEvent
, _p_wxMenuEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxCloseEvent
, _p_wxCloseEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMouseEvent
, _p_wxMouseEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxEraseEvent
, _p_wxEraseEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxSetCursorEvent
, _p_wxSetCursorEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxInitDialogEvent
, _p_wxInitDialogEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxScrollEvent
, _p_wxScrollEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxNotifyEvent
, _p_wxNotifyEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxPyEvent
, _p_wxPyEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent
, _p_wxMouseCaptureLostEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxEvent
, 0, 0, 0},  {&_swigt__p_wxWindowCreateEvent
, _p_wxWindowCreateEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxIdleEvent
, _p_wxIdleEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent
, _p_wxQueryNewPaletteEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMaximizeEvent
, _p_wxMaximizeEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxIconizeEvent
, _p_wxIconizeEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxActivateEvent
, _p_wxActivateEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxSizeEvent
, _p_wxSizeEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMoveEvent
, _p_wxMoveEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxDateEvent
, _p_wxDateEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxPaintEvent
, _p_wxPaintEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxNcPaintEvent
, _p_wxNcPaintEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxClipboardTextEvent
, _p_wxClipboardTextEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxUpdateUIEvent
, _p_wxUpdateUIEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxPaletteChangedEvent
, _p_wxPaletteChangedEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxDisplayChangedEvent
, _p_wxDisplayChangedEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMouseCaptureChangedEvent
, _p_wxMouseCaptureChangedEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxSysColourChangedEvent
, _p_wxSysColourChangedEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxDropFilesEvent
, _p_wxDropFilesEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxFocusEvent
, _p_wxFocusEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxChildFocusEvent
, _p_wxChildFocusEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxShowEvent
, _p_wxShowEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxCommandEvent
, _p_wxCommandEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxPyCommandEvent
, _p_wxPyCommandEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxWindowDestroyEvent
, _p_wxWindowDestroyEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxNavigationKeyEvent
, _p_wxNavigationKeyEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxKeyEvent
, _p_wxKeyEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxMediaEvent
, _p_wxMediaEventTo_p_wxEvent
, 0, 0},  {&_swigt__p_wxScrollWinEvent
, _p_wxScrollWinEventTo_p_wxEvent
, 0, 0},{0, 0, 0, 0}}; 
4708 static swig_cast_info _swigc__p_wxPyApp
[] = {{&_swigt__p_wxPyApp
, 0, 0, 0},{0, 0, 0, 0}}; 
4709 static swig_cast_info _swigc__p_wxMenuBar
[] = {{&_swigt__p_wxMenuBar
, 0, 0, 0},{0, 0, 0, 0}}; 
4710 static swig_cast_info _swigc__p_wxPyValidator
[] = {{&_swigt__p_wxPyValidator
, 0, 0, 0},{0, 0, 0, 0}}; 
4711 static swig_cast_info _swigc__p_wxMenu
[] = {{&_swigt__p_wxMenu
, 0, 0, 0},{0, 0, 0, 0}}; 
4712 static swig_cast_info _swigc__p_wxEvtHandler
[] = {  {&_swigt__p_wxControl
, _p_wxControlTo_p_wxEvtHandler
, 0, 0},  {&_swigt__p_wxControlWithItems
, _p_wxControlWithItemsTo_p_wxEvtHandler
, 0, 0},  {&_swigt__p_wxWindow
, _p_wxWindowTo_p_wxEvtHandler
, 0, 0},  {&_swigt__p_wxEvtHandler
, 0, 0, 0},  {&_swigt__p_wxMediaCtrl
, _p_wxMediaCtrlTo_p_wxEvtHandler
, 0, 0},  {&_swigt__p_wxPyApp
, _p_wxPyAppTo_p_wxEvtHandler
, 0, 0},  {&_swigt__p_wxMenuBar
, _p_wxMenuBarTo_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}}; 
4713 static swig_cast_info _swigc__p_wxFileOffset
[] = {  {&_swigt__p_wxFileOffset
, 0, 0, 0},{0, 0, 0, 0}}; 
4714 static swig_cast_info _swigc__p_wxMediaCtrl
[] = {  {&_swigt__p_wxMediaCtrl
, 0, 0, 0},{0, 0, 0, 0}}; 
4715 static swig_cast_info _swigc__p_wxMediaEvent
[] = {  {&_swigt__p_wxMediaEvent
, 0, 0, 0},{0, 0, 0, 0}}; 
4716 static swig_cast_info _swigc__p_wxNotifyEvent
[] = {  {&_swigt__p_wxNotifyEvent
, 0, 0, 0},  {&_swigt__p_wxMediaEvent
, _p_wxMediaEventTo_p_wxNotifyEvent
, 0, 0},{0, 0, 0, 0}}; 
4717 static swig_cast_info _swigc__p_wxLayoutConstraints
[] = {{&_swigt__p_wxLayoutConstraints
, 0, 0, 0},{0, 0, 0, 0}}; 
4718 static swig_cast_info _swigc__p_wxSizerItem
[] = {{&_swigt__p_wxSizerItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4719 static swig_cast_info _swigc__p_wxGBSizerItem
[] = {{&_swigt__p_wxGBSizerItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4720 static swig_cast_info _swigc__p_wxIndividualLayoutConstraint
[] = {{&_swigt__p_wxIndividualLayoutConstraint
, 0, 0, 0},{0, 0, 0, 0}}; 
4721 static swig_cast_info _swigc__p_wxStaticBoxSizer
[] = {{&_swigt__p_wxStaticBoxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4722 static swig_cast_info _swigc__p_wxBoxSizer
[] = {{&_swigt__p_wxBoxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4723 static swig_cast_info _swigc__p_wxSizer
[] = {{&_swigt__p_wxSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4724 static swig_cast_info _swigc__p_wxGridBagSizer
[] = {{&_swigt__p_wxGridBagSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4725 static swig_cast_info _swigc__p_wxFlexGridSizer
[] = {{&_swigt__p_wxFlexGridSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4726 static swig_cast_info _swigc__p_wxGridSizer
[] = {{&_swigt__p_wxGridSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4727 static swig_cast_info _swigc__p_wxFSFile
[] = {{&_swigt__p_wxFSFile
, 0, 0, 0},{0, 0, 0, 0}}; 
4728 static swig_cast_info _swigc__p_wxPySizer
[] = {{&_swigt__p_wxPySizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4729 static swig_cast_info _swigc__p_wxMenuItem
[] = {{&_swigt__p_wxMenuItem
, 0, 0, 0},{0, 0, 0, 0}}; 
4730 static swig_cast_info _swigc__p_wxPNGHandler
[] = {{&_swigt__p_wxPNGHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4731 static swig_cast_info _swigc__p_wxANIHandler
[] = {{&_swigt__p_wxANIHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4732 static swig_cast_info _swigc__p_wxCURHandler
[] = {{&_swigt__p_wxCURHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4733 static swig_cast_info _swigc__p_wxICOHandler
[] = {{&_swigt__p_wxICOHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4734 static swig_cast_info _swigc__p_wxBMPHandler
[] = {{&_swigt__p_wxBMPHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4735 static swig_cast_info _swigc__p_wxPyImageHandler
[] = {{&_swigt__p_wxPyImageHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4736 static swig_cast_info _swigc__p_wxImageHandler
[] = {{&_swigt__p_wxImageHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4737 static swig_cast_info _swigc__p_wxXPMHandler
[] = {{&_swigt__p_wxXPMHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4738 static swig_cast_info _swigc__p_wxTIFFHandler
[] = {{&_swigt__p_wxTIFFHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4739 static swig_cast_info _swigc__p_wxTGAHandler
[] = {{&_swigt__p_wxTGAHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4740 static swig_cast_info _swigc__p_wxGIFHandler
[] = {{&_swigt__p_wxGIFHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4741 static swig_cast_info _swigc__p_wxPCXHandler
[] = {{&_swigt__p_wxPCXHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4742 static swig_cast_info _swigc__p_wxJPEGHandler
[] = {{&_swigt__p_wxJPEGHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4743 static swig_cast_info _swigc__p_wxPNMHandler
[] = {{&_swigt__p_wxPNMHandler
, 0, 0, 0},{0, 0, 0, 0}}; 
4744 static swig_cast_info _swigc__p_wxStdDialogButtonSizer
[] = {{&_swigt__p_wxStdDialogButtonSizer
, 0, 0, 0},{0, 0, 0, 0}}; 
4745 static swig_cast_info _swigc__p_wxAcceleratorTable
[] = {{&_swigt__p_wxAcceleratorTable
, 0, 0, 0},{0, 0, 0, 0}}; 
4746 static swig_cast_info _swigc__p_wxImage
[] = {{&_swigt__p_wxImage
, 0, 0, 0},{0, 0, 0, 0}}; 
4747 static swig_cast_info _swigc__p_wxFileSystem
[] = {{&_swigt__p_wxFileSystem
, 0, 0, 0},{0, 0, 0, 0}}; 
4748 static swig_cast_info _swigc__p_wxObject
[] = {  {&_swigt__p_wxLayoutConstraints
, _p_wxLayoutConstraintsTo_p_wxObject
, 0, 0},  {&_swigt__p_wxSizerItem
, _p_wxSizerItemTo_p_wxObject
, 0, 0},  {&_swigt__p_wxGBSizerItem
, _p_wxGBSizerItemTo_p_wxObject
, 0, 0},  {&_swigt__p_wxScrollEvent
, _p_wxScrollEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxIndividualLayoutConstraint
, _p_wxIndividualLayoutConstraintTo_p_wxObject
, 0, 0},  {&_swigt__p_wxStaticBoxSizer
, _p_wxStaticBoxSizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxBoxSizer
, _p_wxBoxSizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxSizer
, _p_wxSizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxGridBagSizer
, _p_wxGridBagSizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxUpdateUIEvent
, _p_wxUpdateUIEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMenu
, _p_wxMenuTo_p_wxObject
, 0, 0},  {&_swigt__p_wxEvent
, _p_wxEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxFlexGridSizer
, _p_wxFlexGridSizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxGridSizer
, _p_wxGridSizerTo_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_wxClipboardTextEvent
, _p_wxClipboardTextEventTo_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_wxMediaCtrl
, _p_wxMediaCtrlTo_p_wxObject
, 0, 0},  {&_swigt__p_wxControl
, _p_wxControlTo_p_wxObject
, 0, 0},  {&_swigt__p_wxSetCursorEvent
, _p_wxSetCursorEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMediaEvent
, _p_wxMediaEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxFSFile
, _p_wxFSFileTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPySizer
, _p_wxPySizerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxNotifyEvent
, _p_wxNotifyEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPyEvent
, _p_wxPyEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxShowEvent
, _p_wxShowEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMenuItem
, _p_wxMenuItemTo_p_wxObject
, 0, 0},  {&_swigt__p_wxDateEvent
, _p_wxDateEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMoveEvent
, _p_wxMoveEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxSizeEvent
, _p_wxSizeEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxActivateEvent
, _p_wxActivateEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxIconizeEvent
, _p_wxIconizeEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMaximizeEvent
, _p_wxMaximizeEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxQueryNewPaletteEvent
, _p_wxQueryNewPaletteEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxIdleEvent
, _p_wxIdleEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxWindowCreateEvent
, _p_wxWindowCreateEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPNGHandler
, _p_wxPNGHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxANIHandler
, _p_wxANIHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxCURHandler
, _p_wxCURHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxICOHandler
, _p_wxICOHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxBMPHandler
, _p_wxBMPHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPyImageHandler
, _p_wxPyImageHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxImageHandler
, _p_wxImageHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxXPMHandler
, _p_wxXPMHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxTIFFHandler
, _p_wxTIFFHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxTGAHandler
, _p_wxTGAHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxEvtHandler
, _p_wxEvtHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxMouseCaptureLostEvent
, _p_wxMouseCaptureLostEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxGIFHandler
, _p_wxGIFHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPCXHandler
, _p_wxPCXHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxJPEGHandler
, _p_wxJPEGHandlerTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPNMHandler
, _p_wxPNMHandlerTo_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_wxKeyEvent
, _p_wxKeyEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxNavigationKeyEvent
, _p_wxNavigationKeyEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxWindowDestroyEvent
, _p_wxWindowDestroyEventTo_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_wxPyCommandEvent
, _p_wxPyCommandEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxCommandEvent
, _p_wxCommandEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxDropFilesEvent
, _p_wxDropFilesEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxFocusEvent
, _p_wxFocusEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxChildFocusEvent
, _p_wxChildFocusEventTo_p_wxObject
, 0, 0},  {&_swigt__p_wxControlWithItems
, _p_wxControlWithItemsTo_p_wxObject
, 0, 0},  {&_swigt__p_wxPyValidator
, _p_wxPyValidatorTo_p_wxObject
, 0, 0},  {&_swigt__p_wxValidator
, _p_wxValidatorTo_p_wxObject
, 0, 0},{0, 0, 0, 0}}; 
4749 static swig_cast_info _swigc__p_wxPaperSize
[] = {  {&_swigt__p_wxPaperSize
, 0, 0, 0},{0, 0, 0, 0}}; 
4750 static swig_cast_info _swigc__p_wxValidator
[] = {  {&_swigt__p_wxValidator
, 0, 0, 0},  {&_swigt__p_wxPyValidator
, _p_wxPyValidatorTo_p_wxValidator
, 0, 0},{0, 0, 0, 0}}; 
4751 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_wxMediaCtrl
, _p_wxMediaCtrlTo_p_wxWindow
, 0, 0},  {&_swigt__p_wxMenuBar
, _p_wxMenuBarTo_p_wxWindow
, 0, 0},{0, 0, 0, 0}}; 
4753 static swig_cast_info 
*swig_cast_initial
[] = { 
4755   _swigc__p_form_ops_t
, 
4757   _swigc__p_unsigned_char
, 
4758   _swigc__p_unsigned_int
, 
4759   _swigc__p_unsigned_long
, 
4760   _swigc__p_wxANIHandler
, 
4761   _swigc__p_wxAcceleratorTable
, 
4762   _swigc__p_wxActivateEvent
, 
4763   _swigc__p_wxBMPHandler
, 
4764   _swigc__p_wxBoxSizer
, 
4765   _swigc__p_wxCURHandler
, 
4766   _swigc__p_wxChildFocusEvent
, 
4767   _swigc__p_wxClipboardTextEvent
, 
4768   _swigc__p_wxCloseEvent
, 
4769   _swigc__p_wxCommandEvent
, 
4770   _swigc__p_wxContextMenuEvent
, 
4771   _swigc__p_wxControl
, 
4772   _swigc__p_wxControlWithItems
, 
4773   _swigc__p_wxDateEvent
, 
4774   _swigc__p_wxDisplayChangedEvent
, 
4775   _swigc__p_wxDropFilesEvent
, 
4776   _swigc__p_wxDuplexMode
, 
4777   _swigc__p_wxEraseEvent
, 
4779   _swigc__p_wxEvtHandler
, 
4781   _swigc__p_wxFileOffset
, 
4782   _swigc__p_wxFileSystem
, 
4783   _swigc__p_wxFlexGridSizer
, 
4784   _swigc__p_wxFocusEvent
, 
4785   _swigc__p_wxGBSizerItem
, 
4786   _swigc__p_wxGIFHandler
, 
4787   _swigc__p_wxGridBagSizer
, 
4788   _swigc__p_wxGridSizer
, 
4789   _swigc__p_wxICOHandler
, 
4790   _swigc__p_wxIconizeEvent
, 
4791   _swigc__p_wxIdleEvent
, 
4793   _swigc__p_wxImageHandler
, 
4794   _swigc__p_wxIndividualLayoutConstraint
, 
4795   _swigc__p_wxInitDialogEvent
, 
4796   _swigc__p_wxJPEGHandler
, 
4797   _swigc__p_wxKeyEvent
, 
4798   _swigc__p_wxLayoutConstraints
, 
4799   _swigc__p_wxMaximizeEvent
, 
4800   _swigc__p_wxMediaCtrl
, 
4801   _swigc__p_wxMediaEvent
, 
4803   _swigc__p_wxMenuBar
, 
4804   _swigc__p_wxMenuEvent
, 
4805   _swigc__p_wxMenuItem
, 
4806   _swigc__p_wxMouseCaptureChangedEvent
, 
4807   _swigc__p_wxMouseCaptureLostEvent
, 
4808   _swigc__p_wxMouseEvent
, 
4809   _swigc__p_wxMoveEvent
, 
4810   _swigc__p_wxNavigationKeyEvent
, 
4811   _swigc__p_wxNcPaintEvent
, 
4812   _swigc__p_wxNotifyEvent
, 
4814   _swigc__p_wxPCXHandler
, 
4815   _swigc__p_wxPNGHandler
, 
4816   _swigc__p_wxPNMHandler
, 
4817   _swigc__p_wxPaintEvent
, 
4818   _swigc__p_wxPaletteChangedEvent
, 
4819   _swigc__p_wxPaperSize
, 
4821   _swigc__p_wxPyCommandEvent
, 
4822   _swigc__p_wxPyEvent
, 
4823   _swigc__p_wxPyImageHandler
, 
4824   _swigc__p_wxPySizer
, 
4825   _swigc__p_wxPyValidator
, 
4826   _swigc__p_wxQueryNewPaletteEvent
, 
4827   _swigc__p_wxScrollEvent
, 
4828   _swigc__p_wxScrollWinEvent
, 
4829   _swigc__p_wxSetCursorEvent
, 
4830   _swigc__p_wxShowEvent
, 
4831   _swigc__p_wxSizeEvent
, 
4833   _swigc__p_wxSizerItem
, 
4834   _swigc__p_wxStaticBoxSizer
, 
4835   _swigc__p_wxStdDialogButtonSizer
, 
4836   _swigc__p_wxSysColourChangedEvent
, 
4837   _swigc__p_wxTGAHandler
, 
4838   _swigc__p_wxTIFFHandler
, 
4839   _swigc__p_wxUpdateUIEvent
, 
4840   _swigc__p_wxValidator
, 
4842   _swigc__p_wxWindowCreateEvent
, 
4843   _swigc__p_wxWindowDestroyEvent
, 
4844   _swigc__p_wxXPMHandler
, 
4848 /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ 
4850 static swig_const_info swig_const_table
[] = { 
4851 {0, 0, 0, 0.0, 0, 0}}; 
4856 /* ----------------------------------------------------------------------------- 
4857  * Type initialization: 
4858  * This problem is tough by the requirement that no dynamic  
4859  * memory is used. Also, since swig_type_info structures store pointers to  
4860  * swig_cast_info structures and swig_cast_info structures store pointers back 
4861  * to swig_type_info structures, we need some lookup code at initialization.  
4862  * The idea is that swig generates all the structures that are needed.  
4863  * The runtime then collects these partially filled structures.  
4864  * The SWIG_InitializeModule function takes these initial arrays out of  
4865  * swig_module, and does all the lookup, filling in the swig_module.types 
4866  * array with the correct data and linking the correct swig_cast_info 
4867  * structures together. 
4869  * The generated swig_type_info structures are assigned staticly to an initial  
4870  * array. We just loop though that array, and handle each type individually. 
4871  * First we lookup if this type has been already loaded, and if so, use the 
4872  * loaded structure instead of the generated one. Then we have to fill in the 
4873  * cast linked list. The cast data is initially stored in something like a 
4874  * two-dimensional array. Each row corresponds to a type (there are the same 
4875  * number of rows as there are in the swig_type_initial array). Each entry in 
4876  * a column is one of the swig_cast_info structures for that type. 
4877  * The cast_initial array is actually an array of arrays, because each row has 
4878  * a variable number of columns. So to actually build the cast linked list, 
4879  * we find the array of casts associated with the type, and loop through it  
4880  * adding the casts to the list. The one last trick we need to do is making 
4881  * sure the type pointer in the swig_cast_info struct is correct. 
4883  * First off, we lookup the cast->type name to see if it is already loaded.  
4884  * There are three cases to handle: 
4885  *  1) If the cast->type has already been loaded AND the type we are adding 
4886  *     casting info to has not been loaded (it is in this module), THEN we 
4887  *     replace the cast->type pointer with the type pointer that has already 
4889  *  2) If BOTH types (the one we are adding casting info to, and the  
4890  *     cast->type) are loaded, THEN the cast info has already been loaded by 
4891  *     the previous module so we just ignore it. 
4892  *  3) Finally, if cast->type has not already been loaded, then we add that 
4893  *     swig_cast_info to the linked list (because the cast->type) pointer will 
4895  * ----------------------------------------------------------------------------- */ 
4905 #define SWIGRUNTIME_DEBUG 
4909 SWIG_InitializeModule(void *clientdata
) { 
4911   swig_module_info 
*module_head
; 
4912   static int init_run 
= 0; 
4914   clientdata 
= clientdata
; 
4916   if (init_run
) return; 
4919   /* Initialize the swig_module */ 
4920   swig_module
.type_initial 
= swig_type_initial
; 
4921   swig_module
.cast_initial 
= swig_cast_initial
; 
4923   /* Try and load any already created modules */ 
4924   module_head 
= SWIG_GetModule(clientdata
); 
4926     swig_module
.next 
= module_head
->next
; 
4927     module_head
->next 
= &swig_module
; 
4929     /* This is the first module loaded */ 
4930     swig_module
.next 
= &swig_module
; 
4931     SWIG_SetModule(clientdata
, &swig_module
); 
4934   /* Now work on filling in swig_module.types */ 
4935 #ifdef SWIGRUNTIME_DEBUG 
4936   printf("SWIG_InitializeModule: size %d\n", swig_module
.size
); 
4938   for (i 
= 0; i 
< swig_module
.size
; ++i
) { 
4939     swig_type_info 
*type 
= 0; 
4940     swig_type_info 
*ret
; 
4941     swig_cast_info 
*cast
; 
4943 #ifdef SWIGRUNTIME_DEBUG 
4944     printf("SWIG_InitializeModule: type %d %s\n", i
, swig_module
.type_initial
[i
]->name
); 
4947     /* if there is another module already loaded */ 
4948     if (swig_module
.next 
!= &swig_module
) { 
4949       type 
= SWIG_MangledTypeQueryModule(swig_module
.next
, &swig_module
, swig_module
.type_initial
[i
]->name
); 
4952       /* Overwrite clientdata field */ 
4953 #ifdef SWIGRUNTIME_DEBUG 
4954       printf("SWIG_InitializeModule: found type %s\n", type
->name
); 
4956       if (swig_module
.type_initial
[i
]->clientdata
) { 
4957         type
->clientdata 
= swig_module
.type_initial
[i
]->clientdata
; 
4958 #ifdef SWIGRUNTIME_DEBUG 
4959         printf("SWIG_InitializeModule: found and overwrite type %s \n", type
->name
); 
4963       type 
= swig_module
.type_initial
[i
]; 
4966     /* Insert casting types */ 
4967     cast 
= swig_module
.cast_initial
[i
]; 
4968     while (cast
->type
) { 
4969       /* Don't need to add information already in the list */ 
4971 #ifdef SWIGRUNTIME_DEBUG 
4972       printf("SWIG_InitializeModule: look cast %s\n", cast
->type
->name
); 
4974       if (swig_module
.next 
!= &swig_module
) { 
4975         ret 
= SWIG_MangledTypeQueryModule(swig_module
.next
, &swig_module
, cast
->type
->name
); 
4976 #ifdef SWIGRUNTIME_DEBUG 
4977         if (ret
) printf("SWIG_InitializeModule: found cast %s\n", ret
->name
); 
4981         if (type 
== swig_module
.type_initial
[i
]) { 
4982 #ifdef SWIGRUNTIME_DEBUG 
4983           printf("SWIG_InitializeModule: skip old type %s\n", ret
->name
); 
4988           /* Check for casting already in the list */ 
4989           swig_cast_info 
*ocast 
= SWIG_TypeCheck(ret
->name
, type
); 
4990 #ifdef SWIGRUNTIME_DEBUG 
4991           if (ocast
) printf("SWIG_InitializeModule: skip old cast %s\n", ret
->name
); 
4993           if (!ocast
) ret 
= 0; 
4998 #ifdef SWIGRUNTIME_DEBUG 
4999         printf("SWIG_InitializeModule: adding cast %s\n", cast
->type
->name
); 
5002           type
->cast
->prev 
= cast
; 
5003           cast
->next 
= type
->cast
; 
5009     /* Set entry in modules->types array equal to the type */ 
5010     swig_module
.types
[i
] = type
; 
5012   swig_module
.types
[i
] = 0; 
5014 #ifdef SWIGRUNTIME_DEBUG 
5015   printf("**** SWIG_InitializeModule: Cast List ******\n"); 
5016   for (i 
= 0; i 
< swig_module
.size
; ++i
) { 
5018     swig_cast_info 
*cast 
= swig_module
.cast_initial
[i
]; 
5019     printf("SWIG_InitializeModule: type %d %s\n", i
, swig_module
.type_initial
[i
]->name
); 
5020     while (cast
->type
) { 
5021       printf("SWIG_InitializeModule: cast type %s\n", cast
->type
->name
); 
5025     printf("---- Total casts: %d\n",j
); 
5027   printf("**** SWIG_InitializeModule: Cast List ******\n"); 
5031 /* This function will propagate the clientdata field of type to 
5032 * any new swig_type_info structures that have been added into the list 
5033 * of equivalent types.  It is like calling 
5034 * SWIG_TypeClientData(type, clientdata) a second time. 
5037 SWIG_PropagateClientData(void) { 
5039   swig_cast_info 
*equiv
; 
5040   static int init_run 
= 0; 
5042   if (init_run
) return; 
5045   for (i 
= 0; i 
< swig_module
.size
; i
++) { 
5046     if (swig_module
.types
[i
]->clientdata
) { 
5047       equiv 
= swig_module
.types
[i
]->cast
; 
5049         if (!equiv
->converter
) { 
5050           if (equiv
->type 
&& !equiv
->type
->clientdata
) 
5051           SWIG_TypeClientData(equiv
->type
, swig_module
.types
[i
]->clientdata
); 
5053         equiv 
= equiv
->next
; 
5073   /* Python-specific SWIG API */ 
5074 #define SWIG_newvarlink()                             SWIG_Python_newvarlink() 
5075 #define SWIG_addvarlink(p, name, get_attr, set_attr)  SWIG_Python_addvarlink(p, name, get_attr, set_attr) 
5076 #define SWIG_InstallConstants(d, constants)           SWIG_Python_InstallConstants(d, constants) 
5078   /* ----------------------------------------------------------------------------- 
5079    * global variable support code. 
5080    * ----------------------------------------------------------------------------- */ 
5082   typedef struct swig_globalvar 
{ 
5083     char       *name
;                  /* Name of global variable */ 
5084     PyObject 
*(*get_attr
)(void);       /* Return the current value */ 
5085     int       (*set_attr
)(PyObject 
*); /* Set the value */ 
5086     struct swig_globalvar 
*next
; 
5089   typedef struct swig_varlinkobject 
{ 
5091     swig_globalvar 
*vars
; 
5092   } swig_varlinkobject
; 
5094   SWIGINTERN PyObject 
* 
5095   swig_varlink_repr(swig_varlinkobject 
*SWIGUNUSEDPARM(v
)) { 
5096     return PyString_FromString("<Swig global variables>"); 
5099   SWIGINTERN PyObject 
* 
5100   swig_varlink_str(swig_varlinkobject 
*v
) { 
5101     PyObject 
*str 
= PyString_FromString("("); 
5102     swig_globalvar  
*var
; 
5103     for (var 
= v
->vars
; var
; var
=var
->next
) { 
5104       PyString_ConcatAndDel(&str
,PyString_FromString(var
->name
)); 
5105       if (var
->next
) PyString_ConcatAndDel(&str
,PyString_FromString(", ")); 
5107     PyString_ConcatAndDel(&str
,PyString_FromString(")")); 
5112   swig_varlink_print(swig_varlinkobject 
*v
, FILE *fp
, int SWIGUNUSEDPARM(flags
)) { 
5113     PyObject 
*str 
= swig_varlink_str(v
); 
5114     fprintf(fp
,"Swig global variables "); 
5115     fprintf(fp
,"%s\n", PyString_AsString(str
)); 
5121   swig_varlink_dealloc(swig_varlinkobject 
*v
) { 
5122     swig_globalvar 
*var 
= v
->vars
; 
5124       swig_globalvar 
*n 
= var
->next
; 
5131   SWIGINTERN PyObject 
* 
5132   swig_varlink_getattr(swig_varlinkobject 
*v
, char *n
) { 
5133     PyObject 
*res 
= NULL
; 
5134     swig_globalvar 
*var 
= v
->vars
; 
5136       if (strcmp(var
->name
,n
) == 0) { 
5137         res 
= (*var
->get_attr
)(); 
5142     if (res 
== NULL 
&& !PyErr_Occurred()) { 
5143       PyErr_SetString(PyExc_NameError
,"Unknown C global variable"); 
5149   swig_varlink_setattr(swig_varlinkobject 
*v
, char *n
, PyObject 
*p
) { 
5151     swig_globalvar 
*var 
= v
->vars
; 
5153       if (strcmp(var
->name
,n
) == 0) { 
5154         res 
= (*var
->set_attr
)(p
); 
5159     if (res 
== 1 && !PyErr_Occurred()) { 
5160       PyErr_SetString(PyExc_NameError
,"Unknown C global variable"); 
5165   SWIGINTERN PyTypeObject
* 
5166   swig_varlink_type(void) { 
5167     static char varlink__doc__
[] = "Swig var link object"; 
5168     static PyTypeObject varlink_type
; 
5169     static int type_init 
= 0;   
5171       const PyTypeObject tmp
 
5173         PyObject_HEAD_INIT(NULL
) 
5174         0,                                  /* Number of items in variable part (ob_size) */ 
5175         (char *)"swigvarlink",              /* Type name (tp_name) */ 
5176         sizeof(swig_varlinkobject
),         /* Basic size (tp_basicsize) */ 
5177         0,                                  /* Itemsize (tp_itemsize) */ 
5178         (destructor
) swig_varlink_dealloc
,   /* Deallocator (tp_dealloc) */  
5179         (printfunc
) swig_varlink_print
,     /* Print (tp_print) */ 
5180         (getattrfunc
) swig_varlink_getattr
, /* get attr (tp_getattr) */ 
5181         (setattrfunc
) swig_varlink_setattr
, /* Set attr (tp_setattr) */ 
5183         (reprfunc
) swig_varlink_repr
,       /* tp_repr */ 
5184         0,                                  /* tp_as_number */ 
5185         0,                                  /* tp_as_sequence */ 
5186         0,                                  /* tp_as_mapping */ 
5189         (reprfunc
)swig_varlink_str
,        /* tp_str */ 
5190         0,                                  /* tp_getattro */ 
5191         0,                                  /* tp_setattro */ 
5192         0,                                  /* tp_as_buffer */ 
5194         varlink__doc__
,                     /* tp_doc */ 
5195         0,                                  /* tp_traverse */ 
5197         0,                                  /* tp_richcompare */ 
5198         0,                                  /* tp_weaklistoffset */ 
5199 #if PY_VERSION_HEX >= 0x02020000 
5200         0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* tp_iter -> tp_weaklist */ 
5202 #if PY_VERSION_HEX >= 0x02030000 
5206         0,0,0,0                             /* tp_alloc -> tp_next */ 
5210       varlink_type
.ob_type 
= &PyType_Type
; 
5213     return &varlink_type
; 
5216   /* Create a variable linking object for use later */ 
5217   SWIGINTERN PyObject 
* 
5218   SWIG_Python_newvarlink(void) { 
5219     swig_varlinkobject 
*result 
= PyObject_NEW(swig_varlinkobject
, swig_varlink_type()); 
5223     return ((PyObject
*) result
); 
5227   SWIG_Python_addvarlink(PyObject 
*p
, char *name
, PyObject 
*(*get_attr
)(void), int (*set_attr
)(PyObject 
*p
)) { 
5228     swig_varlinkobject 
*v 
= (swig_varlinkobject 
*) p
; 
5229     swig_globalvar 
*gv 
= (swig_globalvar 
*) malloc(sizeof(swig_globalvar
)); 
5231       size_t size 
= strlen(name
)+1; 
5232       gv
->name 
= (char *)malloc(size
); 
5234         strncpy(gv
->name
,name
,size
); 
5235         gv
->get_attr 
= get_attr
; 
5236         gv
->set_attr 
= set_attr
; 
5243   SWIGINTERN PyObject 
* 
5245     static PyObject 
*_SWIG_globals 
= 0;  
5246     if (!_SWIG_globals
) _SWIG_globals 
= SWIG_newvarlink();   
5247     return _SWIG_globals
; 
5250   /* ----------------------------------------------------------------------------- 
5251    * constants/methods manipulation 
5252    * ----------------------------------------------------------------------------- */ 
5254   /* Install Constants */ 
5256   SWIG_Python_InstallConstants(PyObject 
*d
, swig_const_info constants
[]) { 
5259     for (i 
= 0; constants
[i
].type
; ++i
) { 
5260       switch(constants
[i
].type
) { 
5261       case SWIG_PY_POINTER
: 
5262         obj 
= SWIG_NewPointerObj(constants
[i
].pvalue
, *(constants
[i
]).ptype
,0); 
5264       case SWIG_PY_BINARY
: 
5265         obj 
= SWIG_NewPackedObj(constants
[i
].pvalue
, constants
[i
].lvalue
, *(constants
[i
].ptype
)); 
5272         PyDict_SetItemString(d
, constants
[i
].name
, obj
); 
5278   /* -----------------------------------------------------------------------------*/ 
5279   /* Fix SwigMethods to carry the callback ptrs when needed */ 
5280   /* -----------------------------------------------------------------------------*/ 
5283   SWIG_Python_FixMethods(PyMethodDef 
*methods
, 
5284     swig_const_info 
*const_table
, 
5285     swig_type_info 
**types
, 
5286     swig_type_info 
**types_initial
) { 
5288     for (i 
= 0; methods
[i
].ml_name
; ++i
) { 
5289       const char *c 
= methods
[i
].ml_doc
; 
5290       if (c 
&& (c 
= strstr(c
, "swig_ptr: "))) { 
5292         swig_const_info 
*ci 
= 0; 
5293         const char *name 
= c 
+ 10; 
5294         for (j 
= 0; const_table
[j
].type
; ++j
) { 
5295           if (strncmp(const_table
[j
].name
, name
,  
5296               strlen(const_table
[j
].name
)) == 0) { 
5297             ci 
= &(const_table
[j
]); 
5302           size_t shift 
= (ci
->ptype
) - types
; 
5303           swig_type_info 
*ty 
= types_initial
[shift
]; 
5304           size_t ldoc 
= (c 
- methods
[i
].ml_doc
); 
5305           size_t lptr 
= strlen(ty
->name
)+2*sizeof(void*)+2; 
5306           char *ndoc 
= (char*)malloc(ldoc 
+ lptr 
+ 10); 
5309             void *ptr 
= (ci
->type 
== SWIG_PY_POINTER
) ? ci
->pvalue 
: 0; 
5311               strncpy(buff
, methods
[i
].ml_doc
, ldoc
); 
5313               strncpy(buff
, "swig_ptr: ", 10); 
5315               SWIG_PackVoidPtr(buff
, ptr
, ty
->name
, lptr
); 
5316               methods
[i
].ml_doc 
= ndoc
; 
5328 /* -----------------------------------------------------------------------------* 
5329  *  Partial Init method 
5330  * -----------------------------------------------------------------------------*/ 
5335 SWIGEXPORT 
void SWIG_init(void) { 
5338   /* Fix SwigMethods to carry the callback ptrs when needed */ 
5339   SWIG_Python_FixMethods(SwigMethods
, swig_const_table
, swig_types
, swig_type_initial
); 
5341   m 
= Py_InitModule((char *) SWIG_name
, SwigMethods
); 
5342   d 
= PyModule_GetDict(m
); 
5344   SWIG_InitializeModule(0); 
5345   SWIG_InstallConstants(d
,swig_const_table
); 
5348   SWIG_Python_SetConstant(d
, "MEDIASTATE_STOPPED",SWIG_From_int(static_cast< int >(wxMEDIASTATE_STOPPED
))); 
5349   SWIG_Python_SetConstant(d
, "MEDIASTATE_PAUSED",SWIG_From_int(static_cast< int >(wxMEDIASTATE_PAUSED
))); 
5350   SWIG_Python_SetConstant(d
, "MEDIASTATE_PLAYING",SWIG_From_int(static_cast< int >(wxMEDIASTATE_PLAYING
))); 
5351   SWIG_Python_SetConstant(d
, "MEDIACTRLPLAYERCONTROLS_NONE",SWIG_From_int(static_cast< int >(wxMEDIACTRLPLAYERCONTROLS_NONE
))); 
5352   SWIG_Python_SetConstant(d
, "MEDIACTRLPLAYERCONTROLS_STEP",SWIG_From_int(static_cast< int >(wxMEDIACTRLPLAYERCONTROLS_STEP
))); 
5353   SWIG_Python_SetConstant(d
, "MEDIACTRLPLAYERCONTROLS_VOLUME",SWIG_From_int(static_cast< int >(wxMEDIACTRLPLAYERCONTROLS_VOLUME
))); 
5354   SWIG_Python_SetConstant(d
, "MEDIACTRLPLAYERCONTROLS_DEFAULT",SWIG_From_int(static_cast< int >(wxMEDIACTRLPLAYERCONTROLS_DEFAULT
))); 
5355   PyDict_SetItemString(d
,(char*)"cvar", SWIG_globals()); 
5356   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_DIRECTSHOW",MEDIABACKEND_DIRECTSHOW_get
, MEDIABACKEND_DIRECTSHOW_set
); 
5357   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_MCI",MEDIABACKEND_MCI_get
, MEDIABACKEND_MCI_set
); 
5358   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_QUICKTIME",MEDIABACKEND_QUICKTIME_get
, MEDIABACKEND_QUICKTIME_set
); 
5359   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_GSTREAMER",MEDIABACKEND_GSTREAMER_get
, MEDIABACKEND_GSTREAMER_set
); 
5360   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_REALPLAYER",MEDIABACKEND_REALPLAYER_get
, MEDIABACKEND_REALPLAYER_set
); 
5361   SWIG_addvarlink(SWIG_globals(),(char*)"MEDIABACKEND_WMP10",MEDIABACKEND_WMP10_get
, MEDIABACKEND_WMP10_set
); 
5362   SWIG_addvarlink(SWIG_globals(),(char*)"MediaCtrlNameStr",MediaCtrlNameStr_get
, MediaCtrlNameStr_set
); 
5363   PyDict_SetItemString(d
, "wxEVT_MEDIA_FINISHED", PyInt_FromLong(wxEVT_MEDIA_FINISHED
)); 
5364   PyDict_SetItemString(d
, "wxEVT_MEDIA_STOP", PyInt_FromLong(wxEVT_MEDIA_STOP
)); 
5365   PyDict_SetItemString(d
, "wxEVT_MEDIA_LOADED", PyInt_FromLong(wxEVT_MEDIA_LOADED
)); 
5366   PyDict_SetItemString(d
, "wxEVT_MEDIA_STATECHANGED", PyInt_FromLong(wxEVT_MEDIA_STATECHANGED
)); 
5367   PyDict_SetItemString(d
, "wxEVT_MEDIA_PLAY", PyInt_FromLong(wxEVT_MEDIA_PLAY
)); 
5368   PyDict_SetItemString(d
, "wxEVT_MEDIA_PAUSE", PyInt_FromLong(wxEVT_MEDIA_PAUSE
));