C++ Rest SDK
The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.
Public Types | Public Member Functions | Protected Member Functions | List of all members
Concurrency::streams::details::basic_async_streambuf< CharType > Class Template Reference

IO streams stream buffer implementation used to interface with an async streambuffer underneath. Used for implementing the standard synchronous streams that provide interop between std:: and concurrency::streams:: More...

#include <interopstream.h>

Inheritance diagram for Concurrency::streams::details::basic_async_streambuf< CharType >:

Public Types

typedef concurrency::streams::char_traits< CharType > traits
 
typedef traits::int_type int_type
 
typedef traits::pos_type pos_type
 
typedef traits::off_type off_type
 

Public Member Functions

 basic_async_streambuf (const streams::streambuf< CharType > &async_buf)
 

Protected Member Functions

int_type overflow (int_type ch)
 Writes one byte to the stream buffer. More...
 
int_type underflow ()
 Gets one byte from the stream buffer without moving the read position. More...
 
int_type uflow ()
 Gets one byte from the stream buffer and move the read position one character. More...
 
std::streamsize xsgetn (_Out_writes_(count) CharType *ptr, _In_ std::streamsize count)
 Gets a number of characters from the buffer and place it into the provided memory block. More...
 
std::streamsize xsputn (const CharType *ptr, std::streamsize count)
 Writes a given number of characters from the provided block into the stream buffer. More...
 
int sync ()
 Synchronizes with the underlying medium. More...
 
pos_type seekoff (off_type offset, std::ios_base::seekdir dir, std::ios_base::openmode mode=std::ios_base::in|std::ios_base::out)
 Seeks to the given offset relative to the beginning, end, or current position. More...
 
pos_type seekpos (pos_type pos, std::ios_base::openmode mode=std::ios_base::in|std::ios_base::out)
 Seeks to the given offset relative to the beginning of the stream. More...
 

Detailed Description

template<typename CharType>
class Concurrency::streams::details::basic_async_streambuf< CharType >

IO streams stream buffer implementation used to interface with an async streambuffer underneath. Used for implementing the standard synchronous streams that provide interop between std:: and concurrency::streams::

Member Function Documentation

template<typename CharType>
int_type Concurrency::streams::details::basic_async_streambuf< CharType >::overflow ( int_type  ch)
inlineprotected

Writes one byte to the stream buffer.

template<typename CharType>
pos_type Concurrency::streams::details::basic_async_streambuf< CharType >::seekoff ( off_type  offset,
std::ios_base::seekdir  dir,
std::ios_base::openmode  mode = std::ios_base::in | std::ios_base::out 
)
inlineprotected

Seeks to the given offset relative to the beginning, end, or current position.

template<typename CharType>
pos_type Concurrency::streams::details::basic_async_streambuf< CharType >::seekpos ( pos_type  pos,
std::ios_base::openmode  mode = std::ios_base::in | std::ios_base::out 
)
inlineprotected

Seeks to the given offset relative to the beginning of the stream.

template<typename CharType>
int Concurrency::streams::details::basic_async_streambuf< CharType >::sync ( )
inlineprotected

Synchronizes with the underlying medium.

template<typename CharType>
int_type Concurrency::streams::details::basic_async_streambuf< CharType >::uflow ( )
inlineprotected

Gets one byte from the stream buffer and move the read position one character.

template<typename CharType>
int_type Concurrency::streams::details::basic_async_streambuf< CharType >::underflow ( )
inlineprotected

Gets one byte from the stream buffer without moving the read position.

template<typename CharType>
std::streamsize Concurrency::streams::details::basic_async_streambuf< CharType >::xsgetn ( _Out_writes_(count) CharType *  ptr,
_In_ std::streamsize  count 
)
inlineprotected

Gets a number of characters from the buffer and place it into the provided memory block.

template<typename CharType>
std::streamsize Concurrency::streams::details::basic_async_streambuf< CharType >::xsputn ( const CharType *  ptr,
std::streamsize  count 
)
inlineprotected

Writes a given number of characters from the provided block into the stream buffer.


The documentation for this class was generated from the following file: