projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos]
/
micropeak
/
MicroSerial.java
diff --git
a/micropeak/MicroSerial.java
b/micropeak/MicroSerial.java
index 15ef858244bcfa5cc3efee138d56caf008115bdc..c688242874837c2c60c9093191e3d847e920867a 100644
(file)
--- a/
micropeak/MicroSerial.java
+++ b/
micropeak/MicroSerial.java
@@
-3,7
+3,8
@@
*
* 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
*
* 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; version 2 of the License.
+ * 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
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
@@
-20,12
+21,15
@@
package org.altusmetrum.micropeak;
import java.util.*;
import java.io.*;
import libaltosJNI.*;
import java.util.*;
import java.io.*;
import libaltosJNI.*;
-import org.altusmetrum.altosuilib.*;
+import org.altusmetrum.altosuilib
_14
.*;
public class MicroSerial extends InputStream {
SWIGTYPE_p_altos_file file;
public class MicroSerial extends InputStream {
SWIGTYPE_p_altos_file file;
+ private MicroSerialLog log;
public int read() {
public int read() {
+ if (file == null)
+ return -1;
int c = libaltos.altos_getchar(file, 0);
if (Thread.interrupted())
return -1;
int c = libaltos.altos_getchar(file, 0);
if (Thread.interrupted())
return -1;
@@
-33,9
+37,19
@@
public class MicroSerial extends InputStream {
return -1;
if (AltosUIPreferences.serial_debug)
System.out.printf("%c", c);
return -1;
if (AltosUIPreferences.serial_debug)
System.out.printf("%c", c);
+ if (log != null)
+ log.log_char(c);
return c;
}
return c;
}
+ public void write(char c) {
+ libaltos.altos_putchar(file, c);
+ }
+
+ public void flush() {
+ libaltos.altos_flush(file);
+ }
+
public void close() {
if (file != null) {
libaltos.altos_close(file);
public void close() {
if (file != null) {
libaltos.altos_close(file);
@@
-43,8
+57,13
@@
public class MicroSerial extends InputStream {
}
}
}
}
+ public void set_log(MicroSerialLog log) {
+ this.log = log;
+ }
+
public MicroSerial(AltosDevice device) throws FileNotFoundException {
file = device.open();
public MicroSerial(AltosDevice device) throws FileNotFoundException {
file = device.open();
+ log = null;
if (file == null) {
final String message = device.getErrorString();
throw new FileNotFoundException(String.format("%s (%s)",
if (file == null) {
final String message = device.getErrorString();
throw new FileNotFoundException(String.format("%s (%s)",