34 #include <visp3/core/vpConfig.h>
36 #ifdef VISP_HAVE_PARPORT
39 #include <sys/ioctl.h>
41 #include <sys/types.h>
44 #include <visp3/io/vpParallelPort.h>
51 static unsigned char vpParallelPortData;
68 device =
"/dev/parport0";
72 unsigned char data = 0;
93 void vpParallelPort::open()
95 fd = ::open(device.c_str(), O_WRONLY);
97 printf(
"Can't open /dev/parport0\n");
98 printf(
"Check if you have write access to /dev/parport0\n");
99 perror(
"Open parallel port");
106 i = PARPORT_MODE_COMPAT;
107 ioctl(fd, PPSETMODE, &i);
108 i = IEEE1284_MODE_COMPAT;
109 ioctl(fd, PPNEGOT, &i);
128 ioctl(fd, PPWDATA, &data);
131 vpParallelPortData = data;
148 void vpParallelPort::close()
150 ioctl(fd, PPRELEASE);
156 printf(
"Can't close the parallel port\n");
161 #elif !defined(VISP_BUILD_SHARED_LIBS)
164 void dummy_vpParallelPort(){};
Error that can be emitted by the vpParallelPort class and its derivates.
virtual ~vpParallelPort()
void sendData(unsigned char &data)