diff options
Diffstat (limited to 'includes')
-rw-r--r-- | includes/Output.h | 26 | ||||
-rw-r--r-- | includes/Printer.h | 1 |
2 files changed, 27 insertions, 0 deletions
diff --git a/includes/Output.h b/includes/Output.h new file mode 100644 index 0000000..59d9d67 --- /dev/null +++ b/includes/Output.h @@ -0,0 +1,26 @@ +#pragma once + +#include <Handle.h> + +namespace Balau { + +class Output : public SeekableHandle { + public: + Output(const char * fname, bool truncate = true) throw (GeneralException); + virtual void close() throw (GeneralException); + virtual ssize_t write(const void * buf, size_t count) throw (GeneralException); + virtual bool isClosed(); + virtual bool canWrite(); + virtual const char * getName(); + virtual off_t getSize(); + virtual time_t getMTime(); + const char * getFName() { return m_fname.to_charp(); } + private: + int m_fd; + String m_name; + String m_fname; + off_t m_size; + time_t m_mtime; +}; + +}; diff --git a/includes/Printer.h b/includes/Printer.h index e8d9a03..2c40088 100644 --- a/includes/Printer.h +++ b/includes/Printer.h @@ -36,6 +36,7 @@ enum { E_INPUT = 16, E_SOCKET = 32, E_THREAD = 64, + E_OUTPUT = 128, }; class Printer { |