/*!
* @class BufferedStream
*
* @implements StreamConcept
*
* @headerfile <seqan/stream.h>
*
* @brief Adds a buffer to another @link StreamConcept stream @endlink.
*
* @signature template <typename TUnbufferedStream, TDirection> class
* BufferedStream;
*
* @tparam TUnbufferedStream The type of the unbuffered @link StreamConcept
* stream @endlink to wrap.
* @tparam TDirection The stream direction, one of @link DirectionTags @endlink.
*
* @fn BufferedStream::BufferedStream
*
* @brief Default constructor and construction from to-be-wrapped unbuffered
* stream.
*
* @signature BufferedStream::BufferedStream();
* @signature BufferedStream::BufferedStream(unbufferedStream);
*
* @param[in] stream The to-be-wrapped stream.
*
* @fn BufferedStream::setStreamBuf
*
* @brief Set the stream buffer of the BufferedStream.
*
* @signature void BufferedStream::setStreamBuf(streamBuf);
*
* @param[in] streamBuf The <tt>std::basic_streambuf<></tt> to use.
*
* @fn BufferedStream::setStream
*
* @brief Set the underlying stream to wrap.
*
* @signature void BufferedStream::setStream(stream);
*
* @param[in] stream The <tt>TUnbufferedStream</tt> to use.
*/