• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!--
2
3Copyright 2005 Jonathan Turkanis
4Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at <A HREF="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt</A>)
5
6-->
7
8<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
9<html>
10<head>
11
12<!-- ------------------ Links to Stylesheets and Scripts  ------------ -->
13
14    <link rel="stylesheet" type="text/css" href="../../../boost.css">
15    <link rel="stylesheet" type="text/css" href="tree/tree.css">
16    <script language="JavaScript" src="tree/tree.js"></script>
17    <style> CODE { font-size:80% } </style>
18
19<!-- ------------------ Create and Populate Tree Control ------------- -->
20
21    <script language="JavaScript">
22    <!--
23
24    var tree = new tree_control("content");
25    tree.add("Introduction", "home.html").parent()
26    tree.add("Tutorial", "tutorial/tutorial.html")
27        .add("Writing Devices")
28            .add("Overview", "tutorial/writing_devices.html").parent()
29            .add("<CODE>container_source</CODE>", "tutorial/container_source.html").parent()
30            .add("<CODE>container_sink</CODE>", "tutorial/container_sink.html").parent()
31            .add("<CODE>container_device</CODE>", "tutorial/container_device.html").parent().parent()
32        .add("Writing Filters")
33            .add("Overview", "tutorial/writing_filters.html", true)
34                .add("Input and Output", "tutorial/writing_filters.html#input_filters_and_output_filters").parent()
35                .add("Filter Helpers", "tutorial/writing_filters.html#filter_helpers").parent()
36                .add("Selecting A Filter", "tutorial/writing_filters.html#selecting_a_filter").parent().parent()
37            .add("Filter Usage", "tutorial/filter_usage.html", true).parent()
38            .add("Shell Comments", "tutorial/shell_comments_filters.html", true)
39                .add("<CODE>stdio_filter</CODE>", "tutorial/shell_comments_filters.html#shell_comments_stdio_filter").parent()
40                .add("<CODE>input_filter</CODE>", "tutorial/shell_comments_filters.html#shell_comments_input_filter").parent()
41                .add("<CODE>output_filter</CODE>", "tutorial/shell_comments_filters.html#shell_comments_output_filter").parent().parent()
42            .add("Line-Wrapping", "tutorial/line_wrapping_filters.html", true)
43                .add("<CODE>stdio_filter</CODE>", "tutorial/line_wrapping_filters.html#line_wrapping_stdio_filter").parent()
44                .add("<CODE>input_filter</CODE>", "tutorial/line_wrapping_filters.html#line_wrapping_input_filter").parent()
45                .add("<CODE>output_filter</CODE>", "tutorial/line_wrapping_filters.html#line_wrapping_output_filter").parent().parent()
46            .add("Tab-Expanding", "tutorial/tab_expanding_filters.html", true)
47                .add("<CODE>stdio_filter</CODE>", "tutorial/tab_expanding_filters.html#tab_expanding_stdio_filter").parent()
48                .add("<CODE>input_filter</CODE>", "tutorial/tab_expanding_filters.html#tab_expanding_input_filter").parent()
49                .add("<CODE>output_filter</CODE>", "tutorial/tab_expanding_filters.html#tab_expanding_output_filter").parent().parent()
50            .add("Dictionary", "tutorial/dictionary_filters.html", true)
51                .add("<CODE>stdio_filter</CODE>", "tutorial/dictionary_filters.html#dictionary_stdio_filter").parent()
52                .add("<CODE>input_filter</CODE>", "tutorial/dictionary_filters.html#dictionary_input_filter").parent()
53                .add("<CODE>output_filter</CODE>", "tutorial/dictionary_filters.html#dictionary_output_filter").parent().parent()
54            .add("UNIX-to-DOS", "tutorial/unix2dos_filters.html", true)
55                .add("<CODE>stdio_filter</CODE>", "tutorial/unix2dos_filters.html#unix2dos_stdio_filter").parent()
56                .add("<CODE>input_filter</CODE>", "tutorial/unix2dos_filters.html#unix2dos_input_filter").parent()
57                .add("<CODE>output_filter</CODE>", "tutorial/unix2dos_filters.html#unix2dos_output_filter").parent().parent()
58            .add("Multi-Character Filters", "tutorial/multichar_filters.html", true)
59                .add("InputFilters", "tutorial/multichar_filters.html#multichar_input_filters").parent()
60                .add("<CODE>shell_comments_mutichar_input_filter</CODE>", "tutorial/multichar_filters.html#shell_comments_multichar_input_filter").parent()
61                .add("OutputFilters", "tutorial/multichar_filters.html#multichar_output_filters").parent()
62                .add("<CODE>shell_comments_multichar_output_filter</CODE>", "tutorial/multichar_filters.html#shell_comments_multichar_ouput_filter").parent().parent()
63            .add("Dual-Use Filters", "tutorial/dual_use_filters.html").parent()
64            .add("Finite State Filters", "tutorial/finite_state_filters.html", true)
65                .add("Finite State Machines", "tutorial/finite_state_filters.html#finite_state_machine").parent()
66                .add("<CODE>dos2unix_fsm</CODE>", "tutorial/finite_state_filters.html#dos2unix_fsm").parent()
67                .add("<CODE>unix2dos_fsm</CODE>", "tutorial/finite_state_filters.html#unix2dos_fsm").parent()
68                .add("<CODE>uncommenting_fsm</CODE>", "tutorial/finite_state_filters.html#uncommenting_fsm");
69    tree.add("User's Guide", "guide/guide.html", true)
70        .add("Concepts", "guide/concepts.html").parent()
71        .add("Modes", "guide/modes.html").parent()
72        .add("Generic Streams", "guide/generic_streams.html").parent()
73        .add("Filtering Streams", "guide/filtering_streams.html").parent()
74        .add("Code Conversion", "guide/code_conversion.html").parent()
75        .add("Asynchronous I/O", "guide/asynchronous.html").parent()
76        .add("Object Lifetimes", "guide/lifetimes.html").parent()
77        .add("Pipelines", "guide/pipelines.html").parent()
78        .add("Views", "guide/views.html").parent()
79        .add("Exceptions", "guide/exceptions.html").parent()
80        .add("Buffering", "guide/buffering.html");
81    var ref = tree.add("Reference", "reference.html");
82    ref.add("Concepts", "concepts/concepts.html", true)
83            .add("Devices", "concepts/concepts.html#devices")
84                .add("BidirectionalDevice", "concepts/bidirectional_device.html").parent()
85                .add("Blocking", "concepts/blocking.html").parent()
86                .add("Device", "concepts/device.html").parent()
87                .add("Direct", "concepts/direct.html").parent()
88                .add("Peekable", "concepts/peekable.html").parent()
89                .add("SeekableDevice", "concepts/seekable_device.html").parent()
90                .add("Sink", "concepts/sink.html").parent()
91                .add("Source", "concepts/source.html").parent().parent()
92            .add("Filters", "concepts/concepts.html#filters")
93                .add("BidirectionalFilter", "concepts/bidirectional_filter.html").parent()
94                .add("DualUseFilter", "concepts/dual_use_filter.html").parent()
95                .add("Filter", "concepts/filter.html").parent()
96                .add("InputFilter", "concepts/input_filter.html").parent()
97                .add("Multi-Character", "concepts/multi_character.html").parent()
98                .add("OutputFilter", "concepts/output_filter.html").parent()
99                .add("Pipable", "concepts/pipable.html").parent()
100                .add("SeekableFilter", "concepts/seekable_filter.html").parent().parent()
101            .add("Other", "concepts/concepts.html#other")
102                .add("Closable", "concepts/closable.html").parent()
103                .add("Flushable", "concepts/flushable.html").parent()
104                .add("Localizable", "concepts/localizable.html").parent()
105                .add("OptimallyBuffered", "concepts/optimally_buffered.html").parent()
106                .add("SymmetricFilter", "concepts/symmetric_filter.html");
107    var classes = ref.add("Classes", "classes/classes.html", true);
108    classes.add("A", "classes/classes.html#a")
109                .add("<CODE>aggregate_filter</CODE>", "classes/aggregate.html").parent()
110                .add("<CODE>array</CODE>", "classes/array.html#array").parent()
111                .add("<CODE>array_sink</CODE>", "classes/array.html#array_sink").parent()
112                .add("<CODE>array_source</CODE>", "classes/array.html#array_source").parent().parent()
113            .add("B", "classes/classes.html#b")
114  				.add("<CODE>back_insert_device</CODE>", "classes/back_inserter.html").parent()
115  				.add("<CODE>basic_array</CODE>", "classes/array.html#array").parent()
116  				.add("<CODE>basic_array_sink</CODE>", "classes/array.html#array_sink").parent()
117  				.add("<CODE>basic_array_source</CODE>", "classes/array.html#array_source").parent()
118  				.add("<CODE>basic_bzip2_compressor</CODE>", "classes/bzip2.html#basic_bzip2_compressor").parent()
119  				.add("<CODE>basic_bzip2_decompressor</CODE>", "classes/bzip2.html#basic_bzip2_decompressor").parent()
120  				.add("<CODE>basic_counter</CODE>", "classes/counter.html").parent()
121  				.add("<CODE>basic_file</CODE>", "classes/file.html#file").parent()
122  				.add("<CODE>basic_file_sink</CODE>", "classes/file.html#file_sink").parent()
123  				.add("<CODE>basic_file_source</CODE>", "classes/file.html#file_source").parent()
124  				.add("<CODE>basic_grep_filter</CODE>", "classes/grep_filter.html").parent()
125  				.add("<CODE>basic_gzip_compressor</CODE>", "classes/gzip.html#basic_gzip_compressor").parent()
126  				.add("<CODE>basic_gzip_decompressor</CODE>", "classes/gzip.html#basic_gzip_decompressor").parent()
127  				.add("<CODE>basic_line_filter</CODE>", "classes/line_filter.html").parent()
128  				.add("<CODE>basic_null_device</CODE>", "classes/null.html#null_device").parent()
129  				.add("<CODE>basic_null_sink</CODE>", "classes/null.html#null_sink").parent()
130  				.add("<CODE>basic_null_source</CODE>", "classes/null.html#null_source").parent()
131  				.add("<CODE>basic_regex_filter</CODE>", "classes/regex_filter.html").parent()
132  				.add("<CODE>basic_stdio_filter</CODE>", "classes/stdio_filter.html").parent()
133  				.add("<CODE>basic_zlib_compressor</CODE>", "classes/zlib.html#basic_zlib_compressor").parent()
134  				.add("<CODE>basic_zlib_decompressor</CODE>", "classes/zlib.html#basic_zlib_decompressor").parent()
135  				.add("<CODE>bzip2_compressor</CODE>", "classes/bzip2.html#basic_bzip2_compressor").parent()
136  				.add("<CODE>bzip2_decompressor</CODE>", "classes/bzip2.html#basic_bzip2_decompressor").parent()
137  				.add("<CODE>bzip2_error</CODE>", "classes/bzip2.html#bzip2_error").parent()
138  				.add("<CODE>bzip2_params</CODE>", "classes/bzip2.html#bzip2_params").parent().parent()
139            .add("C", "classes/classes.html#c")
140  				.add("<CODE>category_of</CODE>", "classes/../guide/traits.html#category_ref").parent()
141  				.add("<CODE>chain</CODE>", "classes/chain.html").parent()
142  				.add("<CODE>char_traits</CODE>", "classes/../classes/char_traits.html").parent()
143  				.add("<CODE>char_type_of</CODE>", "classes/../guide/traits.html#char_type_of_ref").parent()
144  				.add("<CODE>code_converter</CODE>", "classes/code_converter.html").parent()
145  				.add("<CODE>combination</CODE>", "classes/../functions/combine.html#synopsis").parent()
146  				.add("<CODE>composite</CODE>", "classes/../functions/compose.html#composite").parent()
147  				.add("<CODE>counter</CODE>", "classes/counter.html#reference").parent().parent()
148            .add("D", "classes/classes.html#d")
149  				.add("<CODE>device</CODE>", "classes/device.html").parent()
150  				.add("<CODE>dual_use_filter</CODE>", "classes/filter.html#reference").parent()
151  				.add("<CODE>dual_use_wfilter</CODE>", "classes/filter.html#reference").parent().parent()
152            .add("F", "classes/classes.html#f")
153  				.add("<CODE>file</CODE>", "classes/file.html#file").parent()
154  				.add("<CODE>file_descriptor</CODE>", "classes/file_descriptor.html#file_descriptor").parent()
155  				.add("<CODE>file_descriptor_sink</CODE>", "classes/file_descriptor.html#file_descriptor_sink").parent()
156  				.add("<CODE>file_descriptor_source</CODE>", "classes/file_descriptor.html#file_descriptor_source").parent()
157  				.add("<CODE>file_sink</CODE>", "classes/file.html#file_sink").parent()
158  				.add("<CODE>file_source</CODE>", "classes/file.html#file_source").parent()
159  				.add("<CODE>filtering_stream</CODE>", "classes/filtering_stream.html").parent()
160  				.add("<CODE>filtering_streambuf</CODE>", "classes/filtering_streambuf.html").parent()
161  				.add("<CODE>filter</CODE>", "classes/filter.html").parent().parent()
162            .add("G", "classes/classes.html#g")
163  				.add("<CODE>grep_filter</CODE>", "classes/grep_filter.html").parent()
164  				.add("<CODE>gzip_compressor</CODE>", "classes/gzip.html#basic_gzip_compressor").parent()
165  				.add("<CODE>gzip_compressor</CODE>", "classes/gzip.html#basic_gzip_compressor").parent()
166  				.add("<CODE>gzip_decompressor</CODE>", "classes/gzip.html#basic_gzip_decompressor").parent()
167  				.add("<CODE>gzip_error</CODE>", "classes/gzip.html#gzip_error").parent()
168  				.add("<CODE>gzip_params</CODE>", "classes/gzip.html#gzip_params").parent().parent()
169            .add("I", "classes/classes.html#i")
170  				.add("<CODE>input_filter</CODE>", "classes/filter.html#reference").parent()
171  				.add("<CODE>input_wfilter</CODE>", "classes/filter.html#reference").parent()
172  				.add("<CODE>inverse</CODE>", "classes/../functions/invert.html#inverse");
173    classes.add("L", "classes/classes.html#l")
174  				.add("<CODE>line_filter</CODE>", "classes/line_filter.html#reference").parent().parent()
175            .add("M", "classes/classes.html#m")
176  				.add("<CODE>mapped_file</CODE>", "classes/mapped_file.html#mapped_file").parent()
177  				.add("<CODE>mapped_file_sink</CODE>", "classes/mapped_file.html#mapped_file_sink").parent()
178  				.add("<CODE>mapped_file_source</CODE>", "classes/mapped_file.html#mapped_file_source").parent()
179  				.add("<CODE>mode_of</CODE>", "classes/mode.html").parent()
180  				.add("<CODE>multichar_dual_use_filter</CODE>", "classes/filter.html#reference").parent()
181  				.add("<CODE>multichar_dual_use_wfilter</CODE>", "classes/filter.html#reference").parent()
182  				.add("<CODE>multichar_filter</CODE>", "classes/filter.html").parent()
183  				.add("<CODE>multichar_input_filter</CODE>", "classes/filter.html#reference").parent()
184  				.add("<CODE>multichar_input_wfilter</CODE>", "classes/filter.html#reference").parent()
185  				.add("<CODE>multichar_output_filter</CODE>", "classes/filter.html#reference").parent()
186  				.add("<CODE>multichar_output_wfilter</CODE>", "classes/filter.html#reference").parent()
187  				.add("<CODE>multichar_wfilter</CODE>", "classes/filter.html#reference").parent().parent()
188            .add("N", "classes/classes.html#n")
189  				.add("<CODE>newline_filter</CODE>", "classes/newline_filter.html").parent()
190  				.add("<CODE>null_sink</CODE>", "classes/null.html#null_sink").parent()
191  				.add("<CODE>null_source</CODE>", "classes/null.html#null_source").parent().parent()
192            .add("O", "classes/classes.html#o")
193  				.add("<CODE>output_filter</CODE>", "classes/filter.html#reference").parent()
194  				.add("<CODE>output_wfilter</CODE>", "classes/filter.html#reference").parent().parent()
195            .add("R", "classes/classes.html#r")
196  				.add("<CODE>regex_filter</CODE>", "classes/../classes/regex_filter.html#reference").parent()
197  				.add("<CODE>restriction</CODE>", "classes/../functions/restrict.html#restriction").parent().parent()
198            .add("S", "classes/classes.html#s")
199  				.add("<CODE>seekable_filter</CODE>", "classes/filter.html#reference").parent()
200  				.add("<CODE>seekable_wfilter</CODE>", "classes/filter.html#reference").parent()
201  				.add("<CODE>sink</CODE>", "classes/device.html#reference").parent()
202  				.add("<CODE>source</CODE>", "classes/device.html#reference").parent()
203  				.add("<CODE>stdio_filter</CODE>", "classes/stdio_filter.html#reference").parent()
204  				.add("<CODE>stream</CODE>", "classes/../guide/generic_streams.html#stream").parent()
205  				.add("<CODE>stream_buffer</CODE>", "classes/../guide/generic_streams.html#stream_buffer").parent()
206  				.add("<CODE>symmetric_filter</CODE>", "classes/symmetric_filter.html").parent().parent()
207            .add("T", "classes/classes.html#t")
208  				.add("<CODE>tee_device</CODE>", "classes/../functions/tee.html#tee_device").parent()
209  				.add("<CODE>tee_filter</CODE>", "classes/../functions/tee.html#tee_filter").parent().parent()
210            .add("W", "classes/classes.html#w")
211  				.add("<CODE>warray</CODE>", "classes/array.html#array").parent()
212  				.add("<CODE>warray_sink</CODE>", "classes/array.html#array_sink").parent()
213  				.add("<CODE>warray_source</CODE>", "classes/array.html#array_source").parent()
214  				.add("<CODE>wchain</CODE>", "classes/chain.html#wchain").parent()
215  				.add("<CODE>wcounter</CODE>", "classes/counter.html#reference").parent()
216  				.add("<CODE>wdevice</CODE>", "classes/device.html").parent()
217  				.add("<CODE>wfile</CODE>", "classes/file.html#file").parent()
218  				.add("<CODE>wfile_sink</CODE>", "classes/file.html#file_sink").parent()
219  				.add("<CODE>wfile_source</CODE>", "classes/file.html#file_source").parent()
220  				.add("<CODE>wfilter</CODE>", "classes/filter.html").parent()
221  				.add("<CODE>wgrep_filter</CODE>", "classes/grep_filter.html").parent()
222  				.add("<CODE>wline_filter</CODE>", "classes/line_filter.html#reference").parent()
223  				.add("<CODE>wnull_sink</CODE>", "classes/null.html#null_sink").parent()
224  				.add("<CODE>wnull_source</CODE>", "classes/null.html#null_source").parent()
225  				.add("<CODE>wregex_filter</CODE>", "classes/../classes/regex_filter.html#reference").parent()
226  				.add("<CODE>wsink</CODE>", "classes/device.html#reference").parent()
227  				.add("<CODE>wsource</CODE>", "classes/device.html#reference").parent()
228  				.add("<CODE>wstdio_filter</CODE>", "classes/stdio_filter.html#reference").parent().parent()
229            .add("Z", "classes/classes.html#z")
230  				.add("<CODE>zlib_compressor</CODE>", "classes/zlib.html#basic_zlib_compressor").parent()
231  				.add("<CODE>zlib_decompressor</CODE>", "classes/zlib.html#basic_zlib_decompressor").parent()
232  				.add("<CODE>zlib_error</CODE>", "classes/zlib.html#zlib_error").parent()
233  				.add("<CODE>zlib_params</CODE>", "classes/zlib.html#zlib_params");
234    ref.add("Functions", "functions/functions.html", true)
235            .add("<CODE>back_inserter</CODE>", "classes/back_inserter.html#back_inserter").parent()
236            .add("<CODE>close</CODE>", "functions/close.html").parent()
237            .add("<CODE>combine</CODE>", "functions/combine.html").parent()
238            .add("<CODE>compose</CODE>", "functions/compose.html").parent()
239            .add("<CODE>copy</CODE>", "functions/copy.html").parent()
240            .add("<CODE>flush</CODE>", "functions/flush.html").parent()
241            .add("<CODE>get</CODE>", "functions/get.html").parent()
242            .add("<CODE>imbue</CODE>", "functions/imbue.html").parent()
243            .add("<CODE>invert</CODE>", "functions/invert.html").parent()
244            .add("<CODE>offset_to_position</CODE>", "functions/positioning.html#offset_to_position").parent()
245            .add("<CODE>optimal_buffer_size</CODE>", "functions/optimal_buffer_size.html").parent()
246            .add("<CODE>position_to_offset</CODE>", "functions/positioning.html#position_to_offset").parent()
247            .add("<CODE>put</CODE>", "functions/put.html").parent()
248            .add("<CODE>putback</CODE>", "functions/putback.html").parent()
249            .add("<CODE>read</CODE>", "functions/read.html").parent()
250            .add("<CODE>restrict</CODE>", "functions/restrict.html").parent()
251            .add("<CODE>seek</CODE>", "functions/seek.html").parent()
252            .add("<CODE>slice</CODE>", "functions/slice.html").parent()
253            .add("<CODE>tee</CODE>", "functions/tee.html").parent()
254            .add("<CODE>test_filter_pair</CODE>", "functions/filter_test.html#test_pair").parent()
255            .add("<CODE>test_input_filter</CODE>", "functions/filter_test.html#test_input").parent()
256            .add("<CODE>test_output_filter</CODE>", "functions/filter_test.html#test_output").parent()
257            .add("<CODE>write</CODE>", "functions/write.html");
258    ref.add("Macros", "macros/macros.html", true)
259            .add("<CODE>IOS</CODE>", "macros/workarounds.html#ios").parent()
260            .add("<CODE>BASIC_ISTREAM</CODE>", "macros/workarounds.html#streams").parent()
261            .add("<CODE>BASIC_IOS</CODE>", "macros/workarounds.html#ios").parent()
262            .add("<CODE>BASIC_IOSTREAM</CODE>", "macros/workarounds.html#streams").parent()
263            .add("<CODE>BASIC_OSTREAM</CODE>", "macros/workarounds.html#streams").parent()
264            .add("<CODE>BASIC_STREAMBUF</CODE>", "macros/workarounds.html#streambufs").parent()
265            .add("<CODE>CHAR_TRAITS</CODE>", "macros/workarounds.html#char_traits").parent()
266            .add("<CODE>COMPONENT</CODE>", "macros/workarounds.html#component_access").parent()
267            .add("<CODE>COMPONENT_TYPE</CODE>", "macros/workarounds.html#component_access").parent()
268            .add("<CODE>DEFAULT_DEVICE_BUFFER_SIZE</CODE>", "macros/buffer_sizes.html#component_access").parent()
269            .add("<CODE>DEFAULT_FILTER_BUFFER_SIZE</CODE>", "macros/buffer_sizes.html#component_access").parent()
270            .add("<CODE>DEFAULT_PBACK_BUFFER_SIZE</CODE>", "macros/buffer_sizes.html#component_access").parent()
271            .add("<CODE>FAILURE</CODE>", "macros/workarounds.html#ios").parent()
272            .add("<CODE>PIPABLE</CODE>", "guide/pipelines.html#boost_iostreams_pipable").parent()
273            .add("<CODE>PUBSEEKOFF</CODE>", "macros/workarounds.html#streambufs").parent()
274            .add("<CODE>PUBSEEKPOS</CODE>", "macros/workarounds.html#streambufs").parent()
275            .add("<CODE>PUBSYNC</CODE>", "macros/workarounds.html#streambufs").parent().parent().parent()
276    tree.add("Quick Reference", "quick_reference.html");
277    tree.add("FAQ", "faq.html");
278    tree.add("Installation", "installation.html");
279    tree.add("Portability", "portability.html");
280    tree.add("Rationale", "rationale.html");
281    tree.add("Bibliography", "bibliography.html");
282    tree.add("Acknowledgments", "acknowledgments.html");
283    tree.add("Release Notes", "release_notes.html");
284
285    //tree.dump_html = true;
286    tree.indent = 9;
287    tree.draw();
288
289    // -->
290    </script>
291
292</head>
293<body>
294
295<!-- ------------------ Boost Logo and Library Name ------------------ -->
296
297    <table cellpadding=0 cellspacing=0 clear="both" style="margin:0;padding:0" width=170>
298    <tr>
299    <td>
300    <P CLASS="clipped"><a href="../../../index.htm" target="_top">
301    <img border=0 style="position:relative;left:10" SRC="theme/boost_small.png"></a></P>
302    </td>
303    </tr>
304    </table>
305
306    <table clear="both" style="margin-top:0;margin-left:1em;margin-bottom:.5em;padding:0" width=170>
307    <tr>
308    <td align=left width=170>
309        <a style="text-decoration:none" href="index.html" target="_top">
310            <h1 class="lib-name" style="margin:0">Boost.Iostreams</h1>
311        </a>
312    </td>
313    </tr>
314    </table>
315
316    <hr align="center" width="90%">
317
318    <table style="margin:0;padding:0" width=170>
319    <tr><td>
320
321<!-- ------------------ Markup for Browsers with Scripting Disabled -- -->
322
323    <noscript>
324        <table><tr><td align='left'><table width=150><tr><td><h1 class=tree-caption>Contents</h1></td></tr></table></td></tr><tr><td><div id='list' style='white-space:nowrap;display:'>
325<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>1</span>  <a class='tree-text' onfocus='blur_tree()' href='home.html' target='content'><span class='tree-text'>Introduction</span></a></div></div>
326<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>2</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/tutorial.html' target='content'><span class='tree-text'>Tutorial</span></a></div><div id='list.2' style='white-space:nowrap;display:'>
327<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>2.1</span>  <span class='tree-text'>Writing Devices</span></div><div id='list.2.1' style='white-space:nowrap;display:'>
328<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.1.1</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/writing_devices.html' target='content'><span class='tree-text'>Overview</span></a></div></div>
329<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.1.2</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/container_source.html' target='content'><span class='tree-text'><CODE>container_source</CODE></span></a></div></div>
330<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.1.3</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/container_sink.html' target='content'><span class='tree-text'><CODE>container_sink</CODE></span></a></div></div>
331<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.1.4</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/container_device.html' target='content'><span class='tree-text'><CODE>container_device</CODE></span></a></div></div></div></div>
332<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>2.2</span>  <span class='tree-text'>Writing Filters</span></div><div id='list.2.2' style='white-space:nowrap;display:'>
333<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.1</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/writing_filters.html' target='content'><span class='tree-text'>Overview</span></a></div></div>
334<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.2</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/filter_usage.html' target='content'><span class='tree-text'>Filter Usage</span></a></div></div>
335<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.3</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/shell_comments_filters.html' target='content'><span class='tree-text'>Shell Comments</span></a></div></div>
336<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.4</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/line_wrapping_filters.html' target='content'><span class='tree-text'>Line-Wrapping</span></a></div></div>
337<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.5</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/tab_expanding_filters.html' target='content'><span class='tree-text'>Tab-Expanding</span></a></div></div>
338<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.6</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/dictionary_filters.html' target='content'><span class='tree-text'>Dictionary</span></a></div></div>
339<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.7</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/unix2dos_filters.html' target='content'><span class='tree-text'>UNIX-to-DOS</span></a></div></div>
340<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.8</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/multichar_filters.html' target='content'><span class='tree-text'>Multi-Character Filters</span></a></div></div>
341<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.9</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/dual_use_filters.html' target='content'><span class='tree-text'>Dual-Use Filters</span></a></div></div>
342<div class='tree-item'><div style='margin-left:36;text-indent:-18'><span class='tree-label'>2.2.10</span>  <a class='tree-text' onfocus='blur_tree()' href='tutorial/finite_state_filters.html' target='content'><span class='tree-text'>Finite State Filters</span></a></div></div></div></div></div></div>
343<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>3</span>  <a class='tree-text' onfocus='blur_tree()' href='guide/guide.html' target='content'><span class='tree-text'>User's Guide</span></a></div></div>
344<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>4</span>  <a class='tree-text' onfocus='blur_tree()' href='reference.html' target='content'><span class='tree-text'>Reference</span></a></div><div id='list.4' style='white-space:nowrap;display:'>
345<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>4.1</span>  <a class='tree-text' onfocus='blur_tree()' href='concepts/concepts.html' target='content'><span class='tree-text'>Concepts</span></a></div></div>
346<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>4.2</span>  <a class='tree-text' onfocus='blur_tree()' href='classes/classes.html' target='content'><span class='tree-text'>Classes</span></a></div></div>
347<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>4.3</span>  <a class='tree-text' onfocus='blur_tree()' href='functions/functions.html' target='content'><span class='tree-text'>Functions</span></a></div></div>
348<div class='tree-item'><div style='margin-left:18;text-indent:-9'><span class='tree-label'>4.4</span>  <a class='tree-text' onfocus='blur_tree()' href='macros/macros.html' target='content'><span class='tree-text'>Macros</span></a></div></div></div></div>
349<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>5</span>  <a class='tree-text' onfocus='blur_tree()' href='quick_reference.html' target='content'><span class='tree-text'>Quick Reference</span></a></div></div>
350<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>6</span>  <a class='tree-text' onfocus='blur_tree()' href='faq.html' target='content'><span class='tree-text'>FAQ</span></a></div></div>
351<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>7</span>  <a class='tree-text' onfocus='blur_tree()' href='installation.html' target='content'><span class='tree-text'>Installation</span></a></div></div>
352<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>8</span>  <a class='tree-text' onfocus='blur_tree()' href='portability.html' target='content'><span class='tree-text'>Portability</span></a></div></div>
353<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>9</span>  <a class='tree-text' onfocus='blur_tree()' href='rationale.html' target='content'><span class='tree-text'>Rationale</span></a></div></div>
354<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>10</span>  <a class='tree-text' onfocus='blur_tree()' href='bibliography.html' target='content'><span class='tree-text'>Bibliography</span></a></div></div>
355<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>11</span>  <a class='tree-text' onfocus='blur_tree()' href='acknowledgments.html' target='content'><span class='tree-text'>Acknowledgments</span></a></div></div>
356<div class='tree-item'><div style='margin-left:0;text-indent:-0'><span class='tree-label'>12</span>  <a class='tree-text' onfocus='blur_tree()' href='release_notes.html' target='content'><span class='tree-text'>Release Notes</span></a></div></div></div></td></tr></table>
357
358
359    </noscript>
360
361<!-- ------------------ Tree Control --------------------------------- -->
362
363    <span id="tree_control"></span>
364
365    </td></tr>
366    </table>
367
368</body>
369</html>
370
371