VLC
2.1.0-git
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
src
input
stream.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* stream.h: Input stream functions
3
*****************************************************************************
4
* Copyright (C) 1998-2008 VLC authors and VideoLAN
5
* Copyright (C) 2008 Laurent Aimar
6
* $Id: 57c005c74ba251b88f88360604622c360f55cde2 $
7
*
8
* Authors: Laurent Aimar <fenrir@via.ecp.fr>
9
*
10
* This program is free software; you can redistribute it and/or modify it
11
* under the terms of the GNU Lesser General Public License as published by
12
* the Free Software Foundation; either version 2.1 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License for more details.
19
*
20
* You should have received a copy of the GNU Lesser General Public License
21
* along with this program; if not, write to the Free Software Foundation,
22
* Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23
*****************************************************************************/
24
25
#ifndef LIBVLC_INPUT_STREAM_H
26
#define LIBVLC_INPUT_STREAM_H 1
27
28
#include <
vlc_common.h
>
29
#include <
vlc_stream.h
>
30
#include <
vlc_charset.h
>
31
32
struct
stream_text_t
33
{
34
/* UTF-16 and UTF-32 file reading */
35
vlc_iconv_t
conv
;
36
int
i_char_width
;
37
bool
b_little_endian
;
38
};
39
40
/* */
41
stream_t
*
stream_CommonNew
(
vlc_object_t
* );
42
void
stream_CommonDelete
(
stream_t
* );
43
44
/**
45
* This function creates a stream_t from a provided access_t.
46
*
47
* An optional NULL terminated list of file may be provided. The content
48
* of these extra files will be concatenated after to the main access.
49
*
50
* XXX ppsz_list is treated as const (I failed to avoid a warning when
51
* using const keywords for pointer of pointers)
52
*/
53
stream_t
*
stream_AccessNew
(
access_t
*p_access,
char
**ppsz_list );
54
55
/**
56
* This function creates a new stream_t filter.
57
*
58
* You must release it using stream_Delete unless it is used as a
59
* source to another filter.
60
*/
61
stream_t
*
stream_FilterNew
(
stream_t
*p_source,
62
const
char
*psz_stream_filter );
63
64
/**
65
* This function creates a chain of filters:
66
* - first, automatic probed stream filters are inserted.
67
* - then, optional user filters (configured by psz_chain) are inserted.
68
* - finaly, an optional record filter is inserted if b_record is true.
69
*
70
* You must release the returned value using stream_Delete unless it is used as a
71
* source to another filter.
72
*/
73
stream_t
*
stream_FilterChainNew
(
stream_t
*p_source,
74
const
char
*psz_chain,
75
bool
b_record );
76
#endif
Generated by
1.8.1.2