aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rpcsfactory.h
diff options
context:
space:
mode:
authorFritz Elfert <felfert@to.com>2001-02-06 01:01:46 +0000
committerFritz Elfert <felfert@to.com>2001-02-06 01:01:46 +0000
commita9fe8f28a4a9aaf1d9b84dbc6907849ace87f66e (patch)
tree0dd290cdf04cfd17a4ab4d0eb86bcb48137a02cb /lib/rpcsfactory.h
parenta8787d39b2bf1851cdea64a5e0eccc2aff7f15de (diff)
downloadplptools-a9fe8f28a4a9aaf1d9b84dbc6907849ace87f66e.tar.gz
plptools-a9fe8f28a4a9aaf1d9b84dbc6907849ace87f66e.tar.bz2
plptools-a9fe8f28a4a9aaf1d9b84dbc6907849ace87f66e.zip
- 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.
Diffstat (limited to 'lib/rpcsfactory.h')
-rw-r--r--lib/rpcsfactory.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/rpcsfactory.h b/lib/rpcsfactory.h
index d57eb29..cc36f0d 100644
--- a/lib/rpcsfactory.h
+++ b/lib/rpcsfactory.h
@@ -11,6 +11,19 @@ class ppsocket;
*/
class rpcsfactory {
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 rpcsfactory.
*
@@ -30,12 +43,21 @@ class rpcsfactory {
*/
virtual rpcs * create(bool reconnect);
+ /**
+ * Retrieve an error code.
+ *
+ * @returns The error code, in case @ref create has
+ * failed, 0 otherwise.
+ */
+ virtual Enum<errs> getError() { return err; }
+
private:
/**
* The socket to be used for connecting to the
* ncpd daemon.
*/
ppsocket *skt;
+ Enum<errs> err;
};
#endif