Update Frames authored by Nicolas Pope's avatar Nicolas Pope
...@@ -12,6 +12,7 @@ Data is synchronised and organised into discrete frames that are represented by ...@@ -12,6 +12,7 @@ Data is synchronised and organised into discrete frames that are represented by
#### 1.1 General Properties #### 1.1 General Properties
* **1.1** Contains up to 2^32 number of data channels. * **1.1** Contains up to 2^32 number of data channels.
* **1.8** A `Frame` must include an ID and timestamp in milliseconds. * **1.8** A `Frame` must include an ID and timestamp in milliseconds.
* **1.9** A `Frame` must provide a lock to be used manually, except for `flushing` where is is locked automatically.
#### 1.2 Channel Data Types #### 1.2 Channel Data Types
* **1.2.1** A data channel can in principle be any type. * **1.2.1** A data channel can in principle be any type.
...@@ -99,6 +100,7 @@ Data is synchronised and organised into discrete frames that are represented by ...@@ -99,6 +100,7 @@ Data is synchronised and organised into discrete frames that are represented by
* **4.1.3** A sender may filter changes and not transmit to all parties. * **4.1.3** A sender may filter changes and not transmit to all parties.
* **4.1.4** Filtering can occur at receivers request or subject to authorisation. * **4.1.4** Filtering can occur at receivers request or subject to authorisation.
* **4.1.5** `flushing` a `Frame` owned locally directly updates the next new `Frame` instance being buffered to the next creation request. * **4.1.5** `flushing` a `Frame` owned locally directly updates the next new `Frame` instance being buffered to the next creation request.
* **4.1.6** Frames are flushed on destruction if not already flushed.
#### 4.2 Owner Protocol #### 4.2 Owner Protocol
* **4.2.1** Changes marked as `local` or `foreign` are transmitted. * **4.2.1** Changes marked as `local` or `foreign` are transmitted.
... ...
......