Newer
Older
ForwardPlusRenderer / Docs / html / classfpr_1_1_swap_chain.html
<!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.9.5"/>
		<meta name="viewport" content="width=device-width, initial-scale=1"/>
		<title>Final Year Project: fpr::SwapChain Class Reference</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.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" />
		<link href="custom_dark_theme.css" rel="stylesheet" type="text/css"/>
<link href="custom.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">Final Year Project
							</div>
						</td>
					</tr>
				</tbody>
			</table>
		</div>
		<!-- end header part --><!-- Generated by Doxygen 1.9.5 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('classfpr_1_1_swap_chain.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- 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">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-types">Private Types</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#pri-static-attribs">Static Private Attributes</a> &#124;
<a href="classfpr_1_1_swap_chain-members.html">List of all members</a>  </div>
  <div class="headertitle"><div class="title">fpr::SwapChain Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Collaboration diagram for fpr::SwapChain:</div>
<div class="dyncontent">
<div class="center"><img src="classfpr_1_1_swap_chain__coll__graph.png" border="0" usemap="#afpr_1_1_swap_chain_coll__map" alt="Collaboration graph"/></div>
<map name="afpr_1_1_swap_chain_coll__map" id="afpr_1_1_swap_chain_coll__map">
<area shape="rect" title=" " alt="" coords="27,93,137,119"/>
<area shape="rect" href="structfpr_1_1_viewport_constants.html" title=" " alt="" coords="5,5,159,31"/>
</map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a98c461adf2d9464a45830b2a93828ced"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structfpr_1_1_viewport_constants.html">ViewportConstants</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a98c461adf2d9464a45830b2a93828ced">GetViewportConstants</a> () const FPR_NOEXCEPT</td></tr>
<tr class="separator:a98c461adf2d9464a45830b2a93828ced"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cce65bb1e91295a5e4f060b175af39a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a4cce65bb1e91295a5e4f060b175af39a">RecordCommands</a> ()</td></tr>
<tr class="separator:a4cce65bb1e91295a5e4f060b175af39a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82a30bbc6f0cfbc79229cc0a048d5931"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a82a30bbc6f0cfbc79229cc0a048d5931">CreateCommandBuffers</a> ()</td></tr>
<tr class="separator:a82a30bbc6f0cfbc79229cc0a048d5931"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c657602de46e676a4fbfd01fe2c22ed"><td class="memItemLeft" align="right" valign="top">vk::Result&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a9c657602de46e676a4fbfd01fe2c22ed">SubmitFrame</a> ()</td></tr>
<tr class="separator:a9c657602de46e676a4fbfd01fe2c22ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4e8f1ef580844590cd866868c8b44c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ab4e8f1ef580844590cd866868c8b44c8">RecordRenderCommands</a> ()</td></tr>
<tr class="separator:ab4e8f1ef580844590cd866868c8b44c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af818f44c7d58aea84bc4672e51736e5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#af818f44c7d58aea84bc4672e51736e5d">RecordDepthCommands</a> ()</td></tr>
<tr class="separator:af818f44c7d58aea84bc4672e51736e5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a330f9416d532d0e444485d92a445b76b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a330f9416d532d0e444485d92a445b76b">RecordComputeCommands</a> ()</td></tr>
<tr class="separator:a330f9416d532d0e444485d92a445b76b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3aff7dabd2879bdf53389f5836237b0d"><td class="memItemLeft" align="right" valign="top">const std::vector&lt; SwapChainImage &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a3aff7dabd2879bdf53389f5836237b0d">GetImages</a> ()</td></tr>
<tr class="separator:a3aff7dabd2879bdf53389f5836237b0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac85e0d981c482fc7995718707bdc42a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_depth_buffer.html">fpr::DepthBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ac85e0d981c482fc7995718707bdc42a9">GetDepthBuffer</a> () FPR_NOEXCEPT</td></tr>
<tr class="separator:ac85e0d981c482fc7995718707bdc42a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a35c0f36a52d5f8f5ecdc5297545c17"><td class="memItemLeft" align="right" valign="top">const vk::Extent2D &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a0a35c0f36a52d5f8f5ecdc5297545c17">GetCurrentExtent</a> ()</td></tr>
<tr class="separator:a0a35c0f36a52d5f8f5ecdc5297545c17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40c8e8eee39b1b181a5b1eff284b3526"><td class="memItemLeft" align="right" valign="top">const vk::Format &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a40c8e8eee39b1b181a5b1eff284b3526">GetSwapchainImageFormat</a> () const FPR_NOEXCEPT</td></tr>
<tr class="separator:a40c8e8eee39b1b181a5b1eff284b3526"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f96a820735fbfe9163c9fb4e4626160"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a9f96a820735fbfe9163c9fb4e4626160">GetCurrentFrameIdx</a> () const</td></tr>
<tr class="separator:a9f96a820735fbfe9163c9fb4e4626160"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b4b1c8f2b22c49ad8a5818fa83fdbff"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a0b4b1c8f2b22c49ad8a5818fa83fdbff">GetMaxFrameIdx</a> () const</td></tr>
<tr class="separator:a0b4b1c8f2b22c49ad8a5818fa83fdbff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89bbd0c00fb0e65db68b2831c429ef98"><td class="memItemLeft" align="right" valign="top">vk::UniqueSwapchainKHR &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a89bbd0c00fb0e65db68b2831c429ef98">GetUniqueHandle</a> ()</td></tr>
<tr class="separator:a89bbd0c00fb0e65db68b2831c429ef98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5413cff3ffec1e769a000f060284c4e3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a5413cff3ffec1e769a000f060284c4e3">SwapChain</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device, vk::SurfaceKHR &amp;surface, std::optional&lt; vk::UniqueSwapchainKHR &gt; old_swapchain=std::nullopt, glm::ivec2 tile_size=DEFAULT_TILE_SIZE)</td></tr>
<tr class="separator:a5413cff3ffec1e769a000f060284c4e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae689cafeb593f2cb4f39475c7c006bae"><td class="memItemLeft" align="right" valign="top"><a id="ae689cafeb593f2cb4f39475c7c006bae" name="ae689cafeb593f2cb4f39475c7c006bae"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>SwapChain</b> (const <a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> &amp;other)=delete</td></tr>
<tr class="separator:ae689cafeb593f2cb4f39475c7c006bae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3fd5160ce02d8bb0fcf68cfc973e4eb"><td class="memItemLeft" align="right" valign="top"><a id="af3fd5160ce02d8bb0fcf68cfc973e4eb" name="af3fd5160ce02d8bb0fcf68cfc973e4eb"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>SwapChain</b> (const <a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> &amp;&amp;other)=delete</td></tr>
<tr class="separator:af3fd5160ce02d8bb0fcf68cfc973e4eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9eaebe299239760ae78c6aba9f99f61"><td class="memItemLeft" align="right" valign="top"><a id="ae9eaebe299239760ae78c6aba9f99f61" name="ae9eaebe299239760ae78c6aba9f99f61"></a>
<a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a>&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> &amp;other)=delete</td></tr>
<tr class="separator:ae9eaebe299239760ae78c6aba9f99f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2977c18a8524cac08cf2df4dea81700a"><td class="memItemLeft" align="right" valign="top"><a id="a2977c18a8524cac08cf2df4dea81700a" name="a2977c18a8524cac08cf2df4dea81700a"></a>
<a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a>&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> &amp;&amp;other)=delete</td></tr>
<tr class="separator:a2977c18a8524cac08cf2df4dea81700a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-types" name="pri-types"></a>
Private Types</h2></td></tr>
<tr class="memitem:acbd2cd5ce0ec2c6b8edf4fed61c3b23f"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#acbd2cd5ce0ec2c6b8edf4fed61c3b23f">SwapchainDetails</a> = std::tuple&lt; vk::SurfaceCapabilitiesKHR, std::vector&lt; vk::SurfaceFormatKHR &gt;, std::vector&lt; vk::PresentModeKHR &gt; &gt;</td></tr>
<tr class="separator:acbd2cd5ce0ec2c6b8edf4fed61c3b23f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff0af9b4f018db914f6cbd5e6f0317be"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aff0af9b4f018db914f6cbd5e6f0317be">SwapChainImage</a> = std::pair&lt; vk::Image, vk::UniqueImageView &gt;</td></tr>
<tr class="separator:aff0af9b4f018db914f6cbd5e6f0317be"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-methods" name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a4f84f15f9a9547dbefd80e68226266d3"><td class="memItemLeft" align="right" valign="top">SwapchainDetails&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a4f84f15f9a9547dbefd80e68226266d3">QuerySwapChainDetails</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device, vk::SurfaceKHR &amp;surface)</td></tr>
<tr class="separator:a4f84f15f9a9547dbefd80e68226266d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28cd0e863b3c5aff4554564ac283cbb6"><td class="memItemLeft" align="right" valign="top">vk::SurfaceFormatKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a28cd0e863b3c5aff4554564ac283cbb6">QueryFirstSuitableFormat</a> (const std::vector&lt; vk::SurfaceFormatKHR &gt; &amp;formats)</td></tr>
<tr class="separator:a28cd0e863b3c5aff4554564ac283cbb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae50137d9d04a3e792949dd158a234799"><td class="memItemLeft" align="right" valign="top">vk::Extent2D&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ae50137d9d04a3e792949dd158a234799">QueryExtenfromCapabilities</a> (vk::SurfaceCapabilitiesKHR capabilities)</td></tr>
<tr class="separator:ae50137d9d04a3e792949dd158a234799"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb31dc62f532032432984f49c63965f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#adb31dc62f532032432984f49c63965f9">CreateSynchronisation</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:adb31dc62f532032432984f49c63965f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75de0ca38a36ede02ea184d1d23fc58a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a75de0ca38a36ede02ea184d1d23fc58a">SyncDepthPass</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:a75de0ca38a36ede02ea184d1d23fc58a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00238354f45f8ac2315bb964f8f77072"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a00238354f45f8ac2315bb964f8f77072">SyncColorPass</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:a00238354f45f8ac2315bb964f8f77072"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ac5b5b0d58d57ea712fac0404d4a4d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a2ac5b5b0d58d57ea712fac0404d4a4d6">SyncPresentation</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device, uint32_t inmage_index)</td></tr>
<tr class="separator:a2ac5b5b0d58d57ea712fac0404d4a4d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a2548e923db638b78f0454c72e66f61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a8a2548e923db638b78f0454c72e66f61">SyncCompute</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:a8a2548e923db638b78f0454c72e66f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0665dd4c4dfc02531de1cdaf14b5a21d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a0665dd4c4dfc02531de1cdaf14b5a21d">CreateSwapchain</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device, vk::SurfaceKHR &amp;surface)</td></tr>
<tr class="separator:a0665dd4c4dfc02531de1cdaf14b5a21d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a527ebfdf257ed0491635fe6eaeb36e33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a527ebfdf257ed0491635fe6eaeb36e33">CreateImageViews</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:a527ebfdf257ed0491635fe6eaeb36e33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92553914cd7162690be6138f044b755e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a92553914cd7162690be6138f044b755e">CreateFrameBuffers</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:a92553914cd7162690be6138f044b755e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0bb6ce1a7c1e5a2270fa0bf71be2e8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ad0bb6ce1a7c1e5a2270fa0bf71be2e8f">CreateRenderPasses</a> (<a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *device)</td></tr>
<tr class="separator:ad0bb6ce1a7c1e5a2270fa0bf71be2e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:aa4558001c5b2952d83ea3c7d3b68aeb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structfpr_1_1_viewport_constants.html">ViewportConstants</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aa4558001c5b2952d83ea3c7d3b68aeb1">m_viewport_push_constant</a></td></tr>
<tr class="separator:aa4558001c5b2952d83ea3c7d3b68aeb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2eb80bc3ff5f5ccf3b874c6261e01815"><td class="memItemLeft" align="right" valign="top">vk::PresentModeKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a2eb80bc3ff5f5ccf3b874c6261e01815">m_present_mode</a></td></tr>
<tr class="separator:a2eb80bc3ff5f5ccf3b874c6261e01815"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c87f97da73e673b35e6e0cca809c9c6"><td class="memItemLeft" align="right" valign="top">vk::UniqueSwapchainKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a5c87f97da73e673b35e6e0cca809c9c6">m_swapchain</a></td></tr>
<tr class="separator:a5c87f97da73e673b35e6e0cca809c9c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaca146ae949e1f8f694c5ff9787ff967"><td class="memItemLeft" align="right" valign="top">vk::SurfaceFormatKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aaca146ae949e1f8f694c5ff9787ff967">m_surface_format</a></td></tr>
<tr class="separator:aaca146ae949e1f8f694c5ff9787ff967"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd751f417c4e85c9a164f6af09deceb8"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classfpr_1_1_depth_buffer.html">fpr::DepthBuffer</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#abd751f417c4e85c9a164f6af09deceb8">m_depth_buffer</a></td></tr>
<tr class="separator:abd751f417c4e85c9a164f6af09deceb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a736079aefac0a76558454c24c5f73d05"><td class="memItemLeft" align="right" valign="top">std::vector&lt; SwapChainImage &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a736079aefac0a76558454c24c5f73d05">m_swapchain_images</a></td></tr>
<tr class="separator:a736079aefac0a76558454c24c5f73d05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73c882960458a7683aab87e5fe3d1f99"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueCommandBuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a73c882960458a7683aab87e5fe3d1f99">m_command_buffers</a></td></tr>
<tr class="separator:a73c882960458a7683aab87e5fe3d1f99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:accd3cfdac4d3555ae3be7000af0c1e6a"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueFramebuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#accd3cfdac4d3555ae3be7000af0c1e6a">m_swapchain_framebuffers</a></td></tr>
<tr class="separator:accd3cfdac4d3555ae3be7000af0c1e6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a738ab1bae7035f7932feebcd1f46059f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueSemaphore &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a738ab1bae7035f7932feebcd1f46059f">m_image_ready_semaphores</a></td></tr>
<tr class="separator:a738ab1bae7035f7932feebcd1f46059f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cd4e6511e293fdcc5d4d9db78b43b66"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueSemaphore &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a5cd4e6511e293fdcc5d4d9db78b43b66">m_render_done_semaphores</a></td></tr>
<tr class="separator:a5cd4e6511e293fdcc5d4d9db78b43b66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0b6fb11b57cc06c95766f1ca8f22714"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueSemaphore &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ad0b6fb11b57cc06c95766f1ca8f22714">m_compute_semaphores</a></td></tr>
<tr class="separator:ad0b6fb11b57cc06c95766f1ca8f22714"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a707e1d5cf56b812eb9ebc9e114a0a41b"><td class="memItemLeft" align="right" valign="top">vk::UniqueFence&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a707e1d5cf56b812eb9ebc9e114a0a41b">m_draw_fence</a></td></tr>
<tr class="separator:a707e1d5cf56b812eb9ebc9e114a0a41b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9ea2822412b8a013c2611802218282c"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueSemaphore &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ae9ea2822412b8a013c2611802218282c">m_earlyz_semaphores</a></td></tr>
<tr class="separator:ae9ea2822412b8a013c2611802218282c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a610125759f2eb7dfcd5fd64b2db7cdcf"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a610125759f2eb7dfcd5fd64b2db7cdcf">MAX_IMAGES_IN_FLIGHT</a> = 2</td></tr>
<tr class="separator:a610125759f2eb7dfcd5fd64b2db7cdcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7085f1ee4e056dae3f5d3fe91679160"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ae7085f1ee4e056dae3f5d3fe91679160">m_current_frame</a> = 0</td></tr>
<tr class="separator:ae7085f1ee4e056dae3f5d3fe91679160"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af92688c58a804e164b1b9dfb7e487979"><td class="memItemLeft" align="right" valign="top">vk::Extent2D&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#af92688c58a804e164b1b9dfb7e487979">m_extent</a></td></tr>
<tr class="separator:af92688c58a804e164b1b9dfb7e487979"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac783d26239a405e5a47f1572fcdefc80"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ac783d26239a405e5a47f1572fcdefc80">is_recreation</a> = false</td></tr>
<tr class="separator:ac783d26239a405e5a47f1572fcdefc80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2c83fa00fac2796fd4780592964d92e"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueFramebuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aa2c83fa00fac2796fd4780592964d92e">m_depth_framebuffers</a></td></tr>
<tr class="separator:aa2c83fa00fac2796fd4780592964d92e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10ad6ed3aa0c4a64a12c2cb55459d594"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueCommandBuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a10ad6ed3aa0c4a64a12c2cb55459d594">m_depth_command_buffers</a></td></tr>
<tr class="separator:a10ad6ed3aa0c4a64a12c2cb55459d594"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8adaee5505af70b59a49c64cd59f608"><td class="memItemLeft" align="right" valign="top">std::vector&lt; vk::UniqueCommandBuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aa8adaee5505af70b59a49c64cd59f608">m_compute_command_buffers</a></td></tr>
<tr class="separator:aa8adaee5505af70b59a49c64cd59f608"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34a37b8ac7b732e4634c6bb4303f7cb2"><td class="memItemLeft" align="right" valign="top">vk::UniqueSwapchainKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a34a37b8ac7b732e4634c6bb4303f7cb2">m_old_swapchain</a></td></tr>
<tr class="separator:a34a37b8ac7b732e4634c6bb4303f7cb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cfaa0b805756e29d198636daadb0b66"><td class="memItemLeft" align="right" valign="top">std::array&lt; vk::ClearValue, 2 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a8cfaa0b805756e29d198636daadb0b66">m_clear_values</a></td></tr>
<tr class="separator:a8cfaa0b805756e29d198636daadb0b66"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-attribs" name="pri-static-attribs"></a>
Static Private Attributes</h2></td></tr>
<tr class="memitem:ad5bdd2b7814be3525a356db3b34feab2"><td class="memItemLeft" align="right" valign="top">static constexpr glm::vec2&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ad5bdd2b7814be3525a356db3b34feab2">DEFAULT_TILE_SIZE</a></td></tr>
<tr class="separator:ad5bdd2b7814be3525a356db3b34feab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a027da5cfa6688e66599b7e98f520a2bb"><td class="memItemLeft" align="right" valign="top">static constexpr vk::ImageAspectFlagBits&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#a027da5cfa6688e66599b7e98f520a2bb">ASPECT_FLAGS</a> = vk::ImageAspectFlagBits::eColor</td></tr>
<tr class="separator:a027da5cfa6688e66599b7e98f520a2bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa36c4a97fef588f14cf92b27adac5878"><td class="memItemLeft" align="right" valign="top">static constexpr vk::ImageViewType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#aa36c4a97fef588f14cf92b27adac5878">IMAGE_VIEW_TYPE</a> = vk::ImageViewType::e2D</td></tr>
<tr class="separator:aa36c4a97fef588f14cf92b27adac5878"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac149bb7148c4a71fee4aa701e8d0e386"><td class="memItemLeft" align="right" valign="top">static constexpr vk::ColorSpaceKHR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#ac149bb7148c4a71fee4aa701e8d0e386">wanted_color_space</a> = vk::ColorSpaceKHR::eSrgbNonlinear</td></tr>
<tr class="separator:ac149bb7148c4a71fee4aa701e8d0e386"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb37059049df2d2289ab27b3085be9b8"><td class="memItemLeft" align="right" valign="top">static constexpr std::array&lt; vk::Format, 2 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_swap_chain.html#adb37059049df2d2289ab27b3085be9b8">wanted_formats</a> = { vk::Format::eR8G8B8A8Srgb, vk::Format::eB8G8R8A8Srgb }</td></tr>
<tr class="separator:adb37059049df2d2289ab27b3085be9b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00012">12</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="acbd2cd5ce0ec2c6b8edf4fed61c3b23f" name="acbd2cd5ce0ec2c6b8edf4fed61c3b23f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbd2cd5ce0ec2c6b8edf4fed61c3b23f">&#9670;&#160;</a></span>SwapchainDetails</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">using fpr::SwapChain::SwapchainDetails =  std::tuple&lt;vk::SurfaceCapabilitiesKHR, std::vector&lt;vk::SurfaceFormatKHR&gt;, std::vector&lt;vk::PresentModeKHR&gt; &gt;</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00020">20</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aff0af9b4f018db914f6cbd5e6f0317be" name="aff0af9b4f018db914f6cbd5e6f0317be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff0af9b4f018db914f6cbd5e6f0317be">&#9670;&#160;</a></span>SwapChainImage</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">using fpr::SwapChain::SwapChainImage =  std::pair&lt;vk::Image, vk::UniqueImageView&gt;</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00023">23</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a5413cff3ffec1e769a000f060284c4e3" name="a5413cff3ffec1e769a000f060284c4e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5413cff3ffec1e769a000f060284c4e3">&#9670;&#160;</a></span>SwapChain()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">fpr::SwapChain::SwapChain </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vk::SurfaceKHR &amp;&#160;</td>
          <td class="paramname"><em>surface</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::optional&lt; vk::UniqueSwapchainKHR &gt;&#160;</td>
          <td class="paramname"><em>old_swapchain</em> = <code>std::nullopt</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">glm::ivec2&#160;</td>
          <td class="paramname"><em>tile_size</em> = <code>DEFAULT_TILE_SIZE</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00014">14</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a82a30bbc6f0cfbc79229cc0a048d5931" name="a82a30bbc6f0cfbc79229cc0a048d5931"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82a30bbc6f0cfbc79229cc0a048d5931">&#9670;&#160;</a></span>CreateCommandBuffers()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateCommandBuffers </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00281">281</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a92553914cd7162690be6138f044b755e" name="a92553914cd7162690be6138f044b755e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a92553914cd7162690be6138f044b755e">&#9670;&#160;</a></span>CreateFrameBuffers()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateFrameBuffers </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00223">223</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a527ebfdf257ed0491635fe6eaeb36e33" name="a527ebfdf257ed0491635fe6eaeb36e33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a527ebfdf257ed0491635fe6eaeb36e33">&#9670;&#160;</a></span>CreateImageViews()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateImageViews </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00120">120</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="ad0bb6ce1a7c1e5a2270fa0bf71be2e8f" name="ad0bb6ce1a7c1e5a2270fa0bf71be2e8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0bb6ce1a7c1e5a2270fa0bf71be2e8f">&#9670;&#160;</a></span>CreateRenderPasses()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateRenderPasses </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00191">191</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a0665dd4c4dfc02531de1cdaf14b5a21d" name="a0665dd4c4dfc02531de1cdaf14b5a21d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0665dd4c4dfc02531de1cdaf14b5a21d">&#9670;&#160;</a></span>CreateSwapchain()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateSwapchain </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vk::SurfaceKHR &amp;&#160;</td>
          <td class="paramname"><em>surface</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00050">50</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="adb31dc62f532032432984f49c63965f9" name="adb31dc62f532032432984f49c63965f9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb31dc62f532032432984f49c63965f9">&#9670;&#160;</a></span>CreateSynchronisation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::CreateSynchronisation </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00320">320</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a0a35c0f36a52d5f8f5ecdc5297545c17" name="a0a35c0f36a52d5f8f5ecdc5297545c17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a35c0f36a52d5f8f5ecdc5297545c17">&#9670;&#160;</a></span>GetCurrentExtent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const vk::Extent2D &amp; fpr::SwapChain::GetCurrentExtent </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00740">740</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a9f96a820735fbfe9163c9fb4e4626160" name="a9f96a820735fbfe9163c9fb4e4626160"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f96a820735fbfe9163c9fb4e4626160">&#9670;&#160;</a></span>GetCurrentFrameIdx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t fpr::SwapChain::GetCurrentFrameIdx </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00730">730</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="ac85e0d981c482fc7995718707bdc42a9" name="ac85e0d981c482fc7995718707bdc42a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac85e0d981c482fc7995718707bdc42a9">&#9670;&#160;</a></span>GetDepthBuffer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classfpr_1_1_depth_buffer.html">fpr::DepthBuffer</a> * fpr::SwapChain::GetDepthBuffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00745">745</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a3aff7dabd2879bdf53389f5836237b0d" name="a3aff7dabd2879bdf53389f5836237b0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3aff7dabd2879bdf53389f5836237b0d">&#9670;&#160;</a></span>GetImages()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const std::vector&lt; SwapChain::SwapChainImage &gt; &amp; fpr::SwapChain::GetImages </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00415">415</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a0b4b1c8f2b22c49ad8a5818fa83fdbff" name="a0b4b1c8f2b22c49ad8a5818fa83fdbff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b4b1c8f2b22c49ad8a5818fa83fdbff">&#9670;&#160;</a></span>GetMaxFrameIdx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t fpr::SwapChain::GetMaxFrameIdx </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00735">735</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a40c8e8eee39b1b181a5b1eff284b3526" name="a40c8e8eee39b1b181a5b1eff284b3526"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40c8e8eee39b1b181a5b1eff284b3526">&#9670;&#160;</a></span>GetSwapchainImageFormat()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const vk::Format &amp; fpr::SwapChain::GetSwapchainImageFormat </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00725">725</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a89bbd0c00fb0e65db68b2831c429ef98" name="a89bbd0c00fb0e65db68b2831c429ef98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a89bbd0c00fb0e65db68b2831c429ef98">&#9670;&#160;</a></span>GetUniqueHandle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vk::UniqueSwapchainKHR &amp; fpr::SwapChain::GetUniqueHandle </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00045">45</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a98c461adf2d9464a45830b2a93828ced" name="a98c461adf2d9464a45830b2a93828ced"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a98c461adf2d9464a45830b2a93828ced">&#9670;&#160;</a></span>GetViewportConstants()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structfpr_1_1_viewport_constants.html">ViewportConstants</a> &amp; fpr::SwapChain::GetViewportConstants </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00206">206</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="ae50137d9d04a3e792949dd158a234799" name="ae50137d9d04a3e792949dd158a234799"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae50137d9d04a3e792949dd158a234799">&#9670;&#160;</a></span>QueryExtenfromCapabilities()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::Extent2D fpr::SwapChain::QueryExtenfromCapabilities </td>
          <td>(</td>
          <td class="paramtype">vk::SurfaceCapabilitiesKHR&#160;</td>
          <td class="paramname"><em>capabilities</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00699">699</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a28cd0e863b3c5aff4554564ac283cbb6" name="a28cd0e863b3c5aff4554564ac283cbb6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28cd0e863b3c5aff4554564ac283cbb6">&#9670;&#160;</a></span>QueryFirstSuitableFormat()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::SurfaceFormatKHR fpr::SwapChain::QueryFirstSuitableFormat </td>
          <td>(</td>
          <td class="paramtype">const std::vector&lt; vk::SurfaceFormatKHR &gt; &amp;&#160;</td>
          <td class="paramname"><em>formats</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00400">400</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a4f84f15f9a9547dbefd80e68226266d3" name="a4f84f15f9a9547dbefd80e68226266d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4f84f15f9a9547dbefd80e68226266d3">&#9670;&#160;</a></span>QuerySwapChainDetails()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">SwapChain::SwapchainDetails fpr::SwapChain::QuerySwapChainDetails </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">vk::SurfaceKHR &amp;&#160;</td>
          <td class="paramname"><em>surface</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00391">391</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a4cce65bb1e91295a5e4f060b175af39a" name="a4cce65bb1e91295a5e4f060b175af39a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4cce65bb1e91295a5e4f060b175af39a">&#9670;&#160;</a></span>RecordCommands()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::RecordCommands </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00272">272</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a330f9416d532d0e444485d92a445b76b" name="a330f9416d532d0e444485d92a445b76b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a330f9416d532d0e444485d92a445b76b">&#9670;&#160;</a></span>RecordComputeCommands()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::RecordComputeCommands </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00595">595</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="af818f44c7d58aea84bc4672e51736e5d" name="af818f44c7d58aea84bc4672e51736e5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af818f44c7d58aea84bc4672e51736e5d">&#9670;&#160;</a></span>RecordDepthCommands()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::RecordDepthCommands </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00516">516</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="ab4e8f1ef580844590cd866868c8b44c8" name="ab4e8f1ef580844590cd866868c8b44c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4e8f1ef580844590cd866868c8b44c8">&#9670;&#160;</a></span>RecordRenderCommands()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::RecordRenderCommands </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00421">421</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a9c657602de46e676a4fbfd01fe2c22ed" name="a9c657602de46e676a4fbfd01fe2c22ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c657602de46e676a4fbfd01fe2c22ed">&#9670;&#160;</a></span>SubmitFrame()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vk::Result fpr::SwapChain::SubmitFrame </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00358">358</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a00238354f45f8ac2315bb964f8f77072" name="a00238354f45f8ac2315bb964f8f77072"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00238354f45f8ac2315bb964f8f77072">&#9670;&#160;</a></span>SyncColorPass()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::SyncColorPass </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00171">171</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a8a2548e923db638b78f0454c72e66f61" name="a8a2548e923db638b78f0454c72e66f61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a2548e923db638b78f0454c72e66f61">&#9670;&#160;</a></span>SyncCompute()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::SyncCompute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00156">156</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a75de0ca38a36ede02ea184d1d23fc58a" name="a75de0ca38a36ede02ea184d1d23fc58a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75de0ca38a36ede02ea184d1d23fc58a">&#9670;&#160;</a></span>SyncDepthPass()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::SyncDepthPass </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00211">211</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<a id="a2ac5b5b0d58d57ea712fac0404d4a4d6" name="a2ac5b5b0d58d57ea712fac0404d4a4d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ac5b5b0d58d57ea712fac0404d4a4d6">&#9670;&#160;</a></span>SyncPresentation()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void fpr::SwapChain::SyncPresentation </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classfpr_1_1_device.html">fpr::Device</a> *&#160;</td>
          <td class="paramname"><em>device</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>inmage_index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8cpp_source.html#l00145">145</a> of file <a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a027da5cfa6688e66599b7e98f520a2bb" name="a027da5cfa6688e66599b7e98f520a2bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a027da5cfa6688e66599b7e98f520a2bb">&#9670;&#160;</a></span>ASPECT_FLAGS</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">constexpr vk::ImageAspectFlagBits fpr::SwapChain::ASPECT_FLAGS = vk::ImageAspectFlagBits::eColor</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00047">47</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ad5bdd2b7814be3525a356db3b34feab2" name="ad5bdd2b7814be3525a356db3b34feab2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5bdd2b7814be3525a356db3b34feab2">&#9670;&#160;</a></span>DEFAULT_TILE_SIZE</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">constexpr glm::vec2 fpr::SwapChain::DEFAULT_TILE_SIZE</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
<div class="line">    32,</div>
<div class="line">    32,</div>
<div class="line">  }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00015">15</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aa36c4a97fef588f14cf92b27adac5878" name="aa36c4a97fef588f14cf92b27adac5878"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa36c4a97fef588f14cf92b27adac5878">&#9670;&#160;</a></span>IMAGE_VIEW_TYPE</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">constexpr vk::ImageViewType fpr::SwapChain::IMAGE_VIEW_TYPE = vk::ImageViewType::e2D</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00048">48</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ac783d26239a405e5a47f1572fcdefc80" name="ac783d26239a405e5a47f1572fcdefc80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac783d26239a405e5a47f1572fcdefc80">&#9670;&#160;</a></span>is_recreation</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool fpr::SwapChain::is_recreation = false</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00040">40</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a8cfaa0b805756e29d198636daadb0b66" name="a8cfaa0b805756e29d198636daadb0b66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cfaa0b805756e29d198636daadb0b66">&#9670;&#160;</a></span>m_clear_values</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::array&lt;vk::ClearValue, 2&gt; fpr::SwapChain::m_clear_values</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= { vk::ClearValue().setColor(</div>
<div class="line">                                                       vk::ClearColorValue().setFloat32({ 1.0f, 0.4f, 0.8f, 1.0f })),</div>
<div class="line">                                                   vk::ClearValue().depthStencil = 1.0f }</div>
</div><!-- fragment -->
<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00053">53</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a73c882960458a7683aab87e5fe3d1f99" name="a73c882960458a7683aab87e5fe3d1f99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73c882960458a7683aab87e5fe3d1f99">&#9670;&#160;</a></span>m_command_buffers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueCommandBuffer&gt; fpr::SwapChain::m_command_buffers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00029">29</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aa8adaee5505af70b59a49c64cd59f608" name="aa8adaee5505af70b59a49c64cd59f608"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8adaee5505af70b59a49c64cd59f608">&#9670;&#160;</a></span>m_compute_command_buffers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueCommandBuffer&gt; fpr::SwapChain::m_compute_command_buffers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00044">44</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ad0b6fb11b57cc06c95766f1ca8f22714" name="ad0b6fb11b57cc06c95766f1ca8f22714"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0b6fb11b57cc06c95766f1ca8f22714">&#9670;&#160;</a></span>m_compute_semaphores</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueSemaphore&gt; fpr::SwapChain::m_compute_semaphores</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00033">33</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ae7085f1ee4e056dae3f5d3fe91679160" name="ae7085f1ee4e056dae3f5d3fe91679160"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7085f1ee4e056dae3f5d3fe91679160">&#9670;&#160;</a></span>m_current_frame</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t fpr::SwapChain::m_current_frame = 0</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00037">37</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="abd751f417c4e85c9a164f6af09deceb8" name="abd751f417c4e85c9a164f6af09deceb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd751f417c4e85c9a164f6af09deceb8">&#9670;&#160;</a></span>m_depth_buffer</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::unique_ptr&lt;<a class="el" href="classfpr_1_1_depth_buffer.html">fpr::DepthBuffer</a>&gt; fpr::SwapChain::m_depth_buffer</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00027">27</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a10ad6ed3aa0c4a64a12c2cb55459d594" name="a10ad6ed3aa0c4a64a12c2cb55459d594"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a10ad6ed3aa0c4a64a12c2cb55459d594">&#9670;&#160;</a></span>m_depth_command_buffers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueCommandBuffer&gt; fpr::SwapChain::m_depth_command_buffers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00042">42</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aa2c83fa00fac2796fd4780592964d92e" name="aa2c83fa00fac2796fd4780592964d92e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2c83fa00fac2796fd4780592964d92e">&#9670;&#160;</a></span>m_depth_framebuffers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueFramebuffer&gt; fpr::SwapChain::m_depth_framebuffers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00041">41</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a707e1d5cf56b812eb9ebc9e114a0a41b" name="a707e1d5cf56b812eb9ebc9e114a0a41b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a707e1d5cf56b812eb9ebc9e114a0a41b">&#9670;&#160;</a></span>m_draw_fence</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::UniqueFence fpr::SwapChain::m_draw_fence</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00034">34</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ae9ea2822412b8a013c2611802218282c" name="ae9ea2822412b8a013c2611802218282c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae9ea2822412b8a013c2611802218282c">&#9670;&#160;</a></span>m_earlyz_semaphores</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueSemaphore&gt; fpr::SwapChain::m_earlyz_semaphores</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00035">35</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="af92688c58a804e164b1b9dfb7e487979" name="af92688c58a804e164b1b9dfb7e487979"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af92688c58a804e164b1b9dfb7e487979">&#9670;&#160;</a></span>m_extent</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::Extent2D fpr::SwapChain::m_extent</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00038">38</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a738ab1bae7035f7932feebcd1f46059f" name="a738ab1bae7035f7932feebcd1f46059f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a738ab1bae7035f7932feebcd1f46059f">&#9670;&#160;</a></span>m_image_ready_semaphores</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueSemaphore&gt; fpr::SwapChain::m_image_ready_semaphores</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00031">31</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a34a37b8ac7b732e4634c6bb4303f7cb2" name="a34a37b8ac7b732e4634c6bb4303f7cb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34a37b8ac7b732e4634c6bb4303f7cb2">&#9670;&#160;</a></span>m_old_swapchain</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::UniqueSwapchainKHR fpr::SwapChain::m_old_swapchain</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00045">45</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a2eb80bc3ff5f5ccf3b874c6261e01815" name="a2eb80bc3ff5f5ccf3b874c6261e01815"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2eb80bc3ff5f5ccf3b874c6261e01815">&#9670;&#160;</a></span>m_present_mode</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::PresentModeKHR fpr::SwapChain::m_present_mode</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00024">24</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a5cd4e6511e293fdcc5d4d9db78b43b66" name="a5cd4e6511e293fdcc5d4d9db78b43b66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5cd4e6511e293fdcc5d4d9db78b43b66">&#9670;&#160;</a></span>m_render_done_semaphores</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueSemaphore&gt; fpr::SwapChain::m_render_done_semaphores</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00032">32</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aaca146ae949e1f8f694c5ff9787ff967" name="aaca146ae949e1f8f694c5ff9787ff967"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaca146ae949e1f8f694c5ff9787ff967">&#9670;&#160;</a></span>m_surface_format</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::SurfaceFormatKHR fpr::SwapChain::m_surface_format</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00026">26</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a5c87f97da73e673b35e6e0cca809c9c6" name="a5c87f97da73e673b35e6e0cca809c9c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c87f97da73e673b35e6e0cca809c9c6">&#9670;&#160;</a></span>m_swapchain</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">vk::UniqueSwapchainKHR fpr::SwapChain::m_swapchain</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00025">25</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="accd3cfdac4d3555ae3be7000af0c1e6a" name="accd3cfdac4d3555ae3be7000af0c1e6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#accd3cfdac4d3555ae3be7000af0c1e6a">&#9670;&#160;</a></span>m_swapchain_framebuffers</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;vk::UniqueFramebuffer&gt; fpr::SwapChain::m_swapchain_framebuffers</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00030">30</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a736079aefac0a76558454c24c5f73d05" name="a736079aefac0a76558454c24c5f73d05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a736079aefac0a76558454c24c5f73d05">&#9670;&#160;</a></span>m_swapchain_images</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;SwapChainImage&gt; fpr::SwapChain::m_swapchain_images</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00028">28</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="aa4558001c5b2952d83ea3c7d3b68aeb1" name="aa4558001c5b2952d83ea3c7d3b68aeb1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa4558001c5b2952d83ea3c7d3b68aeb1">&#9670;&#160;</a></span>m_viewport_push_constant</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structfpr_1_1_viewport_constants.html">ViewportConstants</a> fpr::SwapChain::m_viewport_push_constant</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00014">14</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="a610125759f2eb7dfcd5fd64b2db7cdcf" name="a610125759f2eb7dfcd5fd64b2db7cdcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a610125759f2eb7dfcd5fd64b2db7cdcf">&#9670;&#160;</a></span>MAX_IMAGES_IN_FLIGHT</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t fpr::SwapChain::MAX_IMAGES_IN_FLIGHT = 2</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00036">36</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="ac149bb7148c4a71fee4aa701e8d0e386" name="ac149bb7148c4a71fee4aa701e8d0e386"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac149bb7148c4a71fee4aa701e8d0e386">&#9670;&#160;</a></span>wanted_color_space</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">constexpr vk::ColorSpaceKHR fpr::SwapChain::wanted_color_space = vk::ColorSpaceKHR::eSrgbNonlinear</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00049">49</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<a id="adb37059049df2d2289ab27b3085be9b8" name="adb37059049df2d2289ab27b3085be9b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb37059049df2d2289ab27b3085be9b8">&#9670;&#160;</a></span>wanted_formats</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">constexpr std::array&lt;vk::Format, 2&gt; fpr::SwapChain::wanted_formats = { vk::Format::eR8G8B8A8Srgb, vk::Format::eB8G8R8A8Srgb }</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_swap_chain_8h_source.html#l00051">51</a> of file <a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>D:/Users/mbuzelis/source/repos/ForwardPlusRenderer/include/<a class="el" href="_swap_chain_8h_source.html">SwapChain.h</a></li>
<li>D:/Users/mbuzelis/source/repos/ForwardPlusRenderer/src/<a class="el" href="_swap_chain_8cpp_source.html">SwapChain.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
		<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
			<ul>
				<li class="navelem"><b>fpr</b></li><li class="navelem"><a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a></li>
				<li class="footer">
					Generated on Mon Oct 3 2022 13:44:05 for Final Year Project by <a href="http://www.doxygen.org/index.html">
					<img class="footer" src="doxygen.png" alt="doxygen"
                     onerror="this.onerror=null;this.src='doxygen.svg';"/></a> 1.9.5.
					Dark theme by <a href="http://majerle.eu" target="_new">Tilen Majerle</a>. All rights reserved.
				</li>
			</ul>
		</div>
		<script src="custom.js"></script>
	</body>
</html>