|
KiCad PCB EDA Suite
|
Retained scene arena holding one slot per placed group, patched in place so changing one item uploads only that item. More...
Public Attributes | |
| std::vector< T > | elements |
| CPU mirror of the GPU buffer, dead slots included. | |
| RHI_BufferHandle | buffer |
| size_t | capacity = 0 |
| elements the GPU buffer can hold | |
| uint32_t | dead = 0 |
| elements sitting in freed slots | |
| std::unordered_map< uint32_t, std::vector< uint32_t > > | freeSlots |
| Freed slot starts by slot length, reused last-in first-out so a group re-cached with the same size gets its own slot back. | |
| std::vector< PATCH_SPAN > | dirty |
| spans to upload at the next Flush | |
| bool | uploadAll = false |
Retained scene arena holding one slot per placed group, patched in place so changing one item uploads only that item.
Freed slots hold elements that rasterize nothing until a group of the same size reuses them.
Definition at line 667 of file gal_modern.h.
| RHI_BufferHandle KIGFX::GAL_MODERN::SCENE_ARENA< T >::buffer |
Definition at line 670 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::DestroyBuffers(), KIGFX::GAL_MODERN::ReleaseBuffers(), and KIGFX::GAL_MODERN::uploadSceneArena().
| size_t KIGFX::GAL_MODERN::SCENE_ARENA< T >::capacity = 0 |
elements the GPU buffer can hold
Definition at line 671 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::ReleaseBuffers(), and KIGFX::GAL_MODERN::uploadSceneArena().
| uint32_t KIGFX::GAL_MODERN::SCENE_ARENA< T >::dead = 0 |
elements sitting in freed slots
Definition at line 672 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::allocSceneSlot(), KIGFX::GAL_MODERN::compactSceneArena(), and KIGFX::GAL_MODERN::freeSceneSlot().
| std::vector<PATCH_SPAN> KIGFX::GAL_MODERN::SCENE_ARENA< T >::dirty |
spans to upload at the next Flush
Definition at line 680 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::compactSceneArena(), and KIGFX::GAL_MODERN::uploadSceneArena().
| std::vector<T> KIGFX::GAL_MODERN::SCENE_ARENA< T >::elements |
CPU mirror of the GPU buffer, dead slots included.
Definition at line 669 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::allocSceneSlot(), KIGFX::GAL_MODERN::compactSceneArena(), KIGFX::GAL_MODERN::freeSceneSlot(), KIGFX::GAL_MODERN::retainedTieOrderChanged(), KIGFX::GAL_MODERN::updateSceneCullRuns(), KIGFX::GAL_MODERN::uploadSceneArena(), and KIGFX::GAL_MODERN::writeGroupToScene().
| std::unordered_map<uint32_t, std::vector<uint32_t> > KIGFX::GAL_MODERN::SCENE_ARENA< T >::freeSlots |
Freed slot starts by slot length, reused last-in first-out so a group re-cached with the same size gets its own slot back.
Definition at line 678 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::allocSceneSlot(), KIGFX::GAL_MODERN::compactSceneArena(), KIGFX::GAL_MODERN::freeSceneSlot(), and KIGFX::GAL_MODERN::retainedTieOrderChanged().
| bool KIGFX::GAL_MODERN::SCENE_ARENA< T >::uploadAll = false |
Definition at line 681 of file gal_modern.h.
Referenced by KIGFX::GAL_MODERN::compactSceneArena(), KIGFX::GAL_MODERN::SetSceneLayerState(), KIGFX::GAL_MODERN::updateSceneCullRuns(), and KIGFX::GAL_MODERN::uploadSceneArena().