public class EventsLogger extends Object implements Serializable
As 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 events detectors before they are registered to the propagator. The wrapper monitor the calls to
eventOccurred and store the corresponding
events as EventsLogger.LoggedEvent instances. After propagation is complete, the user can retrieve all the events that
have occured at once by calling method getLoggedEvents().
| Modifier and Type | Class and Description |
|---|---|
static class |
EventsLogger.LoggedEvent
Class for logged events entries.
|
| Constructor and Description |
|---|
EventsLogger()
Simple constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
clearLoggedEvents()
Clear the logged events.
|
List<EventsLogger.LoggedEvent> |
getLoggedEvents()
Get an immutable copy of the logged events.
|
EventDetector |
monitorDetector(EventDetector monitoredDetector)
Monitor an event detector.
|
public EventsLogger()
Build an empty logger for events detectors.
public EventDetector monitorDetector(EventDetector monitoredDetector)
In order to monitor an event detector, it must be wrapped thanks to this method as follows:
Propagator propagator = new XyzPropagator(...); EventsLogger logger = new EventsLogger(); EventDetector 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 - event detector to monitorpublic void clearLoggedEvents()
public List<EventsLogger.LoggedEvent> 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.
Copyright © 2025 CNES. All rights reserved.