diff options
author | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
---|---|---|
committer | Doug McLain <doug@nostar.net> | 2008-06-02 05:02:28 +0000 |
commit | 9c0d7d72d70082a54f823cd44c0ccda5da64bb6f (patch) | |
tree | 96ec400b83b8c1c06852b1936f684b5fbcd47a79 /libs/ardour/ardour/buffer.h | |
parent | 2f3f697bb8e185eb43c2c50b4eefc2bcb937f269 (diff) |
remove empty sigc++2 directory
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/buffer.h')
-rw-r--r-- | libs/ardour/ardour/buffer.h | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/libs/ardour/ardour/buffer.h b/libs/ardour/ardour/buffer.h deleted file mode 100644 index fd94360226..0000000000 --- a/libs/ardour/ardour/buffer.h +++ /dev/null @@ -1,92 +0,0 @@ -/* - Copyright (C) 2006 Paul Davis - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the Free - Software Foundation; either version 2 of the License, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -#ifndef __ardour_buffer_h__ -#define __ardour_buffer_h__ - -#include <cstdlib> -#include <cassert> -#include <iostream> -#include <boost/utility.hpp> -#include <ardour/types.h> -#include <ardour/data_type.h> -#include <ardour/runtime_functions.h> - -namespace ARDOUR { - - -/** A buffer of recordable/playable data. - * - * This is a datatype-agnostic base class for all buffers (there are no - * methods to actually access the data). This provides a way for code that - * doesn't care about the data type to still deal with buffers (which is - * why the base class can't be a template). - * - * To actually read/write buffer contents, use the appropriate derived class. - */ -class Buffer : public boost::noncopyable -{ -public: - virtual ~Buffer() {} - - /** Factory function */ - static Buffer* create(DataType type, size_t capacity); - - /** Maximum capacity of buffer. - * Note in some cases the entire buffer may not contain valid data, use size. */ - size_t capacity() const { return _capacity; } - - /** Amount of valid data in buffer. Use this over capacity almost always. */ - size_t size() const { return _size; } - - /** Type of this buffer. - * Based on this you can static cast a Buffer* to the desired type. */ - DataType type() const { return _type; } - - bool silent() const { return _silent; } - - /** Reallocate the buffer used internally to handle at least @a size_t units of data. - * - * The buffer is not silent after this operation. the @a capacity argument - * passed to the constructor must have been non-zero. - */ - virtual void resize(size_t) = 0; - - /** Clear (eg zero, or empty) buffer starting at TIME @a offset */ - virtual void silence(nframes_t len, nframes_t offset=0) = 0; - - /** Clear the entire buffer */ - virtual void clear() { silence(_capacity, 0); } - - virtual void read_from(const Buffer& src, nframes_t offset, nframes_t len) = 0; - -protected: - Buffer(DataType type, size_t capacity) - : _type(type), _capacity(capacity), _size(0), _silent(true) - {} - - DataType _type; - size_t _capacity; - size_t _size; - bool _silent; -}; - - -} // namespace ARDOUR - -#endif // __ardour_buffer_h__ |