// This ioctl is Linux specific, so keep it private for now private int ioctl(int fd, int cmd, serial_struct data) { // Do the logging here as this does not go through the JTermios which normally does the logging log = log && log(5, "> ioctl(%d,%d,%s)\n", fd, cmd, data); int ret = m_Clib.ioctl(fd, cmd, data); log = log && log(3, "< tcsetattr(%d,%d,%s) => %d\n", fd, cmd, data, ret); return ret; }
public int ioctl(int fd, int cmd, int[] data) { return m_Clib.ioctl(fd, cmd, data); }
public int tcsetattr(int fd, int cmd, Termios termios) { return m_Clib.tcsetattr(fd, cmd, new termios(termios)); }
public int tcsendbreak(int fd, int duration) { // If duration is not zero, it sends zero-valued bits for duration*N seconds, // where N is at least 0.25, and not more than 0.5. return m_Clib.tcsendbreak(fd, duration / 250); }
public void perror(String msg) { m_Clib.perror(msg); }
public int tcgetattr(int fd, Termios termios) { termios t = new termios(); int ret = m_Clib.tcgetattr(fd, t); t.update(termios); return ret; }
public int tcflush(int fd, int b) { return m_Clib.tcflush(fd, b); }
public int fcntl(int fd, int cmd, int arg) { return m_Clib.fcntl(fd, cmd, arg); }
public int write(int fd, byte[] buffer, int len) { return m_Clib.write(fd, buffer, new NativeSize(len)).intValue(); }
public int read(int fd, byte[] buffer, int len) { return m_Clib.read(fd, buffer, new NativeSize(len)).intValue(); }
public int open(String s, int t) { if (s != null && !s.startsWith("/")) { s = DEVICE_DIR_PATH + s; } return m_Clib.open(s, t); }
public int cfsetospeed(Termios termios, int speed) { termios t = new termios(termios); int ret = m_Clib.cfsetospeed(t, speed); t.update(termios); return ret; }
public int cfgetospeed(Termios termios) { return m_Clib.cfgetospeed(new termios(termios)); }
public int tcdrain(int fd) { return m_Clib.tcdrain(fd); }
public int close(int fd) { return m_Clib.close(fd); }
public int pipe(int[] fds) { return m_Clib.pipe(fds); }
public void cfmakeraw(Termios termios) { termios t = new termios(termios); m_Clib.cfmakeraw(t); t.update(termios); }