More refactoring - added CurrentBudgetData::AddCommittedAllocation, RemoveCommittedAllocation
diff --git a/src/D3D12MemAlloc.cpp b/src/D3D12MemAlloc.cpp
index 4e8effe..2a0ccc4 100644
--- a/src/D3D12MemAlloc.cpp
+++ b/src/D3D12MemAlloc.cpp
@@ -2768,12 +2768,21 @@
         m_AllocationBytes[heapTypeIndex] += allocationSize;

         ++m_OperationsSinceBudgetFetch;

     }

-

     void RemoveAllocation(UINT heapTypeIndex, UINT64 allocationSize)

     {

         m_AllocationBytes[heapTypeIndex] -= allocationSize;

         ++m_OperationsSinceBudgetFetch;

     }

+    void AddCommittedAllocation(UINT heapTypeIndex, UINT64 allocationSize)

+    {

+        AddAllocation(heapTypeIndex, allocationSize);

+        m_BlockBytes[heapTypeIndex] += allocationSize;

+    }

+    void RemoveCommittedAllocation(UINT heapTypeIndex, UINT64 allocationSize)

+    {

+        m_BlockBytes[heapTypeIndex] -= allocationSize;

+        RemoveAllocation(heapTypeIndex, allocationSize);

+    }

 };

 

 class PoolPimpl

@@ -4996,8 +5005,7 @@
             committedAllocParams.m_List->Register(alloc);

 

             const UINT heapTypeIndex = HeapTypeToIndex(committedAllocParams.m_HeapProperties.Type);

-            m_Budget.AddAllocation(heapTypeIndex, resourceSize);

-            m_Budget.m_BlockBytes[heapTypeIndex] += resourceSize;

+            m_Budget.AddCommittedAllocation(heapTypeIndex, resourceSize);

         }

         else

         {

@@ -5051,8 +5059,7 @@
             committedAllocParams.m_List->Register(alloc);

 

             const UINT heapTypeIndex = HeapTypeToIndex(committedAllocParams.m_HeapProperties.Type);

-            m_Budget.AddAllocation(heapTypeIndex, resourceSize);

-            m_Budget.m_BlockBytes[heapTypeIndex] += resourceSize;

+            m_Budget.AddCommittedAllocation(heapTypeIndex, resourceSize);

         }

         else

         {

@@ -5107,8 +5114,7 @@
             committedAllocParams.m_List->Register(alloc);

 

             const UINT heapTypeIndex = HeapTypeToIndex(committedAllocParams.m_HeapProperties.Type);

-            m_Budget.AddAllocation(heapTypeIndex, resourceSize);

-            m_Budget.m_BlockBytes[heapTypeIndex] += resourceSize;

+            m_Budget.AddCommittedAllocation(heapTypeIndex, resourceSize);

         }

         else

         {

@@ -5150,8 +5156,7 @@
         committedAllocParams.m_List->Register(*ppAllocation);

 

         const UINT heapTypeIndex = HeapTypeToIndex(committedAllocParams.m_HeapProperties.Type);

-        m_Budget.AddAllocation(heapTypeIndex, allocInfo.SizeInBytes);

-        m_Budget.m_BlockBytes[heapTypeIndex] += allocInfo.SizeInBytes;

+        m_Budget.AddCommittedAllocation(heapTypeIndex, allocInfo.SizeInBytes);

     }

     return hr;

 }

@@ -5194,8 +5199,7 @@
         committedAllocParams.m_List->Register(*ppAllocation);

 

         const UINT heapTypeIndex = HeapTypeToIndex(committedAllocParams.m_HeapProperties.Type);

-        m_Budget.AddAllocation(heapTypeIndex, allocInfo.SizeInBytes);

-        m_Budget.m_BlockBytes[heapTypeIndex] += allocInfo.SizeInBytes;

+        m_Budget.AddCommittedAllocation(heapTypeIndex, allocInfo.SizeInBytes);

     }

     return hr;

 }

@@ -5385,8 +5389,7 @@
 

     const UINT64 allocationSize = allocation->GetSize();

     const UINT heapTypeIndex = HeapTypeToIndex(allocList->GetHeapType());

-    m_Budget.RemoveAllocation(heapTypeIndex, allocationSize);

-    m_Budget.m_BlockBytes[heapTypeIndex] -= allocationSize;

+    m_Budget.RemoveCommittedAllocation(heapTypeIndex, allocationSize);

 }

 

 void AllocatorPimpl::FreePlacedMemory(Allocation* allocation)

@@ -5411,8 +5414,7 @@
 

     const UINT heapTypeIndex = HeapTypeToIndex(allocList->GetHeapType());

     const UINT64 allocationSize = allocation->GetSize();

-    m_Budget.m_BlockBytes[heapTypeIndex] -= allocationSize;

-    m_Budget.RemoveAllocation(heapTypeIndex, allocationSize);

+    m_Budget.RemoveCommittedAllocation(heapTypeIndex, allocationSize);

 }

 

 void AllocatorPimpl::SetCurrentFrameIndex(UINT frameIndex)