|
| enum | seek_mode { PSI_SEEK_SET = 1
, PSI_SEEK_CUR = 2
, PSI_SEEK_END = 3
} |
| | The kown modes for seek. More...
|
| |
| enum | open_flags { PSI_O_RDONLY = 0000
, PSI_O_WRONLY = 0001
, PSI_O_RDWR = 0002
} |
| | The known modes for file open. More...
|
| |
| enum | open_mode {
PSI_O_CREAT = 00100
, PSI_O_EXCL = 00200
, PSI_O_TRUNC = 01000
, PSI_O_APPEND = 02000
,
PSI_O_SHARE = 04000
} |
| | The known modes for file creation. More...
|
| |
| enum | errs {
E_PSI_GEN_NONE = 0
, E_PSI_GEN_FAIL = -1
, E_PSI_GEN_ARG = -2
, E_PSI_GEN_OS = -3
,
E_PSI_GEN_NSUP = -4
, E_PSI_GEN_UNDER = -5
, E_PSI_GEN_OVER = -6
, E_PSI_GEN_RANGE = -7
,
E_PSI_GEN_DIVIDE = -8
, E_PSI_GEN_INUSE = -9
, E_PSI_GEN_NOMEMORY = - 10
, E_PSI_GEN_NOSEGMENTS = -11
,
E_PSI_GEN_NOSEM = -12
, E_PSI_GEN_NOPROC = -13
, E_PSI_GEN_OPEN = -14
, E_PSI_GEN_NOTOPEN = -15
,
E_PSI_GEN_IMAGE = -16
, E_PSI_GEN_RECEIVER = -17
, E_PSI_GEN_DEVICE = -18
, E_PSI_GEN_FSYS = -19
,
E_PSI_GEN_START = -20
, E_PSI_GEN_NOFONT = -21
, E_PSI_GEN_TOOWIDE = -22
, E_PSI_GEN_TOOMANY = -23
,
E_PSI_FILE_EXIST = -32
, E_PSI_FILE_NXIST = -33
, E_PSI_FILE_WRITE = -34
, E_PSI_FILE_READ = -35
,
E_PSI_FILE_EOF = -36
, E_PSI_FILE_FULL = -37
, E_PSI_FILE_NAME = -38
, E_PSI_FILE_ACCESS = -39
,
E_PSI_FILE_LOCKED = -40
, E_PSI_FILE_DEVICE = -41
, E_PSI_FILE_DIR = -42
, E_PSI_FILE_RECORD = -43
,
E_PSI_FILE_RDONLY = -44
, E_PSI_FILE_INV = -45
, E_PSI_FILE_PENDING = -46
, E_PSI_FILE_VOLUME = -47
,
E_PSI_FILE_CANCEL = -48
, E_PSI_FILE_ALLOC = -49
, E_PSI_FILE_DISC = -50
, E_PSI_FILE_CONNECT = -51
,
E_PSI_FILE_RETRAN = -52
, E_PSI_FILE_LINE = -53
, E_PSI_FILE_INACT = -54
, E_PSI_FILE_PARITY = -55
,
E_PSI_FILE_FRAME = -56
, E_PSI_FILE_OVERRUN = -57
, E_PSI_MDM_CONFAIL = -58
, E_PSI_MDM_BUSY = -59
,
E_PSI_MDM_NOANS = -60
, E_PSI_MDM_BLACKLIST = -61
, E_PSI_FILE_NOTREADY = -62
, E_PSI_FILE_UNKNOWN = -63
,
E_PSI_FILE_DIRFULL = -64
, E_PSI_FILE_PROTECT = -65
, E_PSI_FILE_CORRUPT = -66
, E_PSI_FILE_ABORT = -67
,
E_PSI_FILE_ERASE = -68
, E_PSI_FILE_INVALID = -69
, E_PSI_GEN_POWER = -100
, E_PSI_FILE_TOOBIG = -101
,
E_PSI_GEN_DESCR = -102
, E_PSI_GEN_LIB = -103
, E_PSI_FILE_NDISC = -104
, E_PSI_FILE_DRIVER = -105
,
E_PSI_FILE_COMPLETION = -106
, E_PSI_GEN_BUSY = -107
, E_PSI_GEN_TERMINATED = -108
, E_PSI_GEN_DIED = -109
,
E_PSI_FILE_HANDLE = -110
, E_PSI_NOT_SIBO = -200
, E_PSI_INTERNAL = -201
} |
| | The known error codes. More...
|
| |
| enum | file_attribs {
PSI_A_RDONLY = 0x0001
, PSI_A_HIDDEN = 0x0002
, PSI_A_SYSTEM = 0x0004
, PSI_A_DIR = 0x0008
,
PSI_A_ARCHIVE = 0x0010
, PSI_A_VOLUME = 0x0020
, PSI_A_NORMAL = 0x0040
, PSI_A_TEMP = 0x0080
,
PSI_A_COMPRESSED = 0x0100
, PSI_A_READ = 0x0200
, PSI_A_EXEC = 0x0400
, PSI_A_STREAM = 0x0800
,
PSI_A_TEXT = 0x1000
} |
| | The known file attributes. More...
|
| |
|
| virtual | ~rfsv () |
| |
| void | reset () |
| |
| void | reconnect () |
| |
| Enum< errs > | getStatus () |
| | Retrieves the current connection status. More...
|
| |
| virtual Enum< errs > | fopen (const uint32_t attr, const char *const name, uint32_t &handle)=0 |
| | Opens a file. More...
|
| |
| virtual Enum< errs > | mktemp (uint32_t &handle, std::string &name)=0 |
| | Creates a unique temporary file. More...
|
| |
| virtual Enum< errs > | fcreatefile (const uint32_t attr, const char *const name, uint32_t &handle)=0 |
| | Creates a named file. More...
|
| |
| virtual Enum< errs > | freplacefile (const uint32_t attr, const char *const name, uint32_t &handle)=0 |
| | Creates an named file, overwriting an existing file. More...
|
| |
| virtual Enum< errs > | fclose (const uint32_t handle)=0 |
| | Close a file on the Psion whih was previously opened/created by using fopen , fcreatefile , freplacefile or mktemp . More...
|
| |
| virtual Enum< errs > | dir (const char *const name, PlpDir &ret)=0 |
| | Reads a directory on the Psion. More...
|
| |
| virtual Enum< errs > | fgetmtime (const char *const name, PsiTime &mtime)=0 |
| | Retrieves the modification time of a file on the Psion. More...
|
| |
| virtual Enum< errs > | fsetmtime (const char *const name, const PsiTime mtime)=0 |
| | Sets the modification time of a file on the Psion. More...
|
| |
| virtual Enum< errs > | fgetattr (const char *const name, uint32_t &attr)=0 |
| | Retrieves attributes of a file on the Psion. More...
|
| |
| virtual Enum< errs > | pathtest (const char *const name)=0 |
| | Checks to see if the directory component of a path or file name exists and is valid. More...
|
| |
| virtual Enum< errs > | fgeteattr (const char *const name, PlpDirent &e)=0 |
| | Retrieves attributes, size and modification time of a file on the Psion. More...
|
| |
| virtual Enum< errs > | fsetattr (const char *const name, const uint32_t seta, const uint32_t unseta)=0 |
| |
| virtual Enum< errs > | dircount (const char *const name, uint32_t &count)=0 |
| | Counts number of entries in a directory. More...
|
| |
| virtual Enum< errs > | devlist (uint32_t &devbits)=0 |
| | Retrieves available drives on the Psion. More...
|
| |
| virtual Enum< errs > | devinfo (const char drive, PlpDrive &dinfo)=0 |
| | Retrieves details about a drive. More...
|
| |
| virtual Enum< errs > | fread (const uint32_t handle, unsigned char *const buffer, const uint32_t len, uint32_t &count)=0 |
| | Reads from a file on the Psion. More...
|
| |
| virtual Enum< errs > | fwrite (const uint32_t handle, const unsigned char *const buffer, const uint32_t len, uint32_t &count)=0 |
| | Write to a file on the Psion. More...
|
| |
| virtual Enum< errs > | copyFromPsion (const char *from, const char *to, void *, cpCallback_t func)=0 |
| | Copies a file from the Psion to the local machine. More...
|
| |
| virtual Enum< rfsv::errs > | copyFromPsion (const char *from, int fd, cpCallback_t cb)=0 |
| | Copies a file from the Psion to the local machine. More...
|
| |
| virtual Enum< errs > | copyToPsion (const char *const from, const char *const to, void *, cpCallback_t func)=0 |
| | Copies a file from local machine to the Psion. More...
|
| |
| virtual Enum< errs > | copyOnPsion (const char *const from, const char *const to, void *, cpCallback_t func)=0 |
| | Copies a file from the Psion to the Psion. More...
|
| |
| virtual Enum< errs > | fsetsize (const uint32_t handle, const uint32_t size)=0 |
| | Resizes an open file on the Psion. More...
|
| |
| virtual Enum< errs > | fseek (const uint32_t handle, const int32_t offset, const uint32_t mode, uint32_t &resultpos)=0 |
| | Sets the current file position of a file on the Psion. More...
|
| |
| virtual Enum< errs > | mkdir (const char *const name)=0 |
| | Creates a directory on the Psion. More...
|
| |
| virtual Enum< errs > | rmdir (const char *const name)=0 |
| | Removes a directory on the Psion. More...
|
| |
| virtual Enum< errs > | rename (const char *const oldname, const char *const newname)=0 |
| | Renames a file on the Psion. More...
|
| |
| virtual Enum< errs > | remove (const char *const name)=0 |
| | Removes a file on the Psion. More...
|
| |
| virtual Enum< errs > | opendir (const uint32_t attr, const char *const name, rfsvDirhandle &handle)=0 |
| | Open a directory for reading with readdir. More...
|
| |
| virtual Enum< errs > | readdir (rfsvDirhandle &handle, PlpDirent &entry)=0 |
| | Read directory entries. More...
|
| |
| virtual Enum< errs > | closedir (rfsvDirhandle &handle)=0 |
| | Close a directory, previously opened with opendir. More...
|
| |
| virtual Enum< errs > | setVolumeName (const char drive, const char *const name)=0 |
| | Set the name of a Psion Volume (Drive). More...
|
| |
| std::string | attr2String (const uint32_t attr) |
| | Converts a file attribute rfsv::file_attribs to human readable format, usable for showing them in directory listings. More...
|
| |
| virtual uint32_t | opMode (const uint32_t mode)=0 |
| | Converts an open-mode (A combination of the PSI_O_ constants.) from generic representation to the machine-specific representation. More...
|
| |
| int | getSpeed () |
| | Retrieve speed of serial link. More...
|
| |
| virtual int | getProtocolVersion ()=0 |
| | Retrieves the protocol version. More...
|
| |
Access remote file services of a Psion.
rfsv provides an API for accessing file services of a Psion connected via ncpd. This class defines the interface and a small amount of common constants and methods. The majority of implementation is provided by rfsv32 and rfsv16 , which implement the variations of the protocol for EPOC and SIBO respectively. Usually, the class rfsvfactory is used to instantiate the correct variant depending on the remote machine, currently connected.
Definition at line 75 of file rfsv.h.
| string rfsv::attr2String |
( |
const uint32_t |
attr | ) |
|
Converts a file attribute rfsv::file_attribs to human readable format, usable for showing them in directory listings.
The first 7 characters are common to all machine types:
Char Nr. Value
0 'd' if a directory, '-' otherwise.
1 'r' if file is readable, '-' otherwise.
2 'w' if file is writeable, '-' otherwise.
3 'h' if file is hidden, '-' otherwise.
4 's' if file is a system file, '-' otherwise.
5 'a' if file is modified (archive flag), '-' otherwise.
6 'v' if file is a volume name, '-' otherwise.
The rest (3 characters) are machine specific:
Char Nr. EPOC Value SIBO Value
7 'n' if normal, 'x' if executable, '-' otherwise.
8 't' if temporary, 'b' if a stream, '-' otherwise.
8 'c' if compressed, 't' if a textfile, '-' otherwise.
- Parameters
-
| attr | the generic file attribute. |
- Returns
- Pointer to static textual representation of file attributes.
Definition at line 149 of file rfsv.cc.