plptools
Loading...
Searching...
No Matches
psion.h
Go to the documentation of this file.
1/*
2 * This file is part of plptools.
3 *
4 * Copyright (C) 2002 Daniel Brahneborg <basic@chello.se>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * along with this program; if not, see <https://www.gnu.org/licenses/>.
18 *
19 */
20
21#ifndef _PSION_H
22#define _PSION_H
23
24#include <Enum.h>
25#include "rfsv.h"
26
27class TCPSocket;
28class rfsvfactory;
29class rpcsfactory;
30class rpcs;
31
35class Psion
36{
37public:
38
39 virtual ~Psion();
40
41 virtual bool connect();
42
43 virtual Enum<rfsv::errs> copyFromPsion(const char * const from, int fd,
44 cpCallback_t func);
45
46 virtual Enum<rfsv::errs> copyToPsion(const char * const from,
47 const char * const to,
48 void *, cpCallback_t func);
49
50 virtual Enum<rfsv::errs> devinfo(const char drive, PlpDrive& plpDrive);
51
52 virtual Enum<rfsv::errs> devlist(uint32_t& devbits);
53
54 virtual Enum<rfsv::errs> dir(const char* dir, PlpDir& files);
55
56 virtual bool dirExists(const char* name);
57
58 virtual void disconnect();
59
60 virtual Enum<rfsv::errs> mkdir(const char* dir);
61
62 virtual void remove(const char* name);
63
64private:
65
72
73};
74
75#endif
76
Wrapper class featuring range-checking and string representation of enumerated values.
Definition: Enum.h:136
A class representing information about a Disk drive on the psion.
Definition: plpdirent.h:196
Semi smart proxy for communicating with a Psion.
Definition: psion.h:36
virtual Enum< rfsv::errs > dir(const char *dir, PlpDir &files)
Definition: psion.cpp:113
rfsvfactory * m_rfsvFactory
Definition: psion.h:68
rfsv * m_rfsv
Definition: psion.h:71
virtual Enum< rfsv::errs > devinfo(const char drive, PlpDrive &plpDrive)
Definition: psion.cpp:99
TCPSocket * m_skt
Definition: psion.h:66
rpcs * m_rpcs
Definition: psion.h:70
virtual void disconnect()
Definition: psion.cpp:132
virtual Enum< rfsv::errs > devlist(uint32_t &devbits)
Definition: psion.cpp:105
virtual bool dirExists(const char *name)
Definition: psion.cpp:119
virtual void remove(const char *name)
Definition: psion.cpp:149
rpcsfactory * m_rpcsFactory
Definition: psion.h:69
virtual Enum< rfsv::errs > mkdir(const char *dir)
Definition: psion.cpp:143
TCPSocket * m_skt2
Definition: psion.h:67
virtual Enum< rfsv::errs > copyToPsion(const char *const from, const char *const to, void *, cpCallback_t func)
Definition: psion.cpp:89
virtual Enum< rfsv::errs > copyFromPsion(const char *const from, int fd, cpCallback_t func)
Definition: psion.cpp:82
virtual ~Psion()
Definition: psion.cpp:39
virtual bool connect()
Definition: psion.cpp:45
A class for dealing with sockets.
Definition: tcpsocket.h:38
Access remote file services of a Psion.
Definition: rfsv.h:75
A factory for automatically instantiating the correct rfsv protocol variant depending on the connecte...
Definition: rfsvfactory.h:33
Remote procedure call services via PLP.
Definition: rpcs.h:51
A factory for automatically instantiating the correct protocol variant depending on the connected Psi...
Definition: rpcsfactory.h:32
int(* cpCallback_t)(void *, uint32_t)
Defines the callback procedure for progress indication of copy operations.
Definition: rfsv.h:42
std::deque< class PlpDirent > PlpDir
Definition: rfsv.h:31