Add data branch to flight data before branch is simulated, not after.
simulateLoop() no longer returns a FlightDataBranch; it just adds to the FlightDataBranch it is simulating
This commit is contained in:
parent
523fce1a4c
commit
51af956330
@ -83,13 +83,13 @@ public class BasicEventSimulationEngine implements SimulationEngine {
|
||||
branchName = trans.get("BasicEventSimulationEngine.nullBranchName");
|
||||
}
|
||||
FlightDataBranch initialBranch = new FlightDataBranch( branchName, FlightDataType.TYPE_TIME);
|
||||
|
||||
|
||||
// put a point on it so we can plot if we get an early abort event
|
||||
initialBranch.addPoint();
|
||||
initialBranch.setValue(FlightDataType.TYPE_TIME, 0.0);
|
||||
initialBranch.setValue(FlightDataType.TYPE_ALTITUDE, 0.0);
|
||||
currentStatus.setFlightDataBranch(initialBranch);
|
||||
|
||||
currentStatus.setFlightDataBranch(initialBranch);
|
||||
|
||||
// Sanity checks on design and configuration
|
||||
|
||||
@ -121,10 +121,12 @@ public class BasicEventSimulationEngine implements SimulationEngine {
|
||||
break;
|
||||
}
|
||||
currentStatus = toSimulate.pop();
|
||||
FlightDataBranch dataBranch = currentStatus.getFlightDataBranch();
|
||||
flightData.addBranch(dataBranch);
|
||||
log.info(">>Starting simulation of branch: " + currentStatus.getFlightDataBranch().getName());
|
||||
|
||||
FlightDataBranch dataBranch = simulateLoop();
|
||||
flightData.addBranch(dataBranch);
|
||||
simulateLoop();
|
||||
dataBranch.immute();
|
||||
flightData.getWarningSet().addAll(currentStatus.getWarnings());
|
||||
|
||||
log.info(String.format("<<Finished simulating branch: %s curTime:%s finTime:%s",
|
||||
@ -149,7 +151,7 @@ public class BasicEventSimulationEngine implements SimulationEngine {
|
||||
return flightData;
|
||||
}
|
||||
|
||||
private FlightDataBranch simulateLoop() throws SimulationException {
|
||||
private void simulateLoop() throws SimulationException {
|
||||
|
||||
// Initialize the simulation. We'll use the flight stepper unless we're already
|
||||
// on the ground
|
||||
@ -282,12 +284,12 @@ public class BasicEventSimulationEngine implements SimulationEngine {
|
||||
}
|
||||
|
||||
} catch (SimulationException e) {
|
||||
|
||||
SimulationListenerHelper.fireEndSimulation(currentStatus, e);
|
||||
|
||||
// Add FlightEvent for exception.
|
||||
currentStatus.getFlightDataBranch().addEvent(new FlightEvent(FlightEvent.Type.EXCEPTION, currentStatus.getSimulationTime(), currentStatus.getConfiguration().getRocket(), e.getLocalizedMessage()));
|
||||
|
||||
flightData.addBranch(currentStatus.getFlightDataBranch());
|
||||
flightData.getWarningSet().addAll(currentStatus.getWarnings());
|
||||
|
||||
e.setFlightData(flightData);
|
||||
@ -295,8 +297,6 @@ public class BasicEventSimulationEngine implements SimulationEngine {
|
||||
|
||||
throw e;
|
||||
}
|
||||
|
||||
return currentStatus.getFlightDataBranch();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -126,9 +126,7 @@ public class FlightData {
|
||||
public void addBranch(FlightDataBranch branch) {
|
||||
mutable.check();
|
||||
|
||||
branch.immute();
|
||||
branches.add(branch);
|
||||
|
||||
}
|
||||
|
||||
public int getBranchCount() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user