-import org.altusmetrum.AltosLib.*;
-
-abstract class MicroIterator implements Iterator<Double> {
- int i;
- MicroData data;
-
- public boolean hasNext() {
- return i < data.pressures.length;
- }
-
- public MicroIterator (MicroData data) {
- this.data = data;
- i = 0;
- }
-
- public void remove() {
- }
-}
-
-class MicroHeightIterator extends MicroIterator {
- public Double next() {
- return data.height(i++);
- }
-
- public MicroHeightIterator(MicroData data) {
- super(data);
- }
-}
-
-class MicroHeightIterable implements Iterable<Double> {
- MicroData data;
-
- public Iterator<Double> iterator() {
- return new MicroHeightIterator(data);
- }
-
- public MicroHeightIterable(MicroData data) {
- this.data = data;
- }
-}
-
-class MicroSpeedIterator extends MicroIterator {
- public Double next() {
- return data.speed(i++);
- }
- public MicroSpeedIterator(MicroData data) {
- super(data);
- }
-}
-
-class MicroSpeedIterable implements Iterable<Double> {
- MicroData data;
-
- public Iterator<Double> iterator() {
- return new MicroSpeedIterator(data);
- }
-
- public MicroSpeedIterable(MicroData data) {
- this.data = data;
- }
-}
-
-class MicroAccelIterator extends MicroIterator {
- public Double next() {
- return data.acceleration(i++);
- }
- public MicroAccelIterator(MicroData data) {
- super(data);
- }
-}
-
-class MicroAccelIterable implements Iterable<Double> {
- MicroData data;
-
- public Iterator<Double> iterator() {
- return new MicroAccelIterator(data);
- }
-
- public MicroAccelIterable(MicroData data) {
- this.data = data;
- }
-}