... | ... | @@ -11,7 +11,7 @@ Each frame is involved in a number of stages within the system, these are: |
|
|
|
|
|
A frame consists of a potentially large number of channels with diverse but mostly known data types. Each frame has a unique ID and an associated timestamp.
|
|
|
|
|
|
Question: Does a frame really ever become read-only? The same frame cannot be received twice and can only move in one direction through the stream. Therefore it can be modified for the next pipeline stage but cannot be sent back or be re-transmitted. A check might be that the timestamp must be newer than than any previously sent or received frame timestamp before that frame is allowed to be sent through a stream? Timestamps must be readonly after frame construction.
|
|
|
**Question: Does a frame really ever become read-only?** The same frame cannot be received twice and can only move in one direction through the stream. Therefore it can be modified for the next pipeline stage but cannot be sent back or be re-transmitted. A check might be that the timestamp must be newer than than any previously sent or received frame timestamp before that frame is allowed to be sent through a stream? Timestamps must be readonly after frame construction.
|
|
|
|
|
|
Some feed pipelines generate `Frame` callbacks when frames are received. Perhaps these must also provide and output frame into which new data can be written? However, it might be that the output is to a different frame or frameset. Instead require a call to `makeFrame` inside a `Feed` class, or similar, to provide a new frame object that will be posted once complete. A call to `flush` will post it and prevent a second post, although not prevent further modification.
|
|
|
|
... | ... | @@ -20,4 +20,4 @@ Hence the following is true: |
|
|
* Frames can only be flushed once to transmit.
|
|
|
* Flushed status applies to received frames, these are effectively already flushed.
|
|
|
|
|
|
Question: How does a persistent state mechanism work? |
|
|
\ No newline at end of file |
|
|
**Question: How does a persistent state mechanism work?** Does a flushing frame change persistent state or do only received frames cause the state to update? It should be the case that the state accessed via a frame is the same as that in which the frame was generated prior to its flush. There are therefore two states: 1) the current state used when forming and flushing new frames, and 2) the state as received. |
|
|
\ No newline at end of file |