NGL  6.5
The NCCA Graphics Library
fmt::Buffer< T > Class Template Referenceabstract

#include <format.h>

+ Inheritance diagram for fmt::Buffer< T >:
+ Collaboration diagram for fmt::Buffer< T >:

Public Member Functions

virtual ~Buffer ()
 
std::size_t size () const
 
std::size_t capacity () const
 
void resize (std::size_t new_size)
 
void reserve (std::size_t capacity)
 
void clear () FMT_NOEXCEPT
 
void push_back (const T &value)
 
template<typename U >
void append (const U *begin, const U *end)
 
T & operator[] (std::size_t index)
 
const T & operator[] (std::size_t index) const
 

Protected Member Functions

 Buffer (T *ptr=0, std::size_t capacity=0)
 
virtual void grow (std::size_t size)=0
 

Protected Attributes

T * ptr_
 
std::size_t size_
 
std::size_t capacity_
 

Private Member Functions

 FMT_DISALLOW_COPY_AND_ASSIGN (Buffer)
 

Detailed Description

template<typename T>
class fmt::Buffer< T >

A buffer supporting a subset of std::vector's operations.

Definition at line 591 of file format.h.

Constructor & Destructor Documentation

template<typename T>
fmt::Buffer< T >::Buffer ( T *  ptr = 0,
std::size_t  capacity = 0 
)
inlineprotected

Definition at line 600 of file format.h.

template<typename T>
virtual fmt::Buffer< T >::~Buffer ( )
inlinevirtual

Definition at line 612 of file format.h.

Member Function Documentation

template<typename T >
template<typename U >
void fmt::Buffer< T >::append ( const U *  begin,
const U *  end 
)

Appends data to the end of the buffer.

Definition at line 657 of file format.h.

References fmt::internal::make_ptr(), and fmt::internal::to_unsigned().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename T>
std::size_t fmt::Buffer< T >::capacity ( ) const
inline

Returns the capacity of this buffer.

Definition at line 618 of file format.h.

+ Here is the caller graph for this function:

template<typename T>
void fmt::Buffer< T >::clear ( )
inline

Definition at line 639 of file format.h.

template<typename T>
fmt::Buffer< T >::FMT_DISALLOW_COPY_AND_ASSIGN ( Buffer< T >  )
private
template<typename T>
virtual void fmt::Buffer< T >::grow ( std::size_t  size)
protectedpure virtual
template<typename T>
T& fmt::Buffer< T >::operator[] ( std::size_t  index)
inline

Definition at line 651 of file format.h.

template<typename T>
const T& fmt::Buffer< T >::operator[] ( std::size_t  index) const
inline

Definition at line 652 of file format.h.

template<typename T>
void fmt::Buffer< T >::push_back ( const T &  value)
inline

Definition at line 641 of file format.h.

template<typename T>
void fmt::Buffer< T >::reserve ( std::size_t  capacity)
inline

Reserves space to store at least capacity elements.

Definition at line 634 of file format.h.

+ Here is the caller graph for this function:

template<typename T>
void fmt::Buffer< T >::resize ( std::size_t  new_size)
inline

Resizes the buffer. If T is a POD type new elements may not be initialized.

Definition at line 623 of file format.h.

+ Here is the caller graph for this function:

template<typename T>
std::size_t fmt::Buffer< T >::size ( ) const
inline

Returns the size of this buffer.

Definition at line 615 of file format.h.

+ Here is the caller graph for this function:

Member Data Documentation

template<typename T>
std::size_t fmt::Buffer< T >::capacity_
protected

Definition at line 598 of file format.h.

template<typename T>
T* fmt::Buffer< T >::ptr_
protected

Definition at line 596 of file format.h.

template<typename T>
std::size_t fmt::Buffer< T >::size_
protected

Definition at line 597 of file format.h.


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