X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc%2Flibvlc_structures.h;h=4e5e1c5d4d40f83e741a83b8bdb53382c85d34e0;hb=d34728306e774ee27a195155d55979aaace3b6eb;hp=145f190ad61730b48a899ce3f4aa059cc71ca47b;hpb=be07ad9457b6756f96629b7ad1d3a267ebf2c8d9;p=vlc diff --git a/include/vlc/libvlc_structures.h b/include/vlc/libvlc_structures.h index 145f190ad6..4e5e1c5d4d 100644 --- a/include/vlc/libvlc_structures.h +++ b/include/vlc/libvlc_structures.h @@ -1,7 +1,7 @@ /***************************************************************************** * libvlc.h: libvlc_* new external API structures ***************************************************************************** - * Copyright (C) 1998-2007 the VideoLAN team + * Copyright (C) 1998-2008 the VideoLAN team * $Id $ * * Authors: Filippo Carone @@ -21,10 +21,15 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ -#ifndef _LIBVLC_STRUCTURES_H -#define _LIBVLC_STRUCTURES_H 1 +#ifndef LIBVLC_STRUCTURES_H +#define LIBVLC_STRUCTURES_H 1 -#include +/** + * \file + * This file defines libvlc_* new external API structures + */ + +#include # ifdef __cplusplus extern "C" { @@ -37,66 +42,62 @@ typedef struct libvlc_instance_t libvlc_instance_t; * Exceptions *****************************************************************************/ -/** defgroup libvlc_exception Exceptions - * \ingroup libvlc +/** \defgroup libvlc_exception libvlc_exception + * \ingroup libvlc_core * LibVLC Exceptions handling * @{ */ -typedef struct +typedef struct libvlc_exception_t { int b_raised; - int i_code; - char *psz_message; } libvlc_exception_t; /**@} */ /***************************************************************************** - * Playlist + * Time *****************************************************************************/ -/** defgroup libvlc_playlist Playlist - * \ingroup libvlc - * LibVLC Playlist handling +/** \defgroup libvlc_time libvlc_time + * \ingroup libvlc_core + * LibVLC Time support in libvlc * @{ */ -typedef struct { - int i_id; - char * psz_uri; - char * psz_name; +typedef int64_t libvlc_time_t; + +/**@} */ + +/***************************************************************************** + * Media Descriptor + *****************************************************************************/ +/** \defgroup libvlc_media libvlc_media + * \ingroup libvlc + * LibVLC Media Descriptor handling + * @{ + */ -} libvlc_playlist_item_t; /**@} */ /***************************************************************************** - * Video + * Playlist *****************************************************************************/ -/** defgroup libvlc_video Video +/** \defgroup libvlc_playlist libvlc_playlist (Deprecated) * \ingroup libvlc - * LibVLC Video handling + * LibVLC Playlist handling (Deprecated) + * @deprecated Use media_list * @{ */ - -/** -* Downcast to this general type as placeholder for a platform specific one, such as: -* Drawable on X11, -* CGrafPort on MacOSX, -* HWND on win32 -*/ -typedef int libvlc_drawable_t; -/** -* Rectangle type for video geometry -*/ -typedef struct +typedef struct libvlc_playlist_item_t { - int top, left; - int bottom, right; -} -libvlc_rectangle_t; + int i_id; + char * psz_uri; + char * psz_name; + +} libvlc_playlist_item_t; /**@} */ @@ -105,8 +106,8 @@ libvlc_rectangle_t; * Message log handling *****************************************************************************/ -/** defgroup libvlc_log Log - * \ingroup libvlc +/** \defgroup libvlc_log libvlc_log + * \ingroup libvlc_core * LibVLC Message Logging * @{ */ @@ -129,59 +130,6 @@ typedef struct libvlc_log_message_t /**@} */ -/***************************************************************************** - * Callbacks handling - *****************************************************************************/ - -/** defgroup libvlc_callbacks Callbacks - * \ingroup libvlc - * LibVLC Event Callbacks - * @{ - */ - -/** - * Available events: - * - VOLUME_CHANGED - * - INPUT_POSITION_CHANGED - */ - -typedef enum { - VOLUME_CHANGED, - INPUT_POSITION_CHANGED, -} libvlc_event_type_t; - -typedef enum { - INT_EVENT, - BOOLEAN_EVENT, - FLOAT_EVENT, - STRING_EVENT, - ADDRESS_EVENT, - OBJECT_EVENT, - LIST_EVENT, - TIME_EVENT, - VAR_EVENT, -} libvlc_event_value_type_t; - -typedef struct -{ - libvlc_event_type_t type; - libvlc_event_value_type_t value_type; - vlc_value_t old_value; - vlc_value_t new_value; - char reserved[8]; /* For future use */ -} libvlc_event_t; - -/** - * Callback function notification - * \param p_instance the libvlc instance - * \param p_event the event triggering the callback - * \param p_user_data user provided data - */ - -typedef void ( *libvlc_callback_t )( struct libvlc_instance_t *, libvlc_event_t *, void * ); - -/**@} */ - # ifdef __cplusplus } # endif