Files
GoldenCheetah/src/CommPort.h
Sean Rhea 1c732ed2cc rename Device to CommPort
I hate to change so many lines of code just for a little rename, but I want to
distinguish between "devices", like the PowerTap and SRM, and "communications
ports", like the serial port and the native D2XX drivers.  This work is in
preparation for adding direct download support for the SRM.
2009-08-09 10:01:00 -07:00

47 lines
1.4 KiB
C++

/*
* Copyright (c) 2008 Sean C. Rhea (srhea@srhea.net)
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation; either version 2 of the License, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc., 51
* Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef _GC_CommPort_h
#define _GC_CommPort_h 1
#include <QtCore>
#include <boost/shared_ptr.hpp>
class CommPort;
typedef boost::shared_ptr<CommPort> CommPortPtr;
class CommPort
{
public:
typedef QVector<CommPortPtr> (*ListFunction)(QString &err);
static bool addListFunction(ListFunction f);
static QVector<CommPortPtr> listCommPorts(QString &err);
virtual ~CommPort() {}
virtual bool open(QString &err) = 0;
virtual void close() = 0;
virtual int read(void *buf, size_t nbyte, QString &err) = 0;
virtual int write(void *buf, size_t nbyte, QString &err) = 0;
virtual QString name() const = 0;
};
#endif // _GC_CommPort_h