|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectfr.cnes.sirius.patrius.events.multi.MultiEventsLogger
public class MultiEventsLogger
This class is copied from EventsLogger and adapted to multi propagation.
As multi events detectors are triggered during orbit propagation, an event specific
eventOccurred method is called. This class
can be used to add a global logging feature registering all events with their corresponding states in a chronological
sequence (or reverse-chronological if propagation occurs backward).
This class works by wrapping user-provided multi events detectors before they are
registered to the propagator. The wrapper monitor the calls to
eventOccurred and store the corresponding
events as MultiEventsLogger.MultiLoggedEvent instances. After propagation is complete, the user can retrieve all the events
that have occurred at once by calling method getLoggedEvents().
| Nested Class Summary | |
|---|---|
static class |
MultiEventsLogger.MultiLoggedEvent
Class for logged events entries. |
| Constructor Summary | |
|---|---|
MultiEventsLogger()
Simple constructor. |
|
| Method Summary | |
|---|---|
void |
clearLoggedEvents()
Clear the logged events. |
List<MultiEventsLogger.MultiLoggedEvent> |
getLoggedEvents()
Get an immutable copy of the logged events. |
MultiEventDetector |
monitorDetector(MultiEventDetector monitoredDetector)
Monitor a multi event detector. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public MultiEventsLogger()
Build an empty logger for events detectors.
| Method Detail |
|---|
public MultiEventDetector monitorDetector(MultiEventDetector monitoredDetector)
In order to monitor a multi event detector, it must be wrapped thanks to this method as follows:
MultiPropagator propagator = new XyzPropagator(...); MultiEventsLogger logger = new MultiEventsLogger(); MultiEventDetector detector = new UvwDetector(...); propagator.addEventDetector(logger.monitorDetector(detector));
Note that the event detector returned by the getEventDetector method
in LoggedEvent instances returned by getLoggedEvents() are the
monitoredDetector instances themselves, not the wrapping detector returned by this method.
monitoredDetector - multi event detector to monitor
public void clearLoggedEvents()
public List<MultiEventsLogger.MultiLoggedEvent> getLoggedEvents()
The copy is independent of the logger. It is preserved event if the clearLoggedEvents method is called and the logger reused in another propagation.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||