CMS 3D CMS Logo

Public Types | Public Member Functions | Private Member Functions | Private Attributes

ext::basic_omemstream< Item_t, Traits_t, Allocator_t > Class Template Reference

#include <memstream.h>

List of all members.

Public Types

typedef Traits_t::char_type char_type
typedef Traits_t::int_type int_type
typedef Traits_t traits_type

Public Member Functions

 basic_omemstream (char_type *buf, size_t size)
char_typebegin () const
bool empty () const
char_typeend () const
size_t size () const

Private Member Functions

int_type overflow (int_type c)
int sync ()
std::streamsize xsputn (char_type const *data, std::streamsize size)

Private Attributes

char_typebuffer
char_typecur
char_typelast

Detailed Description

template<typename Item_t, typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
class ext::basic_omemstream< Item_t, Traits_t, Allocator_t >

Definition at line 24 of file memstream.h.


Member Typedef Documentation

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
typedef Traits_t::char_type ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::char_type

Definition at line 27 of file memstream.h.

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
typedef Traits_t::int_type ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::int_type

Definition at line 28 of file memstream.h.

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
typedef Traits_t ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::traits_type

Definition at line 29 of file memstream.h.


Constructor & Destructor Documentation

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::basic_omemstream ( char_type buf,
size_t  size 
) [inline]

Definition at line 31 of file memstream.h.

                                                      :
                        std::basic_ostream<Item_t, Traits_t>(this),
                        buffer(buf), cur(buf), last(buf + size)
        { this->exceptions(std::ios_base::badbit); }

Member Function Documentation

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
char_type* ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::begin ( void  ) const [inline]

Definition at line 36 of file memstream.h.

References ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::buffer.

{ return buffer; }
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
bool ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::empty ( void  ) const [inline]
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
char_type* ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::end ( void  ) const [inline]

Definition at line 37 of file memstream.h.

References ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::cur.

{ return cur; }
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
int_type ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::overflow ( int_type  c) [inline, private]

Definition at line 49 of file memstream.h.

References trackerHits::c, matplotRender::t, and ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::xsputn().

        {
                if (!traits_type::eq_int_type(c, traits_type::eof())) {
                        char_type t = traits_type::to_char_type(c);
                        if (xsputn(&t, 1) < 1)
                                return traits_type::eof();
                }

                return c;
        }
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
size_t ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::size ( void  ) const [inline]
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
int ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::sync ( ) [inline, private]

Definition at line 60 of file memstream.h.

{ return 0; }
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
std::streamsize ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::xsputn ( char_type const *  data,
std::streamsize  size 
) [inline, private]

Member Data Documentation

template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
char_type* ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::buffer [private]
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
char_type * ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::cur [private]
template<typename Item_t , typename Traits_t = std::char_traits<Item_t>, typename Allocator_t = std::allocator<Item_t>>
char_type * ext::basic_omemstream< Item_t, Traits_t, Allocator_t >::last [private]