Add ITL file reader
Add support for ITL events file reader (instrument timeline events file):
#---------------
# Example of ITL
#---------------
# Timeline version
Version: 1
# Block comment with absolute timing
2032-07-02T04:18:40Z UVS OBS_START UVS_SAT_STELL_OCC_A (PRIME=TRUE)
2032-07-02T04:32:00Z UVS OBS_END UVS_SAT_STELL_OCC_A
#==========
# Multi-lines comment block with EVF relative timing (related to `CA_EUROPA.EVF`):
# 29-JAN-2031_21:21:56 CA_EUROPA (COUNT = 3)
#skip this line (no leading space or tab).
CA_EUROPA (COUNT = 3) -00:27:00 MAJIS OBS_START MAJIS_FLYBY_HR_01_001 (PRIME=TRUE)
CA_EUROPA (COUNT = 3) -00:25:06 MAJIS OBS_END MAJIS_FLYBY_HR_01_001
# Switch mode absolute block
2031-02-06T00:16:25Z MAJIS * SWITCH_MODE (CURRENT_MODE=SERVICE3 [ENG])
# Switch mode relative block
CA_EUROPA (COUNT = 3) +04:36:55 MAJIS * SWITCH_MODE (CURRENT_MODE=OFF [ENG])
The events can be fined with absolute or relative timing (2032-07-02T04:18:40Z
vs. CA_EUROPA (COUNT = 3) -00:27:00
).
If the events refer to a an other event, here CA_EUROPA (COUNT = 3)
, you will need a companion EVF file (see !35 (merged) for EVF parser).
Added
- New
ItlEventFile
was added:
from moon_coverage.events import ItlEventsFile
ItlEventsFile('OTL_EUROPA.ITL', evf='CA_EUROPA.EVF')
returns:
event | # | t_start | t_stop |
---|---|---|---|
OBS | 2 | 2031-01-29 | 2032-07-02 |
SWITCH_MODE | 2 | 2031-01-30 | 2031-02-06 |
ItlEventFile
is based on AbstractEventsFile
and EventsDict
objects.
It supports the same search/filtering methods as EventsDict
and EventsList
.
- New generic event reader for all ESA mission event files (
.csv
/.evf
/.itl
):
from moon_coverage import read_events
phases = read_events('Mission_Phases.csv')
timeline = read_events('mission_timeline_event_file_5_0.csv')
malargue = read_events('segmentation_proposal_Jupiter_Phase_all_crema_5_0_MALARGUE.csv')
evf = read_events('CA_EUROPA.EVF')
itl = read_events('OTL_EUROPA.ITL', evf='CA_EUROPA.EVF')
-
Add
AbstractEventsFile
post parsing check. -
timedelta
parser now supports卤HH:MM:SS[.MS]
strings:
>>> from moon_coverage.spice import timedelta
>>> timedelta('+02:04:06')
numpy.timedelta64(7446,'s')
Changed
-
misc.depreciated_renamed
was renamedmisc.depreciated
and changed to append depreciationversion
number in the doc string.
Deprecated
-
esa.EsaMissionPhases
,esa.EsaMissionTimeline
andesa.EsaMissionEvents
are depreciated in favor ofread_events()