| 11411 | } |
| 11412 | |
| 11413 | void* VmaAllocation_T::GetMappedData() const |
| 11414 | { |
| 11415 | switch (m_Type) |
| 11416 | { |
| 11417 | case ALLOCATION_TYPE_BLOCK: |
| 11418 | if (m_MapCount != 0 || IsPersistentMap()) |
| 11419 | { |
| 11420 | void* pBlockData = m_BlockAllocation.m_Block->GetMappedData(); |
| 11421 | VMA_ASSERT(pBlockData != VMA_NULL); |
| 11422 | return (char*)pBlockData + GetOffset(); |
| 11423 | } |
| 11424 | else |
| 11425 | { |
| 11426 | return VMA_NULL; |
| 11427 | } |
| 11428 | break; |
| 11429 | case ALLOCATION_TYPE_DEDICATED: |
| 11430 | VMA_ASSERT((m_DedicatedAllocation.m_ExtraData != VMA_NULL && m_DedicatedAllocation.m_ExtraData->m_pMappedData != VMA_NULL) == |
| 11431 | (m_MapCount != 0 || IsPersistentMap())); |
| 11432 | return m_DedicatedAllocation.m_ExtraData != VMA_NULL ? m_DedicatedAllocation.m_ExtraData->m_pMappedData : VMA_NULL; |
| 11433 | default: |
| 11434 | VMA_ASSERT(0); |
| 11435 | return VMA_NULL; |
| 11436 | } |
| 11437 | } |
| 11438 | |
| 11439 | void VmaAllocation_T::BlockAllocMap() |
| 11440 | { |