moved TriggerMatcher to its own header
... to be reusable by other block implementations.
refactored TriggerMatcher to use the following functional signature:
(std::string_view /* filterSpec */, const Tag &tag, property_map& /* filter state */)
This functional approach simplifies multiplexing and runtime interfaces (e.g. to Python and/or the UI)
added some basic DataSet draw and helper functions
clears the merged tag after it was inserted into the dataset, otherwise
it will be reissued in the next iteration. Ideally this would happen in
Block automatically, but there are a few difficult corner cases.
Tag[Monitor, Sink] made samples->_samples private/internal use since not all data types can be (nor will be) exported using pmtv setting types -> needs a different apporach comparison block.
Example (top: raw stream, middle: filtered stream, bottom: DataSet):
test condition 1: "start->stop matcher (excluding)"
-> [CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=4]
test condition 2: "start->^stop matcher (including)"
-> [CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/^FAIR.SELECTOR.C=1:S=1:P=3]
test condition 3: "start->^stop matcher (including. +pre/post)"
-> [CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/^FAIR.SELECTOR.C=1:S=1:P=3] +-3 ms before/after
test condition 4: "single trigger (+pre/post)"
-> CMD_DIAG_TRIGGER1 +- 30 ms before/after
StreamToDataSet
moved TriggerMatcher to its own header ... to be reusable by other block implementations.
refactored TriggerMatcher to use the following functional signature:
This functional approach simplifies multiplexing and runtime interfaces (e.g. to Python and/or the UI)
added some basic DataSet draw and helper functions
clears the merged tag after it was inserted into the dataset, otherwise it will be reissued in the next iteration. Ideally this would happen in Block automatically, but there are a few difficult corner cases.
Tag[Monitor, Sink] made
samples
->_samples
private/internal use since not all data types can be (nor will be) exported using pmtv setting types -> needs a different apporach comparison block.Example (top: raw stream, middle: filtered stream, bottom: DataSet):
[CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=4]
[CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/^FAIR.SELECTOR.C=1:S=1:P=3]
[CMD_BP_START/FAIR.SELECTOR.C=1:S=1:P=1, CMD_BP_START/^FAIR.SELECTOR.C=1:S=1:P=3]
+-3 ms before/afterCMD_DIAG_TRIGGER1
+- 30 ms before/afterstreamToDataSet.webm