summaryrefslogtreecommitdiff
path: root/includes/Buffer.h
diff options
context:
space:
mode:
authorNicolas "Pixel" Noble <pixel@nobis-crew.org>2014-08-10 02:58:35 -0700
committerNicolas "Pixel" Noble <pixel@nobis-crew.org>2014-08-10 02:58:35 -0700
commitec0f82bb6ea911baee6b9654f799f037282bf5b9 (patch)
treef18dd08e58c9231de3353544191c1fa2dfdbcb2b /includes/Buffer.h
parentbd06a6ec9ec3d0e10fe6e09bab4a156ceef6e0c8 (diff)
Introducing notion of filters.
Diffstat (limited to 'includes/Buffer.h')
-rw-r--r--includes/Buffer.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/includes/Buffer.h b/includes/Buffer.h
index 6b5318f..4983b98 100644
--- a/includes/Buffer.h
+++ b/includes/Buffer.h
@@ -12,12 +12,14 @@ class Buffer : public SeekableHandle {
virtual void close() throw (GeneralException) override;
virtual ssize_t read(void * buf, size_t count) throw (GeneralException) override;
virtual ssize_t write(const void * buf, size_t count) throw (GeneralException) override;
- virtual bool isClosed() override;
- virtual bool isEOF() override;
- virtual bool canRead() override;
- virtual bool canWrite() override;
- virtual const char * getName() override;
- virtual off64_t getSize() override;
+ virtual bool isClosed() override { return false; }
+ virtual bool isEOF() override { return rtell() == m_bufSize; }
+ virtual bool canRead() override { return true; }
+ virtual bool canWrite() override { return !m_fromConst; }
+ virtual bool canEAgainOnRead() override { return false; }
+ virtual bool canEAgainOnWrite() override { return false; }
+ virtual const char * getName() override { return "Buffer"; }
+ virtual off64_t getSize() override { return m_bufSize; }
const uint8_t * getBuffer() { return m_buffer + rtell(); }
void reset();
void clear();