/* DEBUG : Language specific headers go here */ /* DEBUG : Pointer conversion function here */ /* DEBUG : Language specific code here */ #define SWIG_init swig_init #define SWIG_name "swig" WRAPPER : int my_variable; WRAPPER : double sum(double ,double ); C++ CLASS DECLARATION : class Foo2 C++ CLASS DECLARATION : class Class WRAPPER : Class *retClass(); C++ CLASS DECLARATION : class Foo3 C++ CLASS DECLARATION : class Foo4 C++ CLASS DECLARATION : class Bar WRAPPER : void OldName(double ); WRAPPER : void SameName(int ); WRAPPER : int foo10(double ); WRAPPER : int old_name(double ); C++ CLASS DECLARATION : class C C++ CLASS START : class Foo2 ======================================== ATTRIBUTE : double var; C++ STATIC VAR: double static_var; MEMBER FUNC : int sum(int ,int ); STATIC FUNC : int mul(int ,int ); C++ CONST : (int ) lager = [None] C++ CONST : (int ) ale = [None] C++ CONST : (int ) stout = [None] C++ CONST : (int ) pilsner = [None] MEMBER FUNC : int foo(double ,double ); MEMBER FUNC : void foo(char *); STATIC FUNC : int bar(double ); STATIC FUNC : void bar(char *); STATIC FUNC : int bar(int ); C++ CLASS END =================================================== C++ CLASS START : class Class ======================================== ATTRIBUTE : int member_data; MEMBER FUNC : double member_func(); MEMBER FUNC : void pointer(Class *); MEMBER FUNC : Class *retptr(); C++ CLASS END =================================================== C++ CLASS START : class Foo3 ======================================== inheriting from baseclass : Foo2 static void *SwigFoo3ToFoo2(void *ptr) { Foo3 *src; Foo2 *dest; src = (Foo3 *) ptr; dest = (Foo2 *) src; return (void *) dest; } ATTRIBUTE : double var; C++ STATIC VAR: double static_var; MEMBER FUNC : int sum(int ,int ); STATIC FUNC : int mul(int ,int ); C++ CONST : (int ) lager = [None] C++ CONST : (int ) ale = [None] C++ CONST : (int ) stout = [None] C++ CONST : (int ) pilsner = [None] MEMBER FUNC : int foo(double ,double ); MEMBER FUNC : void foo(char *); STATIC FUNC : int bar(double ); STATIC FUNC : void bar(char *); C++ CLASS END =================================================== C++ CLASS START : class Foo4 ======================================== inheriting from baseclass : Foo3 static void *SwigFoo4ToFoo3(void *ptr) { Foo4 *src; Foo3 *dest; src = (Foo4 *) ptr; dest = (Foo3 *) src; return (void *) dest; } static void *SwigFoo4ToFoo2(void *ptr) { Foo4 *src; Foo2 *dest; src = (Foo4 *) ptr; dest = (Foo2 *) src; return (void *) dest; } ATTRIBUTE : double var; C++ STATIC VAR: double static_var; MEMBER FUNC : int sum(int ,int ); STATIC FUNC : int mul(int ,int ); C++ CONST : (int ) lager = [None] C++ CONST : (int ) ale = [None] C++ CONST : (int ) stout = [None] C++ CONST : (int ) pilsner = [None] MEMBER FUNC : int foo(double ,double ); MEMBER FUNC : void foo(char *); STATIC FUNC : int bar(double ); STATIC FUNC : void bar(char *); C++ CLASS END =================================================== C++ CLASS START : class Bar ======================================== inheriting from baseclass : Class static void *SwigBarToClass(void *ptr) { Bar *src; Class *dest; src = (Bar *) ptr; dest = (Class *) src; return (void *) dest; } ATTRIBUTE : int member_data; MEMBER FUNC : double member_func(); MEMBER FUNC : void pointer(Class *); MEMBER FUNC : Class *retptr(); C++ CLASS END =================================================== C++ CLASS START : class C ======================================== MEMBER FUNC : int old_name(int ); C++ CLASS END =================================================== SWIG POINTER-MAPPING TABLE /* MODULE INITIALIZATION */ void swig_init() { ADD VARIABLE : new_variable --> int my_variable; ADD COMMAND : add --> double sum(double ,double ); ADD COMMAND : retClass --> Class *retClass(); ADD COMMAND : NewName --> void OldName(double ); ADD COMMAND : SameName --> void SameName(int ); ADD COMMAND : foo10 --> int foo10(double ); ADD COMMAND : new_name --> int old_name(double ); // C++ CLASS START : class Foo2 ADD MEMBER : new_var --> double var; ADD STATIC VAR : new_static_var --> double static_var; ADD MEMBER FUN : add --> int sum(int ,int ); ADD STATIC FUNC: product --> int mul(int ,int ); ADD C++ CONST : LAGER --> (int ) = [None] ADD C++ CONST : ALE --> (int ) = [None] ADD C++ CONST : STOUT --> (int ) = [None] ADD C++ CONST : PILSNER --> (int ) = [None] ADD MEMBER FUN : foo --> int foo(double ,double ); ADD MEMBER FUN : foochar --> void foo(char *); ADD STATIC FUNC: bar --> int bar(double ); ADD STATIC FUNC: barchar --> void bar(char *); ADD STATIC FUNC: bar --> int bar(int ); // C++ CLASS END // C++ CLASS START : class Class ADD MEMBER : member_data --> int member_data; ADD MEMBER FUN : member_func --> double member_func(); ADD MEMBER FUN : pointer --> void pointer(Class *); ADD MEMBER FUN : retptr --> Class *retptr(); // C++ CLASS END // C++ CLASS START : class Foo3 ADD MEMBER : new_var --> double var; ADD STATIC VAR : new_static_var --> double static_var; ADD MEMBER FUN : add --> int sum(int ,int ); ADD STATIC FUNC: product --> int mul(int ,int ); ADD C++ CONST : LAGER --> (int ) = [None] ADD C++ CONST : ALE --> (int ) = [None] ADD C++ CONST : STOUT --> (int ) = [None] ADD C++ CONST : PILSNER --> (int ) = [None] ADD MEMBER FUN : foo --> int foo(double ,double ); ADD MEMBER FUN : foochar --> void foo(char *); ADD STATIC FUNC: bar --> int bar(double ); ADD STATIC FUNC: barchar --> void bar(char *); // C++ CLASS END // C++ CLASS START : class Foo4 ADD MEMBER : new_var --> double var; ADD STATIC VAR : new_static_var --> double static_var; ADD MEMBER FUN : add --> int sum(int ,int ); ADD STATIC FUNC: product --> int mul(int ,int ); ADD C++ CONST : LAGER --> (int ) = [None] ADD C++ CONST : ALE --> (int ) = [None] ADD C++ CONST : STOUT --> (int ) = [None] ADD C++ CONST : PILSNER --> (int ) = [None] ADD MEMBER FUN : foo --> int foo(double ,double ); ADD MEMBER FUN : foochar --> void foo(char *); ADD STATIC FUNC: bar --> int bar(double ); ADD STATIC FUNC: barchar --> void bar(char *); // C++ CLASS END // C++ CLASS START : class Bar ADD MEMBER : member_data --> int member_data; ADD MEMBER FUN : member_func --> double member_func(); ADD MEMBER FUN : pointer --> void pointer(Class *); ADD MEMBER FUN : retptr --> Class *retptr(); // C++ CLASS END // C++ CLASS START : class C ADD MEMBER FUN : new_name --> int old_name(int ); // C++ CLASS END } /* END INIT */ /* * These are the pointer type-equivalency mappings. * (Used by the SWIG pointer type-checker). */ SWIG_RegisterMapping("_signed_long","_long",0); SWIG_RegisterMapping("_class_C","_C",0); SWIG_RegisterMapping("_long","_unsigned_long",0); SWIG_RegisterMapping("_long","_signed_long",0); SWIG_RegisterMapping("_Bar","_class_Bar",0); SWIG_RegisterMapping("_class_Foo2","_class_Foo4",SwigFoo4ToFoo2); SWIG_RegisterMapping("_class_Foo2","_Foo4",SwigFoo4ToFoo2); SWIG_RegisterMapping("_class_Foo2","_class_Foo3",SwigFoo3ToFoo2); SWIG_RegisterMapping("_class_Foo2","_Foo3",SwigFoo3ToFoo2); SWIG_RegisterMapping("_class_Foo2","_Foo2",0); SWIG_RegisterMapping("_class_Foo3","_class_Foo4",SwigFoo4ToFoo3); SWIG_RegisterMapping("_class_Foo3","_Foo4",SwigFoo4ToFoo3); SWIG_RegisterMapping("_class_Foo3","_Foo3",0); SWIG_RegisterMapping("_Class","_class_Bar",SwigBarToClass); SWIG_RegisterMapping("_Class","_Bar",SwigBarToClass); SWIG_RegisterMapping("_Class","_class_Class",0); SWIG_RegisterMapping("_class_Foo4","_Foo4",0); SWIG_RegisterMapping("_class_Bar","_Bar",0); SWIG_RegisterMapping("_unsigned_long","_long",0); SWIG_RegisterMapping("_signed_int","_int",0); SWIG_RegisterMapping("_unsigned_short","_short",0); SWIG_RegisterMapping("_signed_short","_short",0); SWIG_RegisterMapping("_unsigned_int","_int",0); SWIG_RegisterMapping("_short","_unsigned_short",0); SWIG_RegisterMapping("_short","_signed_short",0); SWIG_RegisterMapping("_int","_unsigned_int",0); SWIG_RegisterMapping("_int","_signed_int",0); SWIG_RegisterMapping("_C","_class_C",0); SWIG_RegisterMapping("_class_Class","_class_Bar",SwigBarToClass); SWIG_RegisterMapping("_class_Class","_Bar",SwigBarToClass); SWIG_RegisterMapping("_class_Class","_Class",0); SWIG_RegisterMapping("_Foo2","_class_Foo4",SwigFoo4ToFoo2); SWIG_RegisterMapping("_Foo2","_Foo4",SwigFoo4ToFoo2); SWIG_RegisterMapping("_Foo2","_class_Foo3",SwigFoo3ToFoo2); SWIG_RegisterMapping("_Foo2","_Foo3",SwigFoo3ToFoo2); SWIG_RegisterMapping("_Foo2","_class_Foo2",0); SWIG_RegisterMapping("_Foo3","_class_Foo4",SwigFoo4ToFoo3); SWIG_RegisterMapping("_Foo3","_Foo4",SwigFoo4ToFoo3); SWIG_RegisterMapping("_Foo3","_class_Foo3",0); SWIG_RegisterMapping("_Foo4","_class_Foo4",0);