82 lines
2.7 KiB
Java
82 lines
2.7 KiB
Java
|
|
import java.io.BufferedWriter;
|
|
import java.io.File;
|
|
import java.io.FileWriter;
|
|
import java.io.IOException;
|
|
import java.net.SocketException;
|
|
import java.util.Arrays;
|
|
|
|
import javax.swing.BorderFactory;
|
|
import javax.swing.JLabel;
|
|
import javax.swing.JPanel;
|
|
import javax.swing.OverlayLayout;
|
|
import javax.swing.SwingConstants;
|
|
import javax.swing.border.Border;
|
|
|
|
import ModelFiles.*;
|
|
import ModelFiles.Action;
|
|
import ModelFiles.ActionType;
|
|
import ModelFiles.Delay;
|
|
import ModelFiles.MindQueue;
|
|
import ModelFiles.Model;
|
|
import ModelFiles.Vision;
|
|
import ModelFiles.XPlaneConnect;
|
|
|
|
public class Main {
|
|
|
|
public static void main(String[] args) {
|
|
//Encapsulation (or lack thereof) Test
|
|
Model m = new Model();
|
|
MindQueue q = m.getQueue();
|
|
Action a = new Vision();
|
|
System.out.println(q.pop());
|
|
q.push(a);
|
|
MindQueue q2 = m.getQueue();
|
|
System.out.println(q2.pop());
|
|
|
|
//Using actions
|
|
try(XPlaneConnect xpc = new XPlaneConnect()) {
|
|
Action b = new Vision(10,"sim/cockpit2/gauges/indicators/airspeed_kts_pilot");
|
|
Action d = new Delay(20);
|
|
// Ensure connection established.
|
|
m = new Model(xpc);
|
|
m.activateModel();
|
|
m.createAction(ActionType.VISION, null, 0, "sim/cockpit2/gauges/indicators/airspeed_kts_pilot");
|
|
m.createAction(ActionType.MOTOR, MotorType.PITCHUP, 0, null);
|
|
// m.push(b);
|
|
// m.push(d);
|
|
m.printModelQueue();
|
|
// m.deactivateModel();
|
|
while(m.isActive() && !m.isEmpty()) {
|
|
float[] array = m.next();
|
|
if(array != null) {
|
|
// System.out.println(array[0]);
|
|
// if(array[0] > 80.0f) {
|
|
// m.push(d);
|
|
// }
|
|
} else {
|
|
// System.out.println("no dice");
|
|
// System.out.println(xpc.getDREF(null)");
|
|
}
|
|
if(m.getModelQueueLength() < 5){
|
|
m.createAction(ActionType.VISION, null, 0, "sim/cockpit2/gauges/indicators/airspeed_kts_pilot");
|
|
m.createAction(ActionType.MOTOR, MotorType.PITCHUP, 0, null);
|
|
m.createAction(ActionType.MOTOR, MotorType.PITCHDOWN, 0, null);
|
|
}
|
|
|
|
// m.printModelQueue();
|
|
}
|
|
}
|
|
catch (SocketException ex)
|
|
{
|
|
System.out.println("Unable to set up the connection. (Error message was '" + ex.getMessage() + "'.)");
|
|
}
|
|
catch (IOException ex)
|
|
{
|
|
System.out.println("Something went wrong with one of the commands. (Error message was '" + ex.getMessage() + "'.)");
|
|
}
|
|
System.out.println("Exiting");
|
|
}
|
|
|
|
}
|