Open
Description
General:
- Technically there is no difference between settings/cache. The usage is different
- Make data persistent (i.e. save in file)
- Distribute via DBus if required
Scenarios:
- 1 swift app, object shared between threads
- swift pilot client + core same machine, object shared between processes, can be distributed via DBus or share the file
- swift pilot client + core 2 machines, object needs to be shared between processes
- 2 swift apps, like mapping tool and pilot client, 2 process, can be shared via file on same machine
Object types:
- Primitives: int, QString, ...
- value object
- value object container
- in theory we could just use
CVariant
to handle all
Metadata (query without reading the object, especially needed for large containers)
- timestamp, last changed
- for containers, size (count)
With T285 and T292 we have learnt:
- the model set / model caches for each simulator are the(!) most important use case
- they exist for each simulator
- it looks like a single in memory provider for these caches (as with T292 implemented as
CCentralMultiSimulatorModelCachesProvider
and..ModelSetProvider
) is the better approach, but it has to be thread safe! - The question is, if we somehow implement the model set/caches, how many real other use cases do we have apart from the model caches? In other words, are there any other use cases for caches than than the model caches?