X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=typemap;h=369d2a5d0cf30e3db4719ceaf745bb4039079c32;hb=3b4e65f3cf6ca7563fbb7918b59ae04e0dee5203;hp=e970268a64ef6f9ab65050b81b2e6f6969428dd0;hpb=153fe728a34b131fcdb4b37be7a34d36e38ac792;p=sdlgit%2FSDL_perl.git diff --git a/typemap b/typemap index e970268..369d2a5 100644 --- a/typemap +++ b/typemap @@ -2,6 +2,7 @@ TYPEMAP const Uint16 * T_PTR Uint8 T_U_CHAR Uint8 * T_PTR +const Uint8* T_PTR Uint8 ** T_PTR Uint16 T_UV Uint16 * T_PTR @@ -13,15 +14,16 @@ Sint16 * T_PTR Sint32 T_IV Sint32 * T_PTR SDL_Event * T_PTR -SDL_Surface * T_PTR +SDL_Surface * O_OBJECT SDL_SysWMmsg * T_PTR SDL_CD * T_PTR SDL_CDtrack * T_PTR SDL_TimerCallback T_PTR -SDL_Rect * T_PTR -SDL_Color * T_PTR -SDL_Palette * T_PTR -SDL_PixelFormat * T_PTR +SDL_Rect * O_OBJECT +SDL_Color * O_OBJECT +SDL_Palette * O_OBJECT +SDL_PixelFormat * O_OBJECT +SDL_VideoInfo * O_OBJECT SDL_Cursor * T_PTR SDL_AudioSpec * T_PTR SDL_AudioCVT * T_PTR @@ -41,8 +43,8 @@ UDPpacket * T_PTR UDPpacket ** T_PTR IPaddress* T_PTR SDLNet_GenericSocket T_PTR -TTF_Font * T_PTR -SDL_Overlay * T_PTR +TTF_Font * O_OBJECT +SDL_Overlay * O_OBJECT SMPEG_Info * T_PTR SMPEG * T_PTR SMPEGstatus T_IV @@ -51,9 +53,12 @@ GLbitfield T_IV GLenum T_IV ConsoleInformation * T_PTR GLboolean T_U_CHAR +GLUquadric * T_PTR +GLdouble T_NV GLUnurbsObj * T_PTR GLUtesselator * T_PTR GLuint T_UV +GLuint* T_PTR GLint T_IV GLint* T_PTR float * T_PTR @@ -63,3 +68,27 @@ Sound_DecoderInfo * T_PTR const Sound_DecoderInfo * T_PTR Sound_Sample * T_PTR Sound_AudioInfo * T_PTR +SDL_RWops* T_PTR +SDL_svg_context* T_PTR +int T_IV + +OUTPUT + +# The Perl object is blessed into 'CLASS', which should be a +# char* having the name of the package for the blessing. +O_OBJECT + sv_setref_pv( $arg, CLASS, (void*)$var ); + + +INPUT + +O_OBJECT + if( sv_isobject($arg) && (SvTYPE(SvRV($arg)) == SVt_PVMG) ) + { $var = ($type)SvIV((SV*)SvRV( $arg )); } + else if ($arg == 0) + { XSRETURN(0); } + else{ + XSRETURN_UNDEF; + } + +