From a9fe8f28a4a9aaf1d9b84dbc6907849ace87f66e Mon Sep 17 00:00:00 2001 From: Fritz Elfert Date: Tue, 6 Feb 2001 01:01:46 +0000 Subject: - Added KDE2 PropsDialog Plugin (incomplete) - Fixed some KDE related autoconf stuff - Added PlpDrive class for returning results from rfsv:devinfo - Added auto-watch in ppsocket and finally got rid of the nasty SIGPIPE bug. Now it's no more necessary to ignore SIGPIPE in applications. - Made constructors of rfsv16, rfsv32, rpcs16 and rpcs32 private to enforce use of the factories. - Removed error output in the factories and replaced that by error codes which can be retrieved and evaluated by an application. --- lib/rfsvfactory.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'lib/rfsvfactory.h') diff --git a/lib/rfsvfactory.h b/lib/rfsvfactory.h index 99136e3..8af4575 100644 --- a/lib/rfsvfactory.h +++ b/lib/rfsvfactory.h @@ -10,7 +10,20 @@ class ppsocket; * @ref rfsv protocol variant depending on the connected Psion. */ class rfsvfactory { + public: + /** + * The known errors which can happen during @ref create . + */ + enum errs { + FACERR_NONE = 0, + FACERR_COULD_NOT_SEND = 1, + FACERR_AGAIN = 2, + FACERR_NOPSION = 3, + FACERR_PROTVERSION = 4, + FACERR_NORESPONSE = 5, + }; + /** * Constructs a rfsvfactory. * @@ -30,6 +43,14 @@ class rfsvfactory { */ virtual rfsv * create(bool); + /** + * Retrieve an error code. + * + * @returns The error code, in case @ref create has + * failed, 0 otherwise. + */ + virtual Enum getError() { return err; } + private: /** * The socket to be used for connecting to the @@ -37,6 +58,7 @@ class rfsvfactory { */ ppsocket *skt; int serNum; + Enum err; }; #endif -- cgit v1.2.3