1 /* ----------------------------------------------------------------------------- 2 * denums.swg 3 * 4 * Typemaps for enumerations. 5 * ----------------------------------------------------------------------------- */ 6 7 8 /* 9 * Typemaps for enumeration types. 10 */ 11 12 %typemap(ctype) enum SWIGTYPE "int" 13 %typemap(imtype) enum SWIGTYPE "int" 14 %typemap(dtype, cprimitive="1") enum SWIGTYPE "$dclassname" 15 16 %typecheck(SWIG_TYPECHECK_POINTER) enum SWIGTYPE "" 17 18 %typemap(in) enum SWIGTYPE %{ $1 = ($1_ltype)$input; %} 19 %typemap(out) enum SWIGTYPE %{ $result = $1; %} 20 21 %typemap(directorout) enum SWIGTYPE %{ $result = ($1_ltype)$input; %} 22 %typemap(directorin) enum SWIGTYPE "$input = $1;" 23 %typemap(ddirectorin) enum SWIGTYPE "cast($dclassname)$winput" 24 %typemap(ddirectorout) enum SWIGTYPE "cast(int)$dcall" 25 26 %typemap(din) enum SWIGTYPE "cast(int)$dinput" 27 %typemap(dout, excode=SWIGEXCODE) enum SWIGTYPE { 28 $dclassname ret = cast($dclassname)$imcall;$excode 29 return ret; 30 } 31 32 33 /* 34 * Typemaps for (const) references to enumeration types. 35 */ 36 37 %typemap(ctype) const enum SWIGTYPE & "int" 38 %typemap(imtype) const enum SWIGTYPE & "int" 39 %typemap(dtype) const enum SWIGTYPE & "$*dclassname" 40 41 %typecheck(SWIG_TYPECHECK_POINTER) const enum SWIGTYPE & "" 42 43 %typemap(in) const enum SWIGTYPE & ($*1_ltype temp) 44 %{ temp = ($*1_ltype)$input; 45 $1 = &temp; %} 46 %typemap(out) const enum SWIGTYPE & %{ $result = *$1; %} 47 48 %typemap(directorin) const enum SWIGTYPE & "$input = $1;" 49 %typemap(directorout,warning=SWIGWARN_TYPEMAP_THREAD_UNSAFE_MSG) const enum SWIGTYPE & 50 %{ static $*1_ltype temp = ($*1_ltype)$input; 51 $result = &temp; %} 52 53 %typemap(ddirectorin) const enum SWIGTYPE & "cast($*dclassname)$winput" 54 %typemap(ddirectorout) const enum SWIGTYPE & "cast(int)$dcall" 55 56 %typemap(din) const enum SWIGTYPE & "cast(int)$dinput" 57 %typemap(dout, excode=SWIGEXCODE) const enum SWIGTYPE & { 58 $*dclassname ret = cast($*dclassname)$imcall;$excode 59 return ret; 60 } 61