* vlc.h: global header for vlc
*****************************************************************************
* Copyright (C) 1998, 1999, 2000 VideoLAN
- * $Id: vlc.h,v 1.4 2002/07/03 19:40:49 sam Exp $
+ * $Id: vlc.h,v 1.13 2002/08/26 23:36:20 sam Exp $
*
* 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
/*****************************************************************************
* Our custom types
*****************************************************************************/
-#define VLC_DECLARE_STRUCT( name ) \
- struct name##_s; \
- typedef struct name##_s name##_t;
-VLC_DECLARE_STRUCT(vlc)
-VLC_DECLARE_STRUCT(vlc_object)
+typedef struct vlc_t vlc_t;
+typedef struct vlc_list_t vlc_list_t;
+typedef struct vlc_object_t vlc_object_t;
typedef signed int vlc_error_t;
typedef int vlc_bool_t;
* Error values
*****************************************************************************/
#define VLC_SUCCESS -0 /* No error */
-#define VLC_EGENERIC -1 /* Generic error */
-#define VLC_ENOMEM -2 /* Not enough memory */
+#define VLC_ENOMEM -1 /* Not enough memory */
+#define VLC_EMODULE -2 /* Module not found */
#define VLC_ESTATUS -3 /* Invalid status */
+#define VLC_ETHREAD -4 /* Could not spawn thread */
#define VLC_EEXIT -255 /* Program exited */
+#define VLC_EGENERIC -666 /* Generic error */
/*****************************************************************************
* Booleans
* Required internal headers
*****************************************************************************/
#if defined( __VLC__ )
-# include "defs.h"
-# include "config.h"
-# include "modules_inner.h"
# include "vlc_common.h"
-# include "vlc_messages.h"
-# include "mtime.h"
-# include "modules.h"
-# include "main.h"
-# include "configuration.h"
-# include "vlc_objects.h"
#endif
/*****************************************************************************
- * Exported libvlc base API
+ * Exported libvlc API
*****************************************************************************/
-vlc_t * vlc_create ( void );
-vlc_error_t vlc_init ( vlc_t *, int, char *[] );
-vlc_error_t vlc_run ( vlc_t * );
-vlc_error_t vlc_stop ( vlc_t * );
-vlc_error_t vlc_end ( vlc_t * );
-vlc_error_t vlc_destroy ( vlc_t * );
+vlc_status_t vlc_status ( void );
-vlc_error_t vlc_add_intf ( vlc_t *, const char *, vlc_bool_t );
-vlc_error_t vlc_add_target ( vlc_t *, const char *, int, int );
+vlc_error_t vlc_create ( void );
+vlc_error_t vlc_init ( int, char *[] );
+vlc_error_t vlc_run ( void );
+vlc_error_t vlc_die ( void );
+vlc_error_t vlc_destroy ( void );
-vlc_status_t vlc_status ( vlc_t * );
+vlc_error_t vlc_set ( const char *, const char * );
+vlc_error_t vlc_add_intf ( const char *, vlc_bool_t );
+vlc_error_t vlc_add_target ( const char *, int, int );
+
+/*****************************************************************************
+ * Exported libvlc reentrant API
+ *****************************************************************************/
+vlc_status_t vlc_status_r ( vlc_t * );
+
+vlc_t * vlc_create_r ( void );
+vlc_error_t vlc_init_r ( vlc_t *, int, char *[] );
+vlc_error_t vlc_run_r ( vlc_t * );
+vlc_error_t vlc_die_r ( vlc_t * );
+vlc_error_t vlc_destroy_r ( vlc_t * );
+
+vlc_error_t vlc_set_r ( vlc_t *, const char *, const char * );
+vlc_error_t vlc_add_intf_r ( vlc_t *, const char *, vlc_bool_t );
+vlc_error_t vlc_add_target_r ( vlc_t *, const char *, int, int );
# ifdef __cplusplus
}