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_Rect * O_OBJECT
+SDL_Color * O_OBJECT
SDL_Palette * T_PTR
-SDL_PixelFormat * T_PTR
+SDL_PixelFormat * O_OBJECT
+SDL_VideoInfo * O_OBJECT
SDL_Cursor * T_PTR
SDL_AudioSpec * T_PTR
SDL_AudioCVT * 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
Sound_AudioInfo * T_PTR
SDL_RWops* T_PTR
SDL_svg_context* T_PTR
+
+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{
+ warn( \"${Package}::$func_name() -- $var is not a blessed SV reference\" );
+ XSRETURN_UNDEF;
+ }
+
+