libvlc_structures.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * libvlc.h:  libvlc_* new external API structures
00003  *****************************************************************************
00004  * Copyright (C) 1998-2008 the VideoLAN team
00005  * $Id $
00006  *
00007  * Authors: Filippo Carone <littlejohn@videolan.org>
00008  *
00009  * This program is free software; you can redistribute it and/or modify
00010  * it under the terms of the GNU General Public License as published by
00011  * the Free Software Foundation; either version 2 of the License, or
00012  * (at your option) any later version.
00013  *
00014  * This program is distributed in the hope that it will be useful,
00015  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  * GNU General Public License for more details.
00018  *
00019  * You should have received a copy of the GNU General Public License
00020  * along with this program; if not, write to the Free Software
00021  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
00022  *****************************************************************************/
00023 
00024 #ifndef LIBVLC_STRUCTURES_H
00025 #define LIBVLC_STRUCTURES_H 1
00026 
00027 /**
00028  * \file
00029  * This file defines libvlc_* new external API structures
00030  */
00031 
00032 #include <stdint.h>
00033 
00034 # ifdef __cplusplus
00035 extern "C" {
00036 # endif
00037 
00038 /** This structure is opaque. It represents a libvlc instance */
00039 typedef struct libvlc_instance_t libvlc_instance_t;
00040 
00041 /*****************************************************************************
00042  * Exceptions
00043  *****************************************************************************/
00044 
00045 /** \defgroup libvlc_exception libvlc_exception
00046  * \ingroup libvlc_core
00047  * LibVLC Exceptions handling
00048  * @{
00049  */
00050 
00051 typedef struct libvlc_exception_t
00052 {
00053     int b_raised;
00054 } libvlc_exception_t;
00055 
00056 /**@} */
00057 
00058 /*****************************************************************************
00059  * Time
00060  *****************************************************************************/
00061 /** \defgroup libvlc_time libvlc_time
00062  * \ingroup libvlc_core
00063  * LibVLC Time support in libvlc
00064  * @{
00065  */
00066 
00067 typedef int64_t libvlc_time_t;
00068 
00069 /**@} */
00070 
00071 /*****************************************************************************
00072  * Media Descriptor
00073  *****************************************************************************/
00074 /** \defgroup libvlc_media libvlc_media
00075  * \ingroup libvlc
00076  * LibVLC Media Descriptor handling
00077  * @{
00078  */
00079 
00080 
00081 /**@} */
00082 
00083 
00084 /*****************************************************************************
00085  * Playlist
00086  *****************************************************************************/
00087 /** \defgroup libvlc_playlist libvlc_playlist (Deprecated)
00088  * \ingroup libvlc
00089  * LibVLC Playlist handling (Deprecated)
00090  * @deprecated Use media_list
00091  * @{
00092  */
00093 
00094 typedef struct libvlc_playlist_item_t
00095 {
00096     int i_id;
00097     char * psz_uri;
00098     char * psz_name;
00099 
00100 } libvlc_playlist_item_t;
00101 
00102 /**@} */
00103 
00104 
00105 /*****************************************************************************
00106  * Message log handling
00107  *****************************************************************************/
00108 
00109 /** \defgroup libvlc_log libvlc_log
00110  * \ingroup libvlc_core
00111  * LibVLC Message Logging
00112  * @{
00113  */
00114 
00115 /** This structure is opaque. It represents a libvlc log instance */
00116 typedef struct libvlc_log_t libvlc_log_t;
00117 
00118 /** This structure is opaque. It represents a libvlc log iterator */
00119 typedef struct libvlc_log_iterator_t libvlc_log_iterator_t;
00120 
00121 typedef struct libvlc_log_message_t
00122 {
00123     unsigned    sizeof_msg;   /* sizeof() of message structure, must be filled in by user */
00124     int         i_severity;   /* 0=INFO, 1=ERR, 2=WARN, 3=DBG */
00125     const char *psz_type;     /* module type */
00126     const char *psz_name;     /* module name */
00127     const char *psz_header;   /* optional header */
00128     const char *psz_message;  /* message */
00129 } libvlc_log_message_t;
00130 
00131 /**@} */
00132 
00133 # ifdef __cplusplus
00134 }
00135 # endif
00136 
00137 #endif

Generated on Sun Nov 22 08:05:12 2009 for VLC by  doxygen 1.5.6