OSVR-Core
Classes | Namespaces | Typedefs | Functions
Buffer.h File Reference

Header defining buffer types, with optional alignment dependent on Boost version. More...

#include <osvr/Common/Buffer_fwd.h>
#include <osvr/Common/AlignmentPadding.h>
#include <boost/version.hpp>
#include <boost/type_traits.hpp>
#include <vector>
#include <stdexcept>
#include <algorithm>

Go to the source code of this file.

Classes

struct  osvr::common::DesiredBufferAlignment
 Traits class specifying the (potentially platform-specific!) preferred alignment for Buffer. More...
 
struct  osvr::common::ActualBufferAlignment
 Traits class describing actual alignment of Buffer. More...
 
class  osvr::common::ExternalBufferReadingWrapper< ElementType >
 Class wrapping an externally-owned and controlled buffer with the vector-like functionality needed to read from it. More...
 
class  osvr::common::BufferReader< ContainerType >
 Provides for a single reading pass over a buffer. More...
 
class  osvr::common::Buffer< ContainerType >
 A buffer of bytes, built on a byte-vector-like container. More...
 

Namespaces

 osvr
 The main namespace for all C++ elements of the framework, internal and external.
 
 osvr::common
 Handles spatial transformations.
 

Typedefs

typedef char osvr::common::BufferElement
 The single-byte element in a buffer.
 
typedef std::allocator< BufferElement > osvr::common::BufferAllocator
 Allocator type for Buffer - might be usefully aligned.
 
typedef std::vector< BufferElement, BufferAllocator > osvr::common::BufferByteVector
 A typedef for a vector of bytes usable as a buffer, that might be "over-aligned" in some desirable way. More...
 

Functions

template<typename CharType >
BufferReader< ExternalBufferReadingWrapper< CharType > > osvr::common::readExternalBuffer (const CharType *buf, size_t len)
 Constructs and returns a buffer reader for an externally-allocated buffer: it's on you to supply a valid pointer and length. More...
 

Detailed Description

Header defining buffer types, with optional alignment dependent on Boost version.

Date
2015
Author
Sensics, Inc. http://sensics.com/osvr