summaryrefslogtreecommitdiff
path: root/ao-tools/altosui/AltosSerial.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2010-07-27 10:18:20 -0700
committerKeith Packard <keithp@keithp.com>2010-07-27 10:18:20 -0700
commit8f2f38f2a9fb0c106e2c6b60cdc205292ce329ea (patch)
treef1796d3c3efdbbc0f985648b6708def4d908b7c5 /ao-tools/altosui/AltosSerial.java
parent734cd15ccff691f851359518ce6118f29dc9f88d (diff)
Java clean ups -- use varargs where possible, remove AltosSerialReader
Add methods that format stuff using String.format for voice and serial link, remove AltosSerialReader class and just embed that in the AltosSerial class directly. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'ao-tools/altosui/AltosSerial.java')
-rw-r--r--ao-tools/altosui/AltosSerial.java53
1 files changed, 18 insertions, 35 deletions
diff --git a/ao-tools/altosui/AltosSerial.java b/ao-tools/altosui/AltosSerial.java
index 073bfb78..e84f5b63 100644
--- a/ao-tools/altosui/AltosSerial.java
+++ b/ao-tools/altosui/AltosSerial.java
@@ -37,7 +37,9 @@ import libaltosJNI.SWIGTYPE_p_altos_list;
* line in a queue. Dealing with that queue is left up to other
* threads.
*/
-class AltosSerialReader implements Runnable {
+
+public class AltosSerial implements Runnable {
+
SWIGTYPE_p_altos_file altos;
LinkedList<LinkedBlockingQueue<String>> monitors;
LinkedBlockingQueue<String> reply_queue;
@@ -116,13 +118,27 @@ class AltosSerialReader implements Runnable {
}
}
+ public void putc(char c) {
+ libaltos.altos_putchar(altos, c);
+ }
+
+ public void print(String data) {
+ for (int i = 0; i < data.length(); i++)
+ putc(data.charAt(i));
+ }
+
+ public void printf(String format, Object ... arguments) {
+ print(String.format(format, arguments));
+ }
+
public void open(altos_device device) throws FileNotFoundException {
close();
altos = libaltos.altos_open(device);
input_thread = new Thread(this);
input_thread.start();
}
- public AltosSerialReader () {
+
+ public AltosSerial() {
altos = null;
input_thread = null;
line = "";
@@ -130,36 +146,3 @@ class AltosSerialReader implements Runnable {
reply_queue = new LinkedBlockingQueue<String> ();
}
}
-
-public class AltosSerial {
- AltosSerialReader reader = null;
-
- public void close() {
- reader.close();
- }
-
- public void open(altos_device device) throws FileNotFoundException {
- reader.open(device);
- }
-
- void init() {
- reader = new AltosSerialReader();
- }
-
- public void add_monitor(LinkedBlockingQueue<String> q) {
- reader.add_monitor(q);
- }
-
- public void remove_monitor(LinkedBlockingQueue<String> q) {
- reader.remove_monitor(q);
- }
-
- public AltosSerial() {
- init();
- }
-
- public AltosSerial(altos_device device) throws FileNotFoundException {
- init();
- open(device);
- }
-}