22 #ifndef FCGISTREAM_HPP
23 #define FCGISTREAM_HPP
26 #include <boost/iostreams/filtering_stream.hpp>
27 #include <boost/iostreams/categories.hpp>
28 #include <boost/iostreams/concepts.hpp>
172 class FcgistreamSink:
public boost::iostreams::device<boost::iostreams::output, char>
179 std::streamsize
write(
const char* s, std::streamsize n);
182 void dump(
const char* data,
size_t size) {
write(data, size); }
183 void dump(std::basic_istream<char>& stream);
197 template <
typename charT>
class Fcgistream:
public boost::iostreams::filtering_stream<boost::iostreams::output, charT>
200 struct Encoder:
public boost::iostreams::multichar_filter<boost::iostreams::output, charT>
202 template<
typename Sink> std::streamsize
write(Sink& dest,
const charT* s, std::streamsize n);
217 void flush() { boost::iostreams::filtering_stream<boost::iostreams::output, charT>::strict_sync(); }
264 template<
class charT,
class Traits> std::basic_ostream<charT, Traits>& operator<<(std::basic_ostream<charT, Traits>& os,
const encoding& enc);