X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fio%2Fbuffered.cpp;h=2836e4bbbaeb879de07be26bf5fba2ecea8fcad9;hp=5dbd49463fc2666a39019036c4882231b73b653d;hb=be8ea216d23bf36bdfb2d3e302638782575fc136;hpb=d4d2018e1ba971e57eb2d8fee022b70a9c33d2e5 diff --git a/source/io/buffered.cpp b/source/io/buffered.cpp index 5dbd494..2836e4b 100644 --- a/source/io/buffered.cpp +++ b/source/io/buffered.cpp @@ -1,6 +1,7 @@ #include #include #include "buffered.h" +#include "handle.h" using namespace std; @@ -31,6 +32,16 @@ Buffered::~Buffered() delete[] buf; } +void Buffered::set_block(bool) +{ + throw logic_error("Buffered::set_block"); +} + +void Buffered::set_inherit(bool) +{ + throw logic_error("Buffered::set_block"); +} + void Buffered::flush() { if(cur_op==M_WRITE) @@ -47,7 +58,7 @@ void Buffered::flush() } } else if(cur_op==M_READ) - begin=end = buf; + begin = end = buf; } unsigned Buffered::do_write(const char *data, unsigned size) @@ -100,7 +111,7 @@ unsigned Buffered::do_read(char *data, unsigned size) // Give out whatever is in the buffer already memcpy(data, begin, end-begin); unsigned ret = end-begin; - begin=end = buf; + begin = end = buf; data += ret; size -= ret; @@ -167,6 +178,11 @@ int Buffered::get() return static_cast(c); } +const Handle &Buffered::get_handle(Mode) +{ + throw logic_error("Buffered::get_handle"); +} + void Buffered::set_op(Mode op) { if(op!=cur_op) @@ -179,10 +195,5 @@ unsigned Buffered::get_current_size() const return end-begin; } -Handle Buffered::get_event_handle() -{ - throw logic_error("Buffered doesn't support events"); -} - } // namespace IO } // namespace Msp