diff options
author | Josh Blum | 2012-12-15 09:53:25 -0800 |
---|---|---|
committer | Josh Blum | 2012-12-15 09:53:25 -0800 |
commit | b7c0a59c0a86f289f55935b19efaf448e892eefb (patch) | |
tree | 1e641f9816237481124835ac2fbf2792a8b1d50f /lib/gras_impl/buffer_queue.hpp | |
parent | 6a03c661ede88203ff90eb01bf1e678b87cb6056 (diff) | |
download | sandhi-b7c0a59c0a86f289f55935b19efaf448e892eefb.tar.gz sandhi-b7c0a59c0a86f289f55935b19efaf448e892eefb.tar.bz2 sandhi-b7c0a59c0a86f289f55935b19efaf448e892eefb.zip |
work on the buffer queue api
Diffstat (limited to 'lib/gras_impl/buffer_queue.hpp')
-rw-r--r-- | lib/gras_impl/buffer_queue.hpp | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/lib/gras_impl/buffer_queue.hpp b/lib/gras_impl/buffer_queue.hpp deleted file mode 100644 index 0e6be9e..0000000 --- a/lib/gras_impl/buffer_queue.hpp +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (C) by Josh Blum. See LICENSE.txt for licensing information. - -#ifndef INCLUDED_LIBGRAS_IMPL_BUFFER_QUEUE_HPP -#define INCLUDED_LIBGRAS_IMPL_BUFFER_QUEUE_HPP - -#include <gras/sbuffer.hpp> -#include <boost/bind.hpp> -#include <queue> - -namespace gras -{ - -struct BufferQueue : std::queue<SBuffer> -{ - BufferQueue(void) - { - SBufferDeleter deleter = boost::bind(&BufferQueue::push_back, this, _1); - _token = SBufferToken(new SBufferDeleter(deleter)); - } - - ~BufferQueue(void) - { - _token.reset(); - while (not this->empty()) - { - this->pop(); - } - } - - void push_back(const SBuffer &buff) - { - this->push(buff); - } - - void allocate_one(const size_t num_bytes) - { - SBufferConfig config; - config.memory = NULL; - config.length = num_bytes; - config.token = _token; - SBuffer buff(config); - //buffer derefs here and the token messages it back to the queue - } - - SBufferToken _token; -}; - -} //namespace gras - -#endif /*INCLUDED_LIBGRAS_IMPL_BUFFER_QUEUE_HPP*/ |