libvlc_structures.h
上传用户:kjfoods
上传日期:2020-07-06
资源大小:29949k
文件大小:4k
源码类别:

midi

开发平台:

Unix_Linux

  1. /*****************************************************************************
  2.  * libvlc.h:  libvlc_* new external API structures
  3.  *****************************************************************************
  4.  * Copyright (C) 1998-2008 the VideoLAN team
  5.  * $Id $
  6.  *
  7.  * Authors: Filippo Carone <littlejohn@videolan.org>
  8.  *
  9.  * This program is free software; you can redistribute it and/or modify
  10.  * it under the terms of the GNU General Public License as published by
  11.  * the Free Software Foundation; either version 2 of the License, or
  12.  * (at your option) any later version.
  13.  *
  14.  * This program is distributed in the hope that it will be useful,
  15.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  16.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17.  * GNU General Public License for more details.
  18.  *
  19.  * You should have received a copy of the GNU General Public License
  20.  * along with this program; if not, write to the Free Software
  21.  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  22.  *****************************************************************************/
  23. #ifndef LIBVLC_STRUCTURES_H
  24. #define LIBVLC_STRUCTURES_H 1
  25. /**
  26.  * file
  27.  * This file defines libvlc_* new external API structures
  28.  */
  29. #include <stdint.h>
  30. # ifdef __cplusplus
  31. extern "C" {
  32. # endif
  33. /** This structure is opaque. It represents a libvlc instance */
  34. typedef struct libvlc_instance_t libvlc_instance_t;
  35. /*****************************************************************************
  36.  * Exceptions
  37.  *****************************************************************************/
  38. /** defgroup libvlc_exception libvlc_exception
  39.  * ingroup libvlc_core
  40.  * LibVLC Exceptions handling
  41.  * @{
  42.  */
  43. typedef struct libvlc_exception_t
  44. {
  45.     int b_raised;
  46.     int i_code;
  47.     char *psz_message;
  48. } libvlc_exception_t;
  49. /**@} */
  50. /*****************************************************************************
  51.  * Time
  52.  *****************************************************************************/
  53. /** defgroup libvlc_time libvlc_time
  54.  * ingroup libvlc_core
  55.  * LibVLC Time support in libvlc
  56.  * @{
  57.  */
  58. typedef int64_t libvlc_time_t;
  59. /**@} */
  60. /*****************************************************************************
  61.  * Media Descriptor
  62.  *****************************************************************************/
  63. /** defgroup libvlc_media libvlc_media
  64.  * ingroup libvlc
  65.  * LibVLC Media Descriptor handling
  66.  * @{
  67.  */
  68. /**@} */
  69. /*****************************************************************************
  70.  * Playlist
  71.  *****************************************************************************/
  72. /** defgroup libvlc_playlist libvlc_playlist (Deprecated)
  73.  * ingroup libvlc
  74.  * LibVLC Playlist handling (Deprecated)
  75.  * @deprecated Use media_list
  76.  * @{
  77.  */
  78. typedef struct libvlc_playlist_item_t
  79. {
  80.     int i_id;
  81.     char * psz_uri;
  82.     char * psz_name;
  83. } libvlc_playlist_item_t;
  84. /**@} */
  85. /*****************************************************************************
  86.  * Message log handling
  87.  *****************************************************************************/
  88. /** defgroup libvlc_log libvlc_log
  89.  * ingroup libvlc_core
  90.  * LibVLC Message Logging
  91.  * @{
  92.  */
  93. /** This structure is opaque. It represents a libvlc log instance */
  94. typedef struct libvlc_log_t libvlc_log_t;
  95. /** This structure is opaque. It represents a libvlc log iterator */
  96. typedef struct libvlc_log_iterator_t libvlc_log_iterator_t;
  97. typedef struct libvlc_log_message_t
  98. {
  99.     unsigned    sizeof_msg;   /* sizeof() of message structure, must be filled in by user */
  100.     int         i_severity;   /* 0=INFO, 1=ERR, 2=WARN, 3=DBG */
  101.     const char *psz_type;     /* module type */
  102.     const char *psz_name;     /* module name */
  103.     const char *psz_header;   /* optional header */
  104.     const char *psz_message;  /* message */
  105. } libvlc_log_message_t;
  106. /**@} */
  107. # ifdef __cplusplus
  108. }
  109. # endif
  110. #endif