python bindings: remove obsolete vlc_internal module
authorOlivier Aubert <olivier.aubert@liris.cnrs.fr>
Mon, 25 May 2009 14:53:15 +0000 (16:53 +0200)
committerOlivier Aubert <olivier.aubert@liris.cnrs.fr>
Mon, 25 May 2009 14:55:35 +0000 (16:55 +0200)
bindings/python/setup-internal.py [deleted file]
bindings/python/setup.py
bindings/python/vlc_internal.c [deleted file]
bindings/python/vlc_internal.h [deleted file]
bindings/python/vlcwrapper.py [deleted file]

diff --git a/bindings/python/setup-internal.py b/bindings/python/setup-internal.py
deleted file mode 100644 (file)
index 63009d2..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-from distutils.core import setup, Extension
-import os
-
-# Get build variables (buildir, srcdir)
-try:
-    top_builddir=os.environ['top_builddir']
-except KeyError:
-    # Note: do not initialize here, so that we get
-    # a correct default value if the env. var is
-    # defined but empty
-    top_builddir=None
-if not top_builddir:
-    top_builddir = os.path.join( '..', '..' )
-    os.environ['top_builddir'] = top_builddir
-
-try:
-    srcdir=os.environ['srcdir']
-except KeyError:
-    # Note: same as above
-    srcdir=None
-if not srcdir:
-    srcdir = '.'
-
-def get_vlcconfig():
-    vlcconfig=None
-    for n in ( 'vlc-config',
-               os.path.join( top_builddir, 'vlc-config' )):
-        if os.path.exists(n):
-            vlcconfig=n
-            break
-    if vlcconfig is None:
-        print "*** Warning *** Cannot find vlc-config"
-    elif os.sys.platform == 'win32':
-        # Win32 does not know how to invoke the shell itself.
-        vlcconfig="sh %s" % vlcconfig
-    return vlcconfig
-
-def get_vlc_version():
-    vlcconfig=get_vlcconfig()
-    if vlcconfig is None:
-        return ""
-    else:
-        version=os.popen('%s --version' % vlcconfig, 'r').readline().strip()
-        return version
-    
-def get_cflags():
-    vlcconfig=get_vlcconfig()
-    if vlcconfig is None:
-        return []
-    else:
-        cflags=os.popen('%s --cflags vlc' % vlcconfig, 'r').readline().rstrip().split()
-        return cflags
-
-def get_ldflags():
-    vlcconfig=get_vlcconfig()
-    if vlcconfig is None:
-        return []
-    else:
-       ldflags = []
-       if os.sys.platform == 'darwin':
-           ldflags = "-read_only_relocs warning".split()
-        ldflags.extend(os.popen('%s --libs vlc external' % vlcconfig,
-                               'r').readline().rstrip().split())
-       if os.sys.platform == 'darwin':
-           ldflags.append('-lstdc++')
-        return ldflags
-
-#source_files = [ 'vlc_module.c', 'vlc_object.c', 'vlc_mediacontrol.c',
-#                 'vlc_position.c', 'vlc_instance.c', 'vlc_input.c' ]
-source_files = [ 'vlc_internal.c' ]
-
-# To compile in a local vlc tree
-vlclocal = Extension('vlcinternal',
-                     sources = [ os.path.join( srcdir, f ) for f in source_files ],
-                     include_dirs = [ top_builddir,
-                                      os.path.join( srcdir, '..', '..', 'include' ),
-                                      srcdir,
-                                      '/usr/win32/include' ],
-                extra_objects = [ ],
-                extra_compile_args = get_cflags(),
-               extra_link_args = [ '-L' + os.path.join(top_builddir, 'src', '.libs') ]  + get_ldflags(),
-                )
-
-setup (name = 'VLC Internal Bindings',
-       version = get_vlc_version(),
-       #scripts = [ os.path.join( srcdir, 'vlcwrapper.py') ],
-       keywords = [ 'vlc', 'video' ],
-       license = "GPL", 
-       description = """VLC internal bindings for python.
-
-This module provides an Object type, which gives a low-level access to
-the vlc objects and their variables.
-
-Example session:
-
-import vlcinternal
-
-# Access lowlevel objets
-o=vlcinternal.Object(1)
-o.info()
-i=o.find_object('input')
-i.list()
-i.get('time')
-       """,
-       ext_modules = [ vlclocal ])
index 5fe8441..e26f715 100644 (file)
@@ -91,8 +91,7 @@ setup (name = 'python-vlc',
        author='Olivier Aubert',
        author_email='olivier.aubert@liris.cnrs.fr',
        url='http://wiki.videolan.org/PythonBinding',
-       #scripts = [ os.path.join( srcdir, 'vlcwidget.py') ],
-       py_modules=['vlcwrapper'],
+       py_modules=['vlcwidget'],
        keywords = [ 'vlc', 'video' ],
        license = "GPL",
        description = "VLC bindings for python.",
diff --git a/bindings/python/vlc_internal.c b/bindings/python/vlc_internal.c
deleted file mode 100644 (file)
index 073c001..0000000
+++ /dev/null
@@ -1,739 +0,0 @@
-/*****************************************************************************
- * vlc_internal.c: vlcinternal python binding module
- *****************************************************************************
- * Copyright (C) 2006 the VideoLAN team
- * $Id$
- *
- * Authors: Olivier Aubert <oaubert at bat710.univ-lyon1.fr>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- *****************************************************************************/
-
-#include "vlc_internal.h"
-#include "../../src/libvlc.h"
-
-/**************************************************************************
- * VLC Module
- **************************************************************************/
-
-#ifndef vlcinternalMODINIT_FUNC /* declarations for DLL import/export */
-#define vlcinternalMODINIT_FUNC void
-#endif
-
-static PyMethodDef vlcinternal_methods[] = {
-    { NULL }  /* Sentinel */
-};
-
-vlcinternalMODINIT_FUNC
-initvlcinternal( void )
-{
-    PyObject* p_module;
-
-    p_module = Py_InitModule3( "vlcinternal", vlcinternal_methods,
-                               "VLC media player internal module" );
-
-    if( !p_module )
-      return;
-
-    if( PyType_Ready( &vlcObject_Type ) < 0 )
-        return;
-
-    /* Types */
-    Py_INCREF( &vlcObject_Type );
-    PyModule_AddObject( p_module, "Object",
-                        ( PyObject * )&vlcObject_Type );
-}
-
-
-/* Make libpostproc happy... */
-void * fast_memcpy( void * to, const void * from, size_t len )
-{
-  return memcpy( to, from, len );
-}
-
-/*****************************************************************************
- * VLCObject implementation
- *****************************************************************************/
-
-static PyObject
-*vlcObject_new( PyTypeObject *p_type, PyObject *p_args, PyObject *p_kwds )
-{
-    vlcObject *self;
-    vlc_object_t *p_object;
-    int i_id;
-
-    self = PyObject_New( vlcObject, &vlcObject_Type );
-
-    if( !PyArg_ParseTuple( p_args, "i", &i_id ) )
-      return NULL;
-
-    /* Maybe we were already initialized */
-    p_object = ( vlc_object_t* )vlc_current_object( i_id );
-
-    if( !p_object )
-    {
-        /* Try to initialize */
-        i_id = VLC_Create();
-        if( i_id < 0 )
-        {
-            PyErr_SetString( PyExc_StandardError, "Unable to create a VLC instance." );
-            return NULL;
-        }
-        p_object = ( vlc_object_t* )vlc_current_object( i_id );
-    }
-
-    if( !p_object )
-    {
-        PyErr_SetString( PyExc_StandardError, "Unable to get object." );
-        return NULL;
-    }
-
-    self->p_object = p_object;
-    self->b_released = 0;
-
-    Py_INCREF(  self ); /* Ah bon ? */
-    return ( PyObject * )self;
-}
-
-static PyObject *
-vlcObject_release(  PyObject *self, PyObject *p_args )
-{
-    if( (vlcObject*)self->b_released == 0 )
-    {
-        vlc_object_release( VLCOBJ(self) );
-        (vlcObject*)self->b_released = 1;
-    }
-    Py_INCREF(  Py_None );
-    return Py_None;
-}
-
-static void
-vlcObject_dealloc( PyObject *self )
-{
-    vlcObject_release( self, NULL );
-    PyObject_DEL( self );
-}
-
-static PyObject *
-vlcObject_find_object( PyObject *self, PyObject *args )
-{
-    vlcObject *p_retval;
-    vlc_object_t *p_obj;
-    char *psz_name;
-    int i_object_type;
-
-    if( !PyArg_ParseTuple( args, "s", &psz_name ) )
-        return NULL;
-
-    /* psz_name is in
-       ( aout, decoder, input, httpd, intf, playlist, root, vlc, vout )
-    */
-    if( !strncmp( psz_name, "aout", 4 ) )
-    {
-        i_object_type = VLC_OBJECT_AOUT;
-    }
-    else if (! strncmp( psz_name, "decoder", 7 ) )
-    {
-        i_object_type = VLC_OBJECT_DECODER;
-    }
-    else if (! strncmp( psz_name, "httpd", 5 ) )
-    {
-            i_object_type = VLC_OBJECT_HTTPD;
-    }
-    else if (! strncmp( psz_name, "intf", 4 ) )
-    {
-        i_object_type = VLC_OBJECT_INTF;
-    }
-    else if (! strncmp( psz_name, "input", 5 ) )
-    {
-        i_object_type = VLC_OBJECT_INPUT;
-    }
-    else if (! strncmp( psz_name, "playlist", 8 ) )
-    {
-        i_object_type = VLC_OBJECT_PLAYLIST;
-    }
-    else if (! strncmp( psz_name, "libvlc", 6 ) )
-    {
-        i_object_type = VLC_OBJECT_LIBVLC;
-    }
-    else if (! strncmp( psz_name, "vout", 4 ) )
-    {
-        i_object_type = VLC_OBJECT_VOUT;
-    }
-    else if (! strncmp( psz_name, "sout", 4 ) )
-    {
-        i_object_type = VLC_OBJECT_SOUT;
-    }
-    else if (! strncmp( psz_name, "global", 6 ) )
-    {
-        i_object_type = VLC_OBJECT_GLOBAL;
-    }
-    else if (! strncmp( psz_name, "packetizer", 10 ) )
-    {
-        i_object_type = VLC_OBJECT_PACKETIZER;
-    }
-    else if (! strncmp( psz_name, "encoder", 7 ) )
-    {
-        i_object_type = VLC_OBJECT_ENCODER;
-    }
-    else if (! strncmp( psz_name, "vlm", 3 ) )
-    {
-        i_object_type = VLC_OBJECT_VLM;
-    }
-    else if (! strncmp( psz_name, "announce", 8 ) )
-    {
-        i_object_type = VLC_OBJECT_ANNOUNCE;
-    }
-    else if (! strncmp( psz_name, "demux", 5 ) )
-    {
-        i_object_type = VLC_OBJECT_DEMUX;
-    }
-    else if (! strncmp( psz_name, "access", 6 ) )
-    {
-        i_object_type = VLC_OBJECT_ACCESS;
-    }
-    else if (! strncmp( psz_name, "stream", 6 ) )
-    {
-        i_object_type = VLC_OBJECT_STREAM;
-    }
-    else if (! strncmp( psz_name, "filter", 6 ) )
-    {
-        i_object_type = VLC_OBJECT_FILTER;
-    }
-    else if (! strncmp( psz_name, "vod", 3 ) )
-    {
-        i_object_type = VLC_OBJECT_VOD;
-    }
-    else if (! strncmp( psz_name, "xml", 3 ) )
-    {
-        i_object_type = VLC_OBJECT_XML;
-    }
-    else if (! strncmp( psz_name, "osdmenu", 7 ) )
-    {
-        i_object_type = VLC_OBJECT_OSDMENU;
-    }
-    else if (! strncmp( psz_name, "stats", 5 ) )
-    {
-        i_object_type = VLC_OBJECT_STATS;
-    }
-    else if (! strncmp( psz_name, "metaengine", 10 ) )
-    {
-        i_object_type = VLC_OBJECT_META_ENGINE;
-    }
-    else
-    {
-        /* FIXME: raise an exception ? */
-        Py_INCREF( Py_None );
-        return Py_None;
-    }
-
-    p_obj = vlc_object_find( VLCOBJ(self), i_object_type, FIND_ANYWHERE );
-
-    if( !p_obj )
-    {
-        Py_INCREF( Py_None );
-        return Py_None;
-    }
-
-    p_retval = PyObject_New( vlcObject, &vlcObject_Type );
-
-    p_retval->p_object = p_obj;
-
-    return ( PyObject * )p_retval;
-}
-
-static PyObject *
-vlcObject_find_name( PyObject *self, PyObject *args )
-{
-    vlcObject *p_retval;
-    vlc_object_t *p_obj;
-    char *psz_name;
-
-    if( !PyArg_ParseTuple( args, "s", &psz_name ) )
-        return NULL;
-
-    p_obj = vlc_object_find_name( VLCOBJ(self), psz_name, FIND_ANYWHERE );
-
-    if( !p_obj )
-    {
-        Py_INCREF( Py_None );
-        return Py_None;
-    }
-
-    p_retval = PyObject_New( vlcObject, &vlcObject_Type );
-
-    p_retval->p_object = p_obj;
-
-    return ( PyObject * )p_retval;
-}
-
-static PyObject *
-vlcObject_info( PyObject *self, PyObject *args )
-{
-    PyObject *p_retval;
-    vlc_object_t *p_obj;
-    vlc_object_internals_t *p_priv;
-    
-    p_obj = VLCOBJ(self);
-    p_priv = vlc_internals( p_obj );
-
-    /* Return information about the object as a dict. */
-    p_retval = PyDict_New();
-
-    PyDict_SetItemString( p_retval, "object-id",
-                          Py_BuildValue( "l", p_obj->i_object_id ) );
-    PyDict_SetItemString( p_retval, "object-type",
-                          Py_BuildValue( "s", p_obj->psz_object_type ) );
-    PyDict_SetItemString( p_retval, "object-name",
-                          Py_BuildValue( "s", p_obj->psz_object_name ) );
-    PyDict_SetItemString( p_retval, "thread",
-                          PyBool_FromLong( p_priv->b_thread ) );
-    PyDict_SetItemString( p_retval, "thread-id",
-                          PyLong_FromLongLong( p_priv->thread_id ) );
-    PyDict_SetItemString( p_retval, "refcount",
-                          PyInt_FromLong( p_priv->i_refcount ) );
-    return p_retval;
-}
-
-static PyObject *
-vlcObject_find_id( PyObject *self, PyObject *args )
-{
-    vlcObject *p_retval;
-    vlc_object_t* p_object;
-    int i_id;
-
-    if( !PyArg_ParseTuple( args, "i", &i_id ) )
-        return NULL;
-
-    p_object = ( vlc_object_t* )vlc_current_object( i_id );
-
-    if( !p_object )
-    {
-        Py_INCREF( Py_None );
-        return Py_None;
-    }
-
-    p_retval = PyObject_NEW( vlcObject, &vlcObject_Type );
-
-    p_retval->p_object = p_object;
-
-    return ( PyObject * )p_retval;
-}
-
-/* Do a var_Get call on the object. Parameter: the variable name. */
-static PyObject *
-vlcObject_var_get( PyObject *self, PyObject *args )
-{
-    PyObject *p_retval;
-    vlc_value_t value;
-    char *psz_name;
-    int i_type;
-
-    if( !PyArg_ParseTuple( args, "s", &psz_name ) )
-        return NULL;
-
-    if( var_Get( VLCOBJ(self), psz_name, &value ) != VLC_SUCCESS )
-    {
-        PyErr_SetString( PyExc_StandardError,
-                         "Error: variable does not exist.\n" );
-        return NULL;
-    }
-
-    i_type = var_Type ( VLCOBJ(self), psz_name );
-
-    switch ( i_type )
-    {
-    case VLC_VAR_VOID      :
-        p_retval = PyString_FromString( "A void variable" );
-        break;
-    case VLC_VAR_BOOL      :
-        p_retval = PyBool_FromLong( value.b_bool );
-        break;
-    case VLC_VAR_INTEGER   :
-        p_retval = PyInt_FromLong( ( long )value.i_int );
-        break;
-    case VLC_VAR_HOTKEY    :
-        p_retval = PyString_FromFormat( "A hotkey variable ( %d )", value.i_int );
-        break;
-    case VLC_VAR_FILE      :
-    case VLC_VAR_STRING    :
-    case VLC_VAR_DIRECTORY :
-    case VLC_VAR_VARIABLE  :
-        p_retval = PyString_FromString( value.psz_string );
-        break;
-    case VLC_VAR_MODULE   :
-        p_retval = ( PyObject* )PyObject_New( vlcObject, &vlcObject_Type );
-        ( ( vlcObject* )p_retval )->p_object = value.p_object;
-        break;
-    case VLC_VAR_FLOAT     :
-        p_retval = PyFloat_FromDouble( ( double )value.f_float );
-        break;
-    case VLC_VAR_TIME      :
-        p_retval = PyLong_FromLongLong( value.i_time );
-        break;
-    case VLC_VAR_ADDRESS   :
-        p_retval = PyString_FromString( "A VLC address ( not handled yet )" );
-        break;
-    case VLC_VAR_LIST      :
-        p_retval = PyString_FromString( "A VLC list ( not handled yet )" );
-        break;
-    case VLC_VAR_MUTEX :
-        p_retval = PyString_FromString( "A mutex" );
-        break;
-    default:
-        p_retval = Py_None;
-    }
-
-    Py_INCREF( p_retval );
-    return p_retval;
-}
-
-static PyObject *
-vlcObject_var_type( PyObject *self, PyObject *args )
-{
-    char *psz_name;
-    PyObject *p_retval;
-    int i_type;
-
-    if( !PyArg_ParseTuple( args, "s", &psz_name ) )
-        return NULL;
-
-    i_type = var_Type( VLCOBJ(self), psz_name );
-
-    switch ( i_type )
-    {
-    case VLC_VAR_VOID   :
-        p_retval = PyString_FromString( "Void" );
-        break;
-    case VLC_VAR_BOOL      :
-        p_retval = PyString_FromString( "Boolean" );
-        break;
-    case VLC_VAR_INTEGER   :
-        p_retval = PyString_FromString( "Integer" );
-        break;
-    case VLC_VAR_HOTKEY   :
-        p_retval = PyString_FromString( "Hotkey" );
-        break;
-    case VLC_VAR_FILE      :
-        p_retval = PyString_FromString( "File" );
-        break;
-    case VLC_VAR_STRING    :
-        p_retval = PyString_FromString( "String" );
-        break;
-    case VLC_VAR_DIRECTORY :
-        p_retval = PyString_FromString( "Directory" );
-        break;
-    case VLC_VAR_VARIABLE  :
-        p_retval = PyString_FromString( "Variable" );
-        break;
-    case VLC_VAR_MODULE   :
-        p_retval = PyString_FromString( "Module" );
-        break;
-    case VLC_VAR_FLOAT     :
-        p_retval = PyString_FromString( "Float" );
-        break;
-    case VLC_VAR_TIME      :
-        p_retval = PyString_FromString( "Time" );
-        break;
-    case VLC_VAR_ADDRESS   :
-        p_retval = PyString_FromString( "Address" );
-        break;
-    case VLC_VAR_LIST      :
-        p_retval = PyString_FromString( "List" );
-        break;
-    case VLC_VAR_MUTEX :
-        p_retval = PyString_FromString( "Mutex" );
-        break;
-    default:
-        p_retval = PyString_FromString( "Unknown" );
-    }
-    return p_retval;
-}
-
-/* Do a var_Set call on the object. Parameter: the variable name. */
-static PyObject *
-vlcObject_var_set( PyObject *self, PyObject *args )
-{
-    vlc_value_t value;
-    char *psz_name;
-    PyObject *py_value;
-    int i_type;
-    vlc_object_t *p_obj;
-
-    if( !PyArg_ParseTuple( args, "sO", &psz_name, &py_value ) )
-        return NULL;
-
-    p_obj = VLCOBJ(self);
-    i_type = var_Type( p_obj, psz_name );
-
-    switch ( i_type )
-    {
-    case VLC_VAR_VOID   :
-        break;
-    case VLC_VAR_BOOL      :
-        value.b_bool = PyInt_AsLong( py_value );
-        break;
-    case VLC_VAR_INTEGER   :
-    case VLC_VAR_HOTKEY   :
-        value.i_int = PyInt_AsLong( py_value );
-        break;
-    case VLC_VAR_FILE      :
-    case VLC_VAR_STRING    :
-    case VLC_VAR_DIRECTORY :
-    case VLC_VAR_VARIABLE  :
-        value.psz_string = strdup( PyString_AsString( py_value ) );
-        break;
-    case VLC_VAR_MODULE   :
-        /* FIXME: we should check the PyObject type and get its p_object */
-        value.p_object = ( ( vlcObject* )p_obj )->p_object;
-        break;
-    case VLC_VAR_FLOAT     :
-        value.f_float = PyFloat_AsDouble( py_value );
-        break;
-    case VLC_VAR_TIME      :
-        value.i_time = PyLong_AsLongLong( py_value );
-        break;
-    case VLC_VAR_ADDRESS   :
-        value.p_address = ( char* )PyLong_AsVoidPtr( py_value );
-        break;
-    case VLC_VAR_LIST      :
-        /* FIXME */
-        value.p_list = NULL;
-        break;
-    case VLC_VAR_MUTEX :
-        break;
-    }
-
-    var_Set( p_obj, psz_name, value );
-
-    Py_INCREF( Py_None );
-    return Py_None;
-}
-
-static PyObject *
-vlcObject_var_list( PyObject *self, PyObject *args )
-{
-    PyObject *p_retval;
-    Py_ssize_t i_size;
-    Py_ssize_t i_index;
-    vlc_object_internals_t *p_priv;
-
-    p_priv = vlc_internals( VLCOBJ(self) );
-    i_size = p_priv->i_vars;
-    p_retval = PyTuple_New( i_size );
-
-
-    for ( i_index = 0 ; i_index < i_size ; i_index++ )
-    {
-        PyTuple_SetItem( p_retval, i_index,
-                         Py_BuildValue( "s", p_priv->p_vars[i_index].psz_name ) );
-    }
-
-    return p_retval;
-}
-
-/* Do a config_Get call on the object. Parameter: the variable name. */
-static PyObject *
-vlcObject_config_get( PyObject *self, PyObject *args )
-{
-    PyObject *p_retval;
-    vlc_value_t value;
-    char *psz_name;
-    module_config_t *p_config;
-
-    if( !PyArg_ParseTuple( args, "s", &psz_name ) )
-        return NULL;
-
-    p_config = config_FindConfig( VLCOBJ(self), psz_name );
-
-    if( !p_config )
-    {
-        PyErr_SetString( PyExc_StandardError,
-                         "Error: config variable does not exist.\n" );
-        return NULL;
-    }
-
-    switch ( p_config->i_type )
-    {
-    case CONFIG_ITEM_BOOL      :
-        p_retval = PyBool_FromLong( p_config->value.i );
-        break;
-    case CONFIG_ITEM_INTEGER   :
-        p_retval = PyInt_FromLong( ( long )p_config->value.i );
-        break;
-    case CONFIG_ITEM_KEY   :
-        p_retval = PyString_FromFormat( "A hotkey variable ( %d )", p_config->value.i );
-        break;
-    case CONFIG_ITEM_FILE      :
-    case CONFIG_ITEM_STRING    :
-    case CONFIG_ITEM_DIRECTORY :
-    case CONFIG_ITEM_MODULE    :
-        vlc_mutex_lock( p_config->p_lock );
-        if( p_config->value.psz )
-            p_retval = PyString_FromString( p_config->value.psz );
-        else
-            p_retval = PyString_FromString( "" );
-        vlc_mutex_unlock( p_config->p_lock );
-        break;
-        p_retval = ( PyObject* )PyObject_New( vlcObject, &vlcObject_Type );
-        ( ( vlcObject* )p_retval )->p_object = value.p_object;
-        break;
-    case CONFIG_ITEM_FLOAT     :
-        p_retval = PyFloat_FromDouble( ( double )p_config->value.f );
-        break;
-    default:
-        p_retval = Py_None;
-        Py_INCREF( p_retval );
-    }
-
-    return p_retval;
-}
-
-/* Do a config_put* call on the object. Parameter: the variable name. */
-static PyObject *
-vlcObject_config_set( PyObject *self, PyObject *args )
-{
-    char *psz_name;
-    PyObject *py_value;
-    vlc_object_t *p_obj;
-    module_config_t *p_config;
-
-
-    if( !PyArg_ParseTuple( args, "sO", &psz_name, &py_value ) )
-        return NULL;
-
-    p_obj = VLCOBJ(self);
-    p_config = config_FindConfig( p_obj, psz_name );
-    /* sanity checks */
-    if( !p_config )
-    {
-        PyErr_SetString( PyExc_StandardError,
-                         "Error: option does not exist.\n" );
-        return NULL;
-    }
-
-    switch ( p_config->i_type )
-    {
-    case CONFIG_ITEM_BOOL      :
-    case CONFIG_ITEM_INTEGER   :
-    case CONFIG_ITEM_KEY       :
-        config_PutInt( p_obj, psz_name, PyInt_AsLong( py_value ) );
-        break;
-    case CONFIG_ITEM_FILE      :
-    case CONFIG_ITEM_STRING    :
-    case CONFIG_ITEM_DIRECTORY :
-    case CONFIG_ITEM_MODULE   :
-        config_PutPsz( p_obj, psz_name, PyString_AsString( py_value ) );
-        break;
-    case CONFIG_ITEM_FLOAT     :
-        config_PutFloat( p_obj, psz_name, PyFloat_AsDouble( py_value ) );
-        break;
-    }
-    Py_INCREF( Py_None );
-    return Py_None;
-}
-
-static PyObject *
-vlcObject_children( PyObject *self, PyObject *args )
-{
-    PyObject *p_retval;
-    Py_ssize_t i_size;
-    Py_ssize_t i_index;
-
-    i_size = VLCOBJ(self)->i_children;
-    p_retval = PyTuple_New( i_size );
-
-    for ( i_index = 0 ; i_index < i_size ; i_index++ )
-    {
-        PyTuple_SetItem( p_retval, i_index, Py_BuildValue( "i",
-            VLCOBJ(self)->pp_children[i_index]->i_object_id ) );
-    }
-
-    return p_retval;
-}
-
-
-/* Method table */
-static PyMethodDef vlcObject_methods[] =
-{
-    { "get", vlcObject_var_get, METH_VARARGS,
-      "get( str ) -> value   Get a variable value."},
-    { "set", vlcObject_var_set, METH_VARARGS,
-      "set( str, value )     Set a variable value" },
-    { "config_get", vlcObject_config_get, METH_VARARGS,
-      "config_get( str ) -> value   Get a configuration option." },
-    { "config_set", vlcObject_config_set, METH_VARARGS,
-      "config_set( str, value )     Set a configuration option" },
-    { "type", vlcObject_var_type, METH_VARARGS,
-      "type( str ) -> str     Get a variable type" },
-    { "list", vlcObject_var_list, METH_NOARGS,
-      "list( )             List the available variables" },
-    { "children", vlcObject_children, METH_NOARGS,
-      "children( )             List the children ids" },
-    { "find_object", vlcObject_find_object, METH_VARARGS,
-      "find_object( str ) -> Object     Find the object of a given type.\n\nAvailable types are : aout, decoder, input, httpd, intf, playlist, root, vlc, vout"},
-    { "find_id", vlcObject_find_id, METH_VARARGS,
-      "find_id( int ) -> Object      Find an object by id" },
-    { "find_name", vlcObject_find_name, METH_VARARGS,
-      "find_name( str ) -> Object      Find an object by name" },
-    { "info", vlcObject_info, METH_NOARGS,
-       "info( ) -> dict    Return information about the object" },
-    { "release", vlcObject_release, METH_NOARGS,
-      "release( ) ->     Release the VLC Object" },
-    { NULL, NULL, 0, NULL },
-};
-
-static PyTypeObject vlcObject_Type =
-{
-    PyObject_HEAD_INIT( NULL )
-    0,                         /*ob_size*/
-    "vlc.Object",       /*tp_name*/
-    sizeof( vlcObject_Type ), /*tp_basicsize*/
-    0,                         /*tp_itemsize*/
-    ( destructor )vlcObject_dealloc,      /*tp_dealloc*/
-    0,                         /*tp_print*/
-    0,                         /*tp_getattr*/
-    0,                         /*tp_setattr*/
-    0,                         /*tp_compare*/
-    0,                         /*tp_repr*/
-    0,                         /*tp_as_number*/
-    0,                         /*tp_as_sequence*/
-    0,                         /*tp_as_mapping*/
-    0,                         /*tp_hash */
-    0,                         /*tp_call*/
-    0,                         /*tp_str*/
-    0,                         /*tp_getattro*/
-    0,                         /*tp_setattro*/
-    0,                         /*tp_as_buffer*/
-    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/
-    "Expose VLC object internal infrastructure.\n\nConstructor: vlc.Object(object_id)\n\nPLEASE BE AWARE that accessing internal features of VLC voids the guarantee for the product and is not advised except if you know what you are doing.",  /* tp_doc */
-    0,                     /* tp_traverse */
-    0,                     /* tp_clear */
-    0,                     /* tp_richcompare */
-    0,                     /* tp_weaklistoffset */
-    0,                     /* tp_iter */
-    0,                     /* tp_iternext */
-    vlcObject_methods,             /* tp_methods */
-    0,             /* tp_members */
-    0,                         /* tp_getset */
-    0,                         /* tp_base */
-    0,                         /* tp_dict */
-    0,                         /* tp_descr_get */
-    0,                         /* tp_descr_set */
-    0,                         /* tp_dictoffset */
-    0,                         /* tp_init */
-    0,                         /* tp_alloc */
-    vlcObject_new,          /* tp_new */
-};
diff --git a/bindings/python/vlc_internal.h b/bindings/python/vlc_internal.h
deleted file mode 100644 (file)
index 44f1260..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*****************************************************************************
- * vlc_internal.h: Header for the Python vlcinternal binding
- *****************************************************************************
- * Copyright (C) 1998-2004 the VideoLAN team
- * $Id$
- *
- * Authors: Olivier Aubert <oaubert at bat710.univ-lyon1.fr>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- *****************************************************************************/
-#ifndef _VLCINTERNAL_H
-#define _VLCINTERNAL_H 1
-
-/* We need to access some internal features of VLC (for vlc_object) */
-/* This is gruik as we are not libvlc at all */
-#define __LIBVLC__
-
-#include <Python.h>
-#include "structmember.h"
-
-#include <stdio.h>
-#include <vlc/vlc.h>
-#include <vlc/libvlc.h>
-/* Even gruiker ! We access variable_t ! */
-#include "../../src/misc/variables.h"
-
-/* Python 2.5 64-bit support compatibility define */
-#if PY_VERSION_HEX < 0x02050000 && !defined(PY_SSIZE_T_MIN)
-typedef int Py_ssize_t;
-#define PY_SSIZE_T_MAX INT_MAX
-#define PY_SSIZE_T_MIN INT_MIN
-#endif
-
-/**********************************************************************
- * VLC Object
- **********************************************************************/
-#define VLCOBJ(self) (((vlcObject*)self)->p_object)
-
-/**********************************************************************
- * VLCObject Object
- **********************************************************************/
-typedef struct
-{
-    PyObject_HEAD
-    vlc_object_t* p_object;
-    int b_released;
-} vlcObject;
-
-/* Forward declarations */
-staticforward PyTypeObject vlcObject_Type;
-
-/* Long long conversion on Mac os X/ppc */
-#if defined (__ppc__) || defined(__ppc64__)
-#define ntohll(x) ((long long) x >> 64)
-#else
-#define ntohll(x) (x)
-#endif
-
-#endif
diff --git a/bindings/python/vlcwrapper.py b/bindings/python/vlcwrapper.py
deleted file mode 100644 (file)
index 9770aef..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-"""Wrapper around vlc module in order to ease the use of vlc.Object
-class (completion in ipython, access variable as attributes, etc).
-
-$Id$
-"""
-import vlc
-import vlcinternal
-
-class VLCObject(object):
-    def __init__(self, id):
-        object.__setattr__(self, '_o', vlcinternal.Object(id))
-
-    def find(self, typ):
-       """Returns a VLCObject for the given child.
-
-       See vlc.Object.find_object.__doc__ for the different values of typ.
-       """
-        t=self._o.find_object(typ)
-        if t is not None:
-            return VLCObject(t.info()['object-id'])
-        else:
-            return None
-
-    def __str__(self):
-       """Returns a string representation of the object.
-       """
-        i=self._o.info()
-        return "VLCObject %d (%s) : %s" % (i['object-id'],
-                                           i['object-type'],
-                                           i['object-name'])
-
-    def tree(self, prefix=" "):
-        """Displays all children as a tree of VLCObject
-       """
-        res=prefix + str(self) + "\n"
-        for i in self._o.children():
-            t=VLCObject(i)
-            res += t.tree(prefix=prefix + " ")
-        return res
-
-    def __getattribute__(self, attr):
-       """Converts attribute access to access to variables.
-       """
-        if attr == '__members__':
-           # Return the list of variables
-            o=object.__getattribute__(self, '_o')
-            l=dir(o)
-            l.extend([ n.replace('-','_') for n in o.list() ])
-            return l
-        try:
-            return object.__getattribute__ (self, attr)
-        except AttributeError, e:
-            try:
-                return self._o.__getattribute__ (attr)
-            except AttributeError, e:
-                attr=attr.replace('_', '-')
-                if attr in self._o.list():
-                    return self._o.get(attr)
-                else:
-                    raise e
-
-    def __setattr__(self, name, value):
-       """Handle attribute assignment.
-       """
-        n=name.replace('_', '-')
-        if n in self._o.list():
-            self._o.set(n, value)
-        else:
-            object.__setattr__(self, name, value)
-
-def test(f='/tmp/k.mpg'):
-    global mc,o
-    mc=vlc.MediaControl()
-    mc.playlist_add_item(f)
-    mc.start(0)
-    mc.pause(0)
-    o=VLCObject(0)
-    v=o.find('vout')
-