* Copyright (C) 1998-2004 the VideoLAN team
* $Id$
*
- * Authors: Olivier Aubert <oaubert at bat710.univ-lyon1.fr>
+ * Authors: Olivier Aubert <olivier.aubert at liris.cnrs.fr>
* Clément Stenac <zorglub@videolan.org>
*
* This program is free software; you can redistribute it and/or modify
#define PY_SSIZE_T_MIN INT_MIN
#endif
-#define SELF ((MediaControl*)self)
/**********************************************************************
* Exceptions handling
PyObject *MediaControl_PositionOriginNotSupported;
PyObject *MediaControl_InvalidPosition;
PyObject *MediaControl_PlaylistException;
-PyObject *vlcInstance_Exception;
+PyObject *vlc_Exception;
/**********************************************************************
* vlc.Instance Object
libvlc_instance_t* p_instance;
} vlcInstance;
-#define LIBVLC_INSTANCE ((vlcInstance*)self)
-
/**********************************************************************
* MediaControl Object
**********************************************************************/
} PyPosition;
/**********************************************************************
- * vlc.MediaInstance Object
+ * vlc.MediaPlayer Object
**********************************************************************/
typedef struct
{
PyObject_HEAD
- libvlc_media_instance_t* p_mi;
-} vlcMediaInstance;
+ libvlc_media_player_t* p_mp;
+} vlcMediaPlayer;
/**********************************************************************
- * vlc.MediaDescriptor Object
+ * vlc.Media Object
**********************************************************************/
typedef struct
{
PyObject_HEAD
- libvlc_media_descriptor_t* p_md;
-} vlcMediaDescriptor;
+ libvlc_media_t* p_media;
+} vlcMedia;
/* Forward declarations */
staticforward PyTypeObject MediaControl_Type;
staticforward PyTypeObject PyPosition_Type;
staticforward PyTypeObject vlcInstance_Type;
-staticforward PyTypeObject vlcMediaInstance_Type;
-staticforward PyTypeObject vlcMediaDescriptor_Type;
+staticforward PyTypeObject vlcMediaPlayer_Type;
+staticforward PyTypeObject vlcMedia_Type;
-#define LIBVLC_INSTANCE ((vlcInstance*)self)
-#define LIBVLC_MEDIAINSTANCE ((vlcMediaInstance*)self)
-#define LIBVLC_MEDIADESCRIPTOR ((vlcMediaDescriptor*)self)
+#define LIBVLC_INSTANCE(self) (((vlcInstance*)self)->p_instance)
+#define LIBVLC_MEDIAPLAYER(self) (((vlcMediaPlayer*)self)->p_mp)
+#define LIBVLC_MEDIA(self) (((vlcMedia*)self)->p_media)
+#define LIBVLC_MC(self) (((MediaControl*)self)->mc)
#define LIBVLC_TRY libvlc_exception_init( &ex );
#define LIBVLC_EXCEPT if( libvlc_exception_raised( &ex ) ) { \
- PyObject *py_exc = vlcInstance_Exception; \
- PyErr_SetString( py_exc, libvlc_exception_get_message( &ex ) ); \
+ PyObject *py_exc = vlc_Exception; \
+ PyErr_SetString( py_exc, libvlc_errmsg() ); \
return NULL; \
}