diff options
Diffstat (limited to 'altoslib')
| -rw-r--r-- | altoslib/AltosIdleMonitor.java | 19 | ||||
| -rw-r--r-- | altoslib/AltosLink.java | 3 | 
2 files changed, 22 insertions, 0 deletions
| diff --git a/altoslib/AltosIdleMonitor.java b/altoslib/AltosIdleMonitor.java index 6b20b3f1..f2f75bbb 100644 --- a/altoslib/AltosIdleMonitor.java +++ b/altoslib/AltosIdleMonitor.java @@ -27,6 +27,7 @@ public class AltosIdleMonitor extends Thread {  	AltosState		state;  	boolean			remote;  	double			frequency; +	String			callsign;  	AltosState		previous_state;  	AltosConfigData		config_data;  	AltosGPS		gps; @@ -87,6 +88,7 @@ public class AltosIdleMonitor extends Thread {  		try {  			if (remote) {  				link.set_radio_frequency(frequency); +				link.set_callsign(callsign);  				link.start_remote();  			} else  				link.flush_input(); @@ -126,12 +128,29 @@ public class AltosIdleMonitor extends Thread {  	public void set_frequency(double in_frequency) {  		frequency = in_frequency; +		link.abort_reply(); +	} + +	public void set_callsign(String in_callsign) { +		callsign = in_callsign; +		link.abort_reply();  	}  	public void post_state() {  		listener.update(state);  	} +	public void abort() { +		if (isAlive()) { +			interrupt(); +			link.abort_reply(); +			try { +				join(); +			} catch (InterruptedException ie) { +			} +		} +	} +  	public void run() {  		try {  			for (;;) { diff --git a/altoslib/AltosLink.java b/altoslib/AltosLink.java index 2b5909aa..9eb25ce0 100644 --- a/altoslib/AltosLink.java +++ b/altoslib/AltosLink.java @@ -249,6 +249,7 @@ public abstract class AltosLink implements Runnable {  	public boolean monitor_mode = false;  	public int telemetry = AltosLib.ao_telemetry_standard;  	public double frequency; +	public String callsign;  	AltosConfigData	config_data;  	private int telemetry_len() { @@ -330,6 +331,7 @@ public abstract class AltosLink implements Runnable {  	}  	public void set_callsign(String callsign) { +		this.callsign = callsign;  		printf ("c c %s\n", callsign);  		flush_output();  	} @@ -363,5 +365,6 @@ public abstract class AltosLink implements Runnable {  	}  	public AltosLink() { +		callsign = "";  	}  } | 
