public class MultiCodedEventsLogger extends Object
This class is copied from CodedEventsLogger
and adapted to multi propagation.
This class logs coded events during multi propagation. It is based on the MultiEventsLogger
class in Patrius.
This class works by wrapping user-provided MultiCodingEventDetector
before they are registered to the multi
propagator. The wrapper monitors the calls to eventOccurred
and store the corresponding events as MultiCodedEventsLogger.MultiLoggedCodedEvent
instances. After propagation is
complete, the user can retrieve all the events that have occurred at once by calling methods
getCodedEventsList()
or getLoggedCodedEventSet()
.
MultiEventsLogger
,
MultiCodingEventDetector
Modifier and Type | Class and Description |
---|---|
static class |
MultiCodedEventsLogger.MultiLoggedCodedEvent
This class is used to store the coded event with contextual information.
|
Constructor and Description |
---|
MultiCodedEventsLogger()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
Map<MultiCodingEventDetector,CodedEventsList> |
buildCodedEventListMap()
Builds a map of
CodedEventsList , one list per MultiCodingEventDetector instance. |
Map<MultiCodingEventDetector,PhenomenaList> |
buildPhenomenaListMap(AbsoluteDateInterval definitionInterval,
Map<String,SpacecraftState> duringState)
Builds a map of
PhenomenaList , one list per MultiCodingEventDetector instance. |
CodedEventsList |
getCodedEventsList()
Gets the
CodedEventsList . |
SortedSet<MultiCodedEventsLogger.MultiLoggedCodedEvent> |
getLoggedCodedEventSet()
Returns an unmodifiable view on the set of
MultiCodedEventsLogger.MultiLoggedCodedEvent , sorted by date. |
MultiEventDetector |
monitorDetector(MultiCodingEventDetector detector)
Takes a
MultiCodingEventDetector instance and returns an MultiEventDetector instance that will
trigger this MultiCodedEventsLogger every time
eventOccurred is called. |
public MultiEventDetector monitorDetector(MultiCodingEventDetector detector)
MultiCodingEventDetector
instance and returns an MultiEventDetector
instance that will
trigger this MultiCodedEventsLogger
every time
eventOccurred
is called. The returned MultiEventDetector
is meant to be provided to a propagator.detector
- the wrapped MultiCodingEventDetector
MultiEventDetector
.public CodedEventsList getCodedEventsList()
CodedEventsList
. This method can be called after propagation to get the list of detected events.CodedEventsList
.public SortedSet<MultiCodedEventsLogger.MultiLoggedCodedEvent> getLoggedCodedEventSet()
MultiCodedEventsLogger.MultiLoggedCodedEvent
, sorted by date.public Map<MultiCodingEventDetector,CodedEventsList> buildCodedEventListMap()
CodedEventsList
, one list per MultiCodingEventDetector
instance.
The map may be empty if no MultiCodingEventDetector
was added to the logger.
MultiCodingEventDetector
was added.public Map<MultiCodingEventDetector,PhenomenaList> buildPhenomenaListMap(AbsoluteDateInterval definitionInterval, Map<String,SpacecraftState> duringState) throws PatriusException
PhenomenaList
, one list per MultiCodingEventDetector
instance.
The map may be empty if no MultiCodingEventDetector
was added to the logger.
definitionInterval
- an AbsoluteDateInterval
. May be null; if not, is used to position uncertain boundaries on a
Phenomenon.duringState
- a map of SpacecraftState
. May be null; if not, is used to compute a Phenomenon when no event
has
occurred.MultiCodingEventDetector
handling phenomena was added.PatriusException
- if a problem occurs when g is called with the duringState parameter.Copyright © 2023 CNES. All rights reserved.