Giovanni Mascellani (@giomasce) commented about include/vkd3d.h:
- VKD3D_SHADER_CACHE_FLAGS_NO_SERIALIZE,
- VKD3D_FORCE_32_BIT_ENUM(VKD3D_SHADER_CACHE_FLAGS),
+};
+/**
- Huhu document me
- \since 1.10
- */
+struct vkd3d_shader_cache_desc +{
- /** Maximum amount of data the cache holds in memory. */
- uint32_t mem_size;
- /** Maximum amount of data written to disk. Set to 0 for a memory-only cache. */
- uint32_t disk_size;
Do these sizes count the sum of the sizes of stored keys and values, or the actual storage occupation, which in general I suppose might be larger (or even smaller, if compression is used)?
Also, I don't like too much the idea that setting a specific (degenerate, but in principle valid) value for a numeric parameter triggers a behavior change (like the multiple handles to the same object below). Could `in_memory` be a separate boolean parameter?