From 71b4710c4834d747e44451bd7806c5ac4effbcc5 Mon Sep 17 00:00:00 2001 From: Nicolas Noble Date: Tue, 16 Jul 2013 16:21:37 -0700 Subject: Adding StdIO classes. --- includes/StdIO.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 includes/StdIO.h (limited to 'includes') diff --git a/includes/StdIO.h b/includes/StdIO.h new file mode 100644 index 0000000..9b7e362 --- /dev/null +++ b/includes/StdIO.h @@ -0,0 +1,40 @@ +#pragma once + +#include +#include + +namespace Balau { + +// these classes might very well need to have their own +// special version for win32; at least from a Handle. +class StdIN : public Selectable { + public: + StdIN(); + virtual const char * getName(); + virtual void close() throw (GeneralException); + private: + virtual ssize_t recv(int sockfd, void *buf, size_t len, int flags); + virtual ssize_t send(int sockfd, const void *buf, size_t len, int flags); +}; + +class StdOUT : public Selectable { + public: + StdOUT(); + virtual const char * getName(); + virtual void close() throw (GeneralException); + private: + virtual ssize_t recv(int sockfd, void *buf, size_t len, int flags); + virtual ssize_t send(int sockfd, const void *buf, size_t len, int flags); +}; + +class StdERR : public Selectable { + public: + StdERR(); + virtual const char * getName(); + virtual void close() throw (GeneralException); + private: + virtual ssize_t recv(int sockfd, void *buf, size_t len, int flags); + virtual ssize_t send(int sockfd, const void *buf, size_t len, int flags); +}; + +}; -- cgit v1.2.3