skysafe / gr-sigmf

GNURadio blocks to read, write, and modify SigMF datasets
Other
30 stars 11 forks source link

Refactor/improve time handling #9

Closed pwicks86 closed 6 years ago

pwicks86 commented 6 years ago

These commits overhaul the time handling in the sigmf-sink to improve accuracy and add support for accepting timestamps as both relative and absolute.

pwicks86 commented 6 years ago

there seems to be an endianness change wrapped up in this that looks sketchy: specifically, the endianness will be set based on the machine that gnuradio-companion was last run from, not the machine which is actually running the flowgraph.

No, I don't think that's true. If I generate a python flowgraph file from the current version, I get something like this in the generated python file:

self.sigmf_sink_0 = sigmf.sink("cf32" + ("_le" if sys.byteorder == "little" else "_be"), "test_file", sigmf.sink_time_mode_absolute, False, True)

So the endianness determination happens at run-time in the python file.

As for using a head block, i'd rather merge this and then handle that as a seperate issue.

storborg commented 6 years ago

Ah yeah, you're right. That said, I don't think caller code should be required to be configure the SigMF Source or Sink for the correct endianness: SigMF should be responsible for that.

pwicks86 commented 6 years ago

Ah yeah, you're right. That said, I don't think caller code should be required to be configure the SigMF Source or Sink for the correct endianness: SigMF should be responsible for that.

Fixed.