X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc%2Fvlc.h;h=73b4922a757242cf954b153516768000a9e5db9f;hb=12ade3e3bc975d5426ba4af155b7372c31093b31;hp=d746d38ef0bc5717c51bc4760758d66d10ec9c6a;hpb=eb505a2f6d699f8aa9a1774896c1d3c4f2077899;p=vlc diff --git a/include/vlc/vlc.h b/include/vlc/vlc.h index d746d38ef0..73b4922a75 100644 --- a/include/vlc/vlc.h +++ b/include/vlc/vlc.h @@ -1,8 +1,14 @@ /***************************************************************************** - * vlc.h: global header for vlc + * vlc.h: global header for libvlc ***************************************************************************** - * Copyright (C) 1998, 1999, 2000 VideoLAN - * $Id: vlc.h,v 1.24 2003/07/23 01:13:47 gbazin Exp $ + * Copyright (C) 1998-2008 the VideoLAN team + * $Id$ + * + * Authors: Vincent Seguin + * Samuel Hocevar + * Gildas Bazin + * Derk-Jan Hartman + * Pierre d'Herbemont * * 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 @@ -16,134 +22,35 @@ * * 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., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ -#ifndef _VLC_VLC_H -#define _VLC_VLC_H 1 +#ifndef VLC_VLC_H +#define VLC_VLC_H 1 + +/** + * \file + * This file defines libvlc new external API + */ # ifdef __cplusplus extern "C" { # endif -/***************************************************************************** - * Our custom types - *****************************************************************************/ -typedef int vlc_bool_t; -typedef struct vlc_list_t vlc_list_t; -typedef struct vlc_object_t vlc_object_t; - -typedef union -{ - int i_int; - vlc_bool_t b_bool; - float f_float; - char * psz_string; - void * p_address; - vlc_object_t * p_object; - vlc_list_t * p_list; - - struct { int i_low, i_high; } time; - struct { char *psz_name; int i_object_id; } var; - - /* Make sure the structure is at least 64bits */ - struct { char a, b, c, d, e, f, g, h; } padding; - -} vlc_value_t; - -struct vlc_list_t -{ - int i_count; - vlc_value_t * p_values; - int * pi_types; - -}; - -/***************************************************************************** - * Error values - *****************************************************************************/ -#define VLC_SUCCESS -0 /* No error */ -#define VLC_ENOMEM -1 /* Not enough memory */ -#define VLC_ETHREAD -2 /* Thread error */ -#define VLC_ETIMEOUT -3 /* Timeout */ - -#define VLC_ENOMOD -10 /* Module not found */ - -#define VLC_ENOOBJ -20 /* Object not found */ -#define VLC_EBADOBJ -21 /* Bad object type */ - -#define VLC_ENOVAR -30 /* Variable not found */ -#define VLC_EBADVAR -31 /* Bad variable value */ - -#define VLC_EEXIT -255 /* Program exited */ -#define VLC_EGENERIC -666 /* Generic error */ - -/***************************************************************************** - * Booleans - *****************************************************************************/ -#define VLC_FALSE 0 -#define VLC_TRUE 1 - -/***************************************************************************** - * Playlist - *****************************************************************************/ - -/* Used by playlist_Add */ -#define PLAYLIST_INSERT 0x0001 -#define PLAYLIST_REPLACE 0x0002 -#define PLAYLIST_APPEND 0x0004 -#define PLAYLIST_GO 0x0008 -#define PLAYLIST_CHECK_INSERT 0x0010 - -#define PLAYLIST_END -666 - -/* Playlist parsing mode */ -#define PLAYLIST_REPEAT_CURRENT 0 /* Keep playing current item */ -#define PLAYLIST_FORWARD 1 /* Parse playlist until end */ -#define PLAYLIST_BACKWARD -1 /* Parse backwards */ -#define PLAYLIST_FORWARD_LOOP 2 /* Parse playlist and loop */ -#define PLAYLIST_BACKWARD_LOOP -2 /* Parse backwards and loop */ -#define PLAYLIST_RANDOM 3 /* Shuffle play */ -#define PLAYLIST_REVERSE_RANDOM -3 /* Reverse shuffle play */ - -/* Playlist commands */ -#define PLAYLIST_PLAY 1 /* Starts playing. No arg. */ -#define PLAYLIST_PAUSE 2 /* Toggles playlist pause. No arg. */ -#define PLAYLIST_STOP 3 /* Stops playing. No arg. */ -#define PLAYLIST_SKIP 4 /* Skip X items and play. */ -#define PLAYLIST_GOTO 5 /* Goto Xth item. */ -#define PLAYLIST_MODE 6 /* Set playlist mode. ??? */ - -/***************************************************************************** - * Required internal headers - *****************************************************************************/ -#if defined( __VLC__ ) -# include "vlc_common.h" -#endif - -/***************************************************************************** - * Exported libvlc API - *****************************************************************************/ -char const * VLC_Version ( void ); -char const * VLC_Error ( int ); - -int VLC_Create ( void ); -int VLC_Init ( int, int, char *[] ); -int VLC_Die ( int ); -int VLC_Destroy ( int ); - -int VLC_Set ( int, char const *, vlc_value_t ); -int VLC_Get ( int, char const *, vlc_value_t * ); -int VLC_AddIntf ( int, char const *, vlc_bool_t ); -int VLC_AddTarget ( int, char const *, const char **, int, int, int ); - -int VLC_Play ( int ); -int VLC_Pause ( int ); -int VLC_Stop ( int ); -int VLC_FullScreen ( int ); +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include # ifdef __cplusplus } # endif -#endif /* */ +#endif /* _VLC_VLC_H */