lumiera_documentation/src/vault
Ichthyostega 216ab525fd OutputSlot: integration with buffer management (+documentation)
Within the reworked design of the `OutputSlot` a proxy implementation
of the `BufferProvider` API is used (class `OutputBufferProxy`).

After analysis of the invocation patterns, I concluded that it seems adequate
to attach the special-purpose metadata generated by this integration
to the generic system of thread-local replicated `BufferMetadata` storage.

However, since thread-local instances are effectively static(global),
I was concerned that unit-testing might be impeded by accumulation of
stale metadata in the store linked to the main thread. Thus I created
a special configuration variant to retain the previously used setup
for the sake of unit testing (which applies especially to use of the
`DiagnosticOutputSlot`). Using a `SimpleBufferStateRegistry` for in
that case has the benefit that simply a local instance can be used
in the test and all metadata will be discarded afterwards.

Furthermore the factory syntax for obtaining an `OutputSlot` was improved,
drawing on the recent changes to `lib::ScopedCollection`.

Also I looked through some of the documentation and updated
the UML sequence diagram to reflect `OutputSlot`'s improved internal structure
2026-05-31 01:44:54 +02:00
..
cache BufferProvider: relocate TestFrame and dummy-hash computations 2026-03-07 23:02:35 +01:00
gear Upgrade: down with typename!! 2025-07-06 01:19:08 +02:00
io BufferProvider: relocate TestFrame and dummy-hash computations 2026-03-07 23:02:35 +01:00
mem OutputSlot: integration with buffer management (+documentation) 2026-05-31 01:44:54 +02:00
out OutputSlot: integration with buffer management (+documentation) 2026-05-31 01:44:54 +02:00
storage BufferProvider: relocate TestFrame and dummy-hash computations 2026-03-07 23:02:35 +01:00
toolkit BufferProvider: relocate TestFrame and dummy-hash computations 2026-03-07 23:02:35 +01:00
common.hpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
DIR_INFO Global-Layer-Renaming: rearrange directories 2018-11-15 23:28:03 +01:00
enginefacade.cpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00
enginefacade.hpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00
media-access-facade.cpp clean-up: trifles 2025-06-07 23:59:57 +02:00
media-access-facade.hpp Upgrade: Literal can be constexpr 2025-07-02 22:18:39 +02:00
netnodefacade.cpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00
netnodefacade.hpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00
real-clock.cpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
real-clock.hpp Copyright: clarify and simplify the file headers 2024-11-17 23:42:55 +01:00
scriptrunnerfacade.cpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00
scriptrunnerfacade.hpp Application: Adjustments to the Layer structure 2026-03-03 22:16:09 +01:00