Add L0 Loader module#155
Conversation
|
In the new commit, I added a L1a mode in the FITS saver |
ckierans
left a comment
There was a problem hiding this comment.
Looks good, Wing! I have a few comments about variable names, but the code looks good.
| // build MTime from seconds and subseconds, and set that to RTS. | ||
| // Subseconds are 40 MHz DCB ticks → ns = ticks * 25 | ||
| long int pktNanoseconds = (long int)pktSubseconds * 25; | ||
| Event->SetTimeRTS(MTime((long int)pktSeconds, pktNanoseconds)); |
There was a problem hiding this comment.
I'm not sure about this, but I think you need an offset to account for the reference time system being defined from Jan 1, 2025 00:00:00. So I would expect another conversion from the packet time in seconds+nano seconds to the RTS time system.
There was a problem hiding this comment.
Hi Carolyn,
Thank you for catching that. You're right. It shouldn't be loaded as RTS directly. I was doing it that way because I wrote my L0 saver to save in RTS, so originally I read it back into RTS as well. But I looked at the docs, and I think in the real case the packets will come down in GPS time. So in the new commit, I rewrote the saver and loader to read and write the L0 packet time in GPS. I think that's the right approach, but I'd still like to confirm with you.
Thanks!
Adds L0 loader, and its GUI module.
MModuleLoaderMeasurementsL0- parses the L0 file header, CCSDS primary/secondary headers, HIT_DATA. Auto-detects raw CCSDS vs. L0 with header.