]> git.sesse.net Git - vlc/blobdiff - include/input_ext-intf.h
* Fixed the BeOS compile typo.
[vlc] / include / input_ext-intf.h
index d426c265ead8a22b12b8fc64f0340a935f125496..4a94aa24f5fc15000c1a36369006def8a910c8ab 100644 (file)
@@ -4,7 +4,7 @@
  * control the pace of reading. 
  *****************************************************************************
  * Copyright (C) 1999, 2000 VideoLAN
- * $Id: input_ext-intf.h,v 1.35 2001/05/01 04:18:17 sam Exp $
+ * $Id: input_ext-intf.h,v 1.38 2001/05/30 17:03:11 sam Exp $
  *
  * Authors: Christophe Massiot <massiot@via.ecp.fr>
  *
@@ -132,9 +132,6 @@ typedef struct pgrm_descriptor_s
     /* Demultiplexer data */
     void *                  p_demux_data;
 
-    /* Decoders control */
-    struct vout_thread_s *  p_vout;
-
     int                     i_es_number;      /* size of the following array */
     es_descriptor_t **      pp_es;                /* array of pointers to ES */
 } pgrm_descriptor_t;
@@ -196,9 +193,12 @@ typedef struct stream_descriptor_s
 
     /* if (b_seekable) : */
     int                     i_area_nb;
-    input_area_t **         pp_areas;      /* list of areas in stream == offset
-                                            * interval with own properties */
+    input_area_t **         pp_areas;    /* list of areas in stream == offset
+                                          * interval with own properties */
     input_area_t *          p_selected_area;
+    input_area_t *          p_new_area;  /* Newly selected area from
+                                          * the interface */
+
     u32                     i_mux_rate; /* the rate we read the stream (in
                                          * units of 50 bytes/s) ; 0 if undef */
 
@@ -219,6 +219,10 @@ typedef struct stream_descriptor_s
     es_descriptor_t **      pp_es;             /* carried elementary streams */
     int                     i_selected_es_number;
     es_descriptor_t **      pp_selected_es;             /* ES with a decoder */
+    es_descriptor_t *       p_newly_selected_es;   /* ES selected from
+                                                    * the interface */
+    es_descriptor_t *       p_removed_es;   /* ES removed from the interface */
+
 
     /* Stream control */
     stream_ctrl_t           control;
@@ -290,6 +294,14 @@ typedef struct input_thread_s
                                             * backwards (it's gonna be fun)  */
     void                 (* pf_seek)( struct input_thread_s *, off_t );
 
+    /* Special callback functions */
+    void                 (* pf_file_open )     ( struct input_thread_s * );
+    void                 (* pf_file_close )    ( struct input_thread_s * );
+#if !defined( SYS_BEOS ) && !defined( SYS_NTO )
+    void                 (* pf_network_open )  ( struct input_thread_s * );
+    void                 (* pf_network_close ) ( struct input_thread_s * );
+#endif
+
     i_p_config_t            i_p_config;              /* plugin configuration */
     char *                  p_source;
 
@@ -302,9 +314,6 @@ typedef struct input_thread_s
     /* General stream description */
     stream_descriptor_t     stream;                            /* PAT tables */
 
-    /* For auto-launch of decoders */
-    struct vout_thread_s *  p_default_vout;
-
 #ifdef STATS
     count_t                 c_loops;
     count_t                 c_bytes;                           /* bytes read */
@@ -352,3 +361,5 @@ int  input_ChangeES ( struct input_thread_s *, struct es_descriptor_s *, u8 );
 int  input_ToggleES ( struct input_thread_s *,
                       struct es_descriptor_s *,
                       boolean_t );
+int  input_ChangeArea( input_thread_t *, input_area_t * );
+