Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics
[Home] [Tutorials] [All Classes] [Grouped Classes]

vl::Buffer Class Reference

Implements a buffer whose storage is in local memory. More...

#include <Buffer.hpp>

Inheritance diagram for vl::Buffer:

vl::Object vl::GLBufferObject

List of all members.

Public Member Functions

virtual const char * className ()
 Returns the name of the class.
 Buffer ()
 Buffer (const Buffer &other)
Bufferoperator= (const Buffer &other)
void swap (Buffer &other)
 ~Buffer ()
void clear ()
void resize (size_t byte_count, size_t alignment=0)
size_t bytesUsed () const
bool empty () const
unsigned char * ptr ()
const unsigned char * ptr () const
size_t alignment () const

Static Public Member Functions

static void * alignedMalloc (size_t bytes, size_t alignment)
static void alignedFree (void *ptr)

Protected Attributes

unsigned char * mPtr
size_t mByteCount
size_t mAlignment


Detailed Description

Implements a buffer whose storage is in local memory.

Constructor & Destructor Documentation

vl::Buffer::Buffer (  )  [inline]

vl::Buffer::Buffer ( const Buffer other  )  [inline]

vl::Buffer::~Buffer (  )  [inline]


Member Function Documentation

virtual const char* vl::Buffer::className (  )  [inline, virtual]

Returns the name of the class.

Reimplemented from vl::Object.

Reimplemented in vl::GLBufferObject.

Buffer& vl::Buffer::operator= ( const Buffer other  )  [inline]

void vl::Buffer::swap ( Buffer other  )  [inline]

void vl::Buffer::clear (  )  [inline]

void vl::Buffer::resize ( size_t  byte_count,
size_t  alignment = 0 
) [inline]

size_t vl::Buffer::bytesUsed (  )  const [inline]

bool vl::Buffer::empty (  )  const [inline]

unsigned char* vl::Buffer::ptr (  )  [inline]

const unsigned char* vl::Buffer::ptr (  )  const [inline]

size_t vl::Buffer::alignment (  )  const [inline]

static void* vl::Buffer::alignedMalloc ( size_t  bytes,
size_t  alignment 
) [inline, static]

static void vl::Buffer::alignedFree ( void *  ptr  )  [inline, static]


Member Data Documentation

unsigned char* vl::Buffer::mPtr [protected]

size_t vl::Buffer::mByteCount [protected]

size_t vl::Buffer::mAlignment [protected]


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

Visualization Library v2009.08 Reference Documentation
Copyright 2005-2009 Michele Bosi. All rights reserved.
Updated on Tue Dec 29 13:56:54 2009.
Permission is granted to use this page to write and publish articles regarding Visualization Library.