aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rfsv32.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/rfsv32.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/rfsv32.h')
-rw-r--r--lib/rfsv32.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/lib/rfsv32.h b/lib/rfsv32.h
index abbc6ad..4afb95a 100644
--- a/lib/rfsv32.h
+++ b/lib/rfsv32.h
@@ -4,16 +4,19 @@
#include "rfsv.h"
#include "plpdirent.h"
+class rfsvfactory;
+
/**
* This is the implementation of the @ref rfsv protocol for
- * Psion series 5 (EPOC) variant.
- * For a complete documentation, see @ref rfsv .
+ * Psion series 5 (EPOC) variant. You normally never create
+ * objects of this class directly. Thus the constructor is
+ * private. Use @ref rfsvfactory for creating an instance of
+ * @ref rfsv . For a complete documentation, see @ref rfsv .
*/
class rfsv32 : public rfsv {
+ friend rfsvfactory;
public:
- rfsv32(ppsocket *);
-
Enum<rfsv::errs> dir(const char * const, PlpDir &);
Enum<rfsv::errs> dircount(const char * const, u_int32_t &);
Enum<rfsv::errs> copyFromPsion(const char * const, const char * const, void *, cpCallback_t);
@@ -39,7 +42,7 @@ public:
Enum<rfsv::errs> fclose(const u_int32_t);
Enum<rfsv::errs> devlist(u_int32_t &);
- Enum<rfsv::errs> devinfo(const u_int32_t, u_int32_t &, u_int32_t &, u_int32_t &, u_int32_t &, string &);
+ Enum<rfsv::errs> devinfo(const u_int32_t, PlpDrive&);
Enum<rfsv::errs> opendir(const u_int32_t, const char * const, rfsvDirhandle &);
Enum<rfsv::errs> readdir(rfsvDirhandle &, PlpDirent &);
Enum<rfsv::errs> closedir(rfsvDirhandle &);
@@ -155,6 +158,12 @@ private:
REPLACE = 0x32
};
+ /**
+ * Private constructor. Shall be called by
+ * rfsvfactory only.
+ */
+ rfsv32(ppsocket *);
+
Enum<rfsv::errs> err2psierr(int32_t);
Enum<rfsv::errs> fopendir(const u_int32_t, const char *, u_int32_t &);
u_int32_t attr2std(const u_int32_t);