Producer
A producer block provides the following interactions with the application producer component:
- During setup phase:
- Synchronization:
- Accepts producer synchronization requirements.
- Reports consumer synchronization requirements.
- Accepts producer allocated sync objects.
- Reports consumer allocated sync objects.
- Buffers
- Accepts list of element attributes producer can generate.
- Reports consolidated packet attribute list.
- Reports all allocated packets.
- Synchronization:
- During streaming phase:
- Signals availability of packets for reuse.
- Retrieves next packet to reuse with fence to wait for before writing.
- Accepts filled packet with fence to wait for before consumer should read.
- In non-safety builds, during streaming phase:
- Accepts limited changes to requested element attributes (e.g., to modify the image size).
- Reports updated packet attributes.
- Reports removal of buffers allocated for old attributes and addition of new ones.
Note:
Reallocation of buffers in non-safety builds are not supported in this release.