template<typename TStructureTypeTrait>
VkStructureMap class
A heterogenous container of unique Vulkan structure types. The structures get zero initialized with sType filled out appropriately and pNext used to chain them in the order they were added.
Public functions
- auto back() -> VkStructureStub&
- Returns the stub of the last added structure in the chain.
- auto back() const -> const VkStructureStub&
- Returns the stub of the last added structure in the chain.
- void clear()
- Removes all elements from the map.
-
template<typename T>auto contains() const -> bool
- Returns
trueif the map contains the given type. - auto empty() const -> bool
- Returns
trueif the map is empty. - auto front() -> VkStructureStub&
- Returns the stub of the first added structure in the chain.
- auto front() const -> const VkStructureStub&
- Returns the stub of the first added structure in the chain.
-
template<typename T>auto get() -> auto&
- Returns an instance of the given type from the map. If it doesn't yet exist in the map, it is created with correct
sTypeandpNextvalues. The rest of the structure gets zero initialized.