projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altoslib: Correct IMU axes for telemetry data
[fw/altos]
/
altoslib
/
AltosTelemetryReader.java
diff --git
a/altoslib/AltosTelemetryReader.java
b/altoslib/AltosTelemetryReader.java
index 6a93c2c3f262ad5bce24b5fe0dde0f028be0fff4..de957f65b34005fccc1f87b0f33eab6b56ff0057 100644
(file)
--- a/
altoslib/AltosTelemetryReader.java
+++ b/
altoslib/AltosTelemetryReader.java
@@
-16,19
+16,20
@@
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
-package org.altusmetrum.altoslib_1
1
;
+package org.altusmetrum.altoslib_1
3
;
import java.text.*;
import java.io.*;
import java.util.concurrent.*;
public class AltosTelemetryReader extends AltosFlightReader {
import java.text.*;
import java.io.*;
import java.util.concurrent.*;
public class AltosTelemetryReader extends AltosFlightReader {
- AltosLink link;
- AltosLog log;
- double frequency;
- int telemetry;
- int telemetry_rate;
- AltosState state = null;
+ AltosLink link;
+ AltosLog log;
+ double frequency;
+ int telemetry;
+ int telemetry_rate;
+ private AltosState state = null;
+ private AltosCalData cal_data = null;
LinkedBlockingQueue<AltosLine> telem;
LinkedBlockingQueue<AltosLine> telem;
@@
-41,13
+42,17
@@
public class AltosTelemetryReader extends AltosFlightReader {
} while (!link.get_monitor());
AltosTelemetry telem = AltosTelemetry.parse(l.line);
if (state == null)
} while (!link.get_monitor());
AltosTelemetry telem = AltosTelemetry.parse(l.line);
if (state == null)
- state = new AltosState();
- else
- state = state.clone();
- telem.update_state(state);
+ state = new AltosState(cal_data());
+ telem.provide_data(state);
return state;
}
return state;
}
+ public AltosCalData cal_data() {
+ if (cal_data == null)
+ cal_data = new AltosCalData();
+ return cal_data;
+ }
+
public void flush() {
telem.clear();
}
public void flush() {
telem.clear();
}
@@
-55,6
+60,7
@@
public class AltosTelemetryReader extends AltosFlightReader {
public void reset() {
flush();
state = null;
public void reset() {
flush();
state = null;
+ cal_data = null;
}
public void close(boolean interrupted) {
}
public void close(boolean interrupted) {