create changelog entry
[debian/openrocket] / core / src / net / sf / openrocket / simulation / listeners / system / ApogeeEndListener.java
1 package net.sf.openrocket.simulation.listeners.system;
2
3 import net.sf.openrocket.simulation.FlightEvent;
4 import net.sf.openrocket.simulation.SimulationStatus;
5 import net.sf.openrocket.simulation.listeners.AbstractSimulationListener;
6
7
8 /**
9  * A simulation listeners that ends the simulation when apogee is reached.
10  * 
11  * @author Sampo Niskanen <sampo.niskanen@iki.fi>
12  */
13 public class ApogeeEndListener extends AbstractSimulationListener {
14         
15         public static final ApogeeEndListener INSTANCE = new ApogeeEndListener();
16         
17         @Override
18         public boolean handleFlightEvent(SimulationStatus status, FlightEvent event) {
19                 if (event.getType() == FlightEvent.Type.APOGEE) {
20                         status.getEventQueue().add(new FlightEvent(FlightEvent.Type.SIMULATION_END, status.getSimulationTime()));
21                 }
22                 return true;
23         }
24         
25         @Override
26         public boolean isSystemListener() {
27                 return true;
28         }
29 }