Fixed the pod path in archive
[sdlgit/SDL_perl.git] / typemap
diff --git a/typemap b/typemap
index 0eb347c..369d2a5 100644 (file)
--- 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,16 +14,16 @@ Sint16 *            T_PTR
 Sint32                 T_IV
 Sint32 *               T_PTR
 SDL_Event *            T_PTR
-SDL_eventaction        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
@@ -42,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
@@ -52,18 +53,42 @@ 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
 float                  T_NV
 GLfloat                        T_NV
-GLUquadric *           T_PTR
-GLdouble                       T_NV
 Sound_DecoderInfo *    T_PTR
 const Sound_DecoderInfo *      T_PTR
 Sound_Sample *         T_PTR
 Sound_AudioInfo *      T_PTR
-Font                           T_IV
+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;
+       }
+
+