<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Vulkan Memory Allocator: Class Members</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Vulkan Memory Allocator
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="contents">
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div><ul>
<li>AllocationCount
: <a class="el" href="struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0">VmaStatInfo</a>
</li>
<li>device
: <a class="el" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">VmaAllocatorCreateInfo</a>
</li>
<li>memoryHeap
: <a class="el" href="struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0">VmaStats</a>
</li>
<li>memoryType
: <a class="el" href="struct_vma_stats.html#a13e3caf754be79352c42408756309331">VmaStats</a>
</li>
<li>neverAllocate
: <a class="el" href="struct_vma_memory_requirements.html#a2259df9db140839199fa43b651c58447">VmaMemoryRequirements</a>
</li>
<li>ownMemory
: <a class="el" href="struct_vma_memory_requirements.html#a401cdf684f8a13c8ff3bb469a1759153">VmaMemoryRequirements</a>
</li>
<li>pAllocationCallbacks
: <a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">VmaAllocatorCreateInfo</a>
</li>
<li>physicalDevice
: <a class="el" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">VmaAllocatorCreateInfo</a>
</li>
<li>preferredFlags
: <a class="el" href="struct_vma_memory_requirements.html#a6e105f836c2288034c711815b18226dc">VmaMemoryRequirements</a>
</li>
<li>preferredLargeHeapBlockSize
: <a class="el" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">VmaAllocatorCreateInfo</a>
</li>
<li>preferredSmallHeapBlockSize
: <a class="el" href="struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a">VmaAllocatorCreateInfo</a>
</li>
<li>requiredFlags
: <a class="el" href="struct_vma_memory_requirements.html#a8876c1b0f112e13a277f16967064cfe0">VmaMemoryRequirements</a>
</li>
<li>SuballocationCount
: <a class="el" href="struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead">VmaStatInfo</a>
</li>
<li>SuballocationSizeAvg
: <a class="el" href="struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b">VmaStatInfo</a>
</li>
<li>SuballocationSizeMax
: <a class="el" href="struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271">VmaStatInfo</a>
</li>
<li>SuballocationSizeMin
: <a class="el" href="struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b">VmaStatInfo</a>
</li>
<li>total
: <a class="el" href="struct_vma_stats.html#a2e8f5b3353f2fefef3c27f29e245a1f9">VmaStats</a>
</li>
<li>UnusedBytes
: <a class="el" href="struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d">VmaStatInfo</a>
</li>
<li>UnusedRangeCount
: <a class="el" href="struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6">VmaStatInfo</a>
</li>
<li>UnusedRangeSizeAvg
: <a class="el" href="struct_vma_stat_info.html#a88ad9bdc2b3a98964a4d0c338c0c9060">VmaStatInfo</a>
</li>
<li>UnusedRangeSizeMax
: <a class="el" href="struct_vma_stat_info.html#a10c52c0841f01ca704e8ddb1ea6a635d">VmaStatInfo</a>
</li>
<li>UnusedRangeSizeMin
: <a class="el" href="struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6">VmaStatInfo</a>
</li>
<li>usage
: <a class="el" href="struct_vma_memory_requirements.html#ab588497177a57847ed04e0a1aef54bbe">VmaMemoryRequirements</a>
</li>
<li>UsedBytes
: <a class="el" href="struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04">VmaStatInfo</a>
</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
