Rename print_transport.cpp to <addon transport class>.cpp.

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8551 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Philippe Houdoin 2004-08-11 08:56:02 +00:00
parent 8473eaa54c
commit 5b97efc5d8
3 changed files with 58 additions and 52 deletions

View File

@ -37,21 +37,22 @@
#include "PrintTransportAddOn.h"
class ParallelPort : public BDataIO {
int fFile;
class ParallelTransport : public BDataIO {
public:
ParallelPort(BDirectory* printer, BMessage* msg);
~ParallelPort();
ParallelTransport(BDirectory* printer, BMessage* msg);
~ParallelTransport();
status_t InitCheck() { return fFile > -1 ? B_OK : B_ERROR; }
ssize_t Read(void* buffer, size_t size);
ssize_t Write(const void* buffer, size_t size);
private:
int fFile;
};
// Impelmentation of ParallelPort
ParallelPort::ParallelPort(BDirectory* printer, BMessage* msg)
// Implementation of ParallelTransport
ParallelTransport::ParallelTransport(BDirectory* printer, BMessage* msg)
: fFile(-1)
{
char address[80];
@ -77,32 +78,33 @@ ParallelPort::ParallelPort(BDirectory* printer, BMessage* msg)
// Caller don't care about transport init message output content...
return;
msg->what = 'okok';
msg->AddBool("bidirectional", bidirectional);
msg->AddString("_parallel/DeviceName", device);
}
ParallelPort::~ParallelPort() {
if (InitCheck() == B_OK) {
ParallelTransport::~ParallelTransport()
{
if (InitCheck() == B_OK)
close(fFile);
fFile = -1;
}
}
ssize_t ParallelPort::Read(void* buffer, size_t size) {
ssize_t ParallelTransport::Read(void* buffer, size_t size)
{
return read(fFile, buffer, size);
}
ssize_t ParallelPort::Write(const void* buffer, size_t size) {
ssize_t ParallelTransport::Write(const void* buffer, size_t size)
{
return write(fFile, buffer, size);
}
BDataIO* instanciate_transport(BDirectory* printer, BMessage* msg) {
ParallelPort* transport = new ParallelPort(printer, msg);
if (transport->InitCheck() == B_OK) {
if (msg)
msg->what = 'okok';
BDataIO* instanciate_transport(BDirectory* printer, BMessage* msg)
{
ParallelTransport* transport = new ParallelTransport(printer, msg);
if (transport->InitCheck() == B_OK)
return transport;
} else {
delete transport; return NULL;
}
delete transport;
return NULL;
}

View File

@ -37,21 +37,22 @@
#include "PrintTransportAddOn.h"
class SerialPort : public BDataIO {
int fFile;
class SerialTransport : public BDataIO {
public:
SerialPort(BDirectory* printer, BMessage* msg);
~SerialPort();
SerialTransport(BDirectory* printer, BMessage* msg);
~SerialTransport();
status_t InitCheck() { return fFile > -1 ? B_OK : B_ERROR; }
ssize_t Read(void* buffer, size_t size);
ssize_t Write(const void* buffer, size_t size);
private:
int fFile;
};
// Impelmentation of SerialPort
SerialPort::SerialPort(BDirectory* printer, BMessage* msg)
// Impelmentation of SerialTransport
SerialTransport::SerialTransport(BDirectory* printer, BMessage* msg)
: fFile(-1)
{
char address[80];
@ -77,32 +78,34 @@ SerialPort::SerialPort(BDirectory* printer, BMessage* msg)
// Caller don't care about transport init message output content...
return;
msg->what = 'okok';
msg->AddBool("bidirectional", bidirectional);
msg->AddString("_serial/DeviceName", device);
}
SerialPort::~SerialPort() {
if (InitCheck() == B_OK) {
close(fFile); fFile = -1;
}
SerialTransport::~SerialTransport()
{
if (InitCheck() == B_OK)
close(fFile);
}
ssize_t SerialPort::Read(void* buffer, size_t size) {
ssize_t SerialTransport::Read(void* buffer, size_t size)
{
return read(fFile, buffer, size);
}
ssize_t SerialPort::Write(const void* buffer, size_t size) {
ssize_t SerialTransport::Write(const void* buffer, size_t size)
{
return write(fFile, buffer, size);
}
BDataIO* instanciate_transport(BDirectory* printer, BMessage* msg) {
SerialPort* transport = new SerialPort(printer, msg);
if (transport->InitCheck() == B_OK) {
if (msg)
msg->what = 'okok';
BDataIO* instanciate_transport(BDirectory* printer, BMessage* msg)
{
SerialTransport* transport = new SerialTransport(printer, msg);
if (transport->InitCheck() == B_OK)
return transport;
} else {
delete transport; return NULL;
}
delete transport;
return NULL;
}

View File

@ -1,5 +1,5 @@
/*****************************************************************************/
// Usb port transport add-on,
// USB port transport add-on,
// changes by Andreas Benzler, Philippe Houdoin
//
// Original from Parallel
@ -45,11 +45,12 @@
#include "PrintTransportAddOn.h"
class UsbPort : public BDataIO
class USBTransport : public BDataIO
{
public:
UsbPort(BDirectory *printer, BMessage *msg);
~UsbPort();
USBTransport(BDirectory *printer, BMessage *msg);
~USBTransport();
status_t InitCheck() { return fFile > -1 ? B_OK : B_ERROR; };
@ -66,7 +67,7 @@ private:
BDataIO *
instanciate_transport(BDirectory *printer, BMessage *msg)
{
UsbPort * transport = new UsbPort(printer, msg);
USBTransport * transport = new USBTransport(printer, msg);
if (transport->InitCheck() == B_OK)
return transport;
@ -75,9 +76,9 @@ instanciate_transport(BDirectory *printer, BMessage *msg)
}
// Implementation of UsbPort
// Implementation of USBTransport
UsbPort::UsbPort(BDirectory *printer, BMessage *msg)
USBTransport::USBTransport(BDirectory *printer, BMessage *msg)
: fFile(-1)
{
char device_id[USB_PRINTER_DEVICE_ID_LENGTH + 1];
@ -132,7 +133,7 @@ UsbPort::UsbPort(BDirectory *printer, BMessage *msg)
}
UsbPort::~UsbPort()
USBTransport::~USBTransport()
{
if (fFile > -1)
close(fFile);
@ -140,14 +141,14 @@ UsbPort::~UsbPort()
ssize_t
UsbPort::Read(void *buffer, size_t size)
USBTransport::Read(void *buffer, size_t size)
{
return read(fFile, buffer, size);
}
ssize_t
UsbPort::Write(const void *buffer, size_t size)
USBTransport::Write(const void *buffer, size_t size)
{
return write(fFile, buffer, size);
}