<!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::Context 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&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&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&dn=expat.txt MIT */ $(document).ready(function(){initNavTree('classfpr_1_1_context.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="#nested-classes">Classes</a> | <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-methods">Static Public Member Functions</a> | <a href="#pub-attribs">Public Attributes</a> | <a href="#pub-static-attribs">Static Public Attributes</a> | <a href="#pri-methods">Private Member Functions</a> | <a href="#pri-static-methods">Static Private Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> | <a href="#pri-static-attribs">Static Private Attributes</a> | <a href="classfpr_1_1_context-members.html">List of all members</a> </div> <div class="headertitle"><div class="title">fpr::Context Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div></div> </div><!--header--> <div class="contents"> <div class="dynheader"> Collaboration diagram for fpr::Context:</div> <div class="dyncontent"> <div class="center"><img src="classfpr_1_1_context__coll__graph.png" border="0" usemap="#afpr_1_1_context_coll__map" alt="Collaboration graph"/></div> <map name="afpr_1_1_context_coll__map" id="afpr_1_1_context_coll__map"> <area shape="rect" title=" " alt="" coords="381,147,471,173"/> <area shape="rect" href="classfpr_1_1_vulkan_window.html" title=" " alt="" coords="29,26,160,51"/> <area shape="rect" href="structfpr_1_1_version.html" title=" " alt="" coords="51,98,139,123"/> <area shape="rect" href="classfpr_1_1_input_handler.html" title=" " alt="" coords="37,147,153,173"/> <area shape="rect" href="structfpr_1_1_context_1_1_per_model_data.html" title=" " alt="" coords="5,197,184,222"/> <area shape="rect" href="classfpr_1_1_scene.html" title=" " alt="" coords="54,246,135,271"/> </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="nested-classes" name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpr_1_1_context_1_1_per_model_data.html">PerModelData</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:a7fee95c82ef33714d34137be6e71fa8f"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a7fee95c82ef33714d34137be6e71fa8f">PipelineCreationData</a> = std::vector< std::tuple< EPipelineType, std::string_view, <a class="el" href="structfpr_1_1_pipeline_options.html">fpr::PipelineOptions</a>, tl::optional< std::string > > ></td></tr> <tr class="separator:a7fee95c82ef33714d34137be6e71fa8f"><td class="memSeparator" colspan="2"> </td></tr> </table><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:af650b322b34a1aa0a55394ff0cc74773"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#af650b322b34a1aa0a55394ff0cc74773">CreateDescriptorSets</a> ()</td></tr> <tr class="separator:af650b322b34a1aa0a55394ff0cc74773"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae4844c9d10b0c928a0ade4976f839439"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ae4844c9d10b0c928a0ade4976f839439">GetWindow</a> ()</td></tr> <tr class="separator:ae4844c9d10b0c928a0ade4976f839439"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af145d8e714c8bfca26085b45c844b61b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#af145d8e714c8bfca26085b45c844b61b">GetSwapChain</a> ()</td></tr> <tr class="separator:af145d8e714c8bfca26085b45c844b61b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4f5df31da51b8e0d98344a8fbe724107"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a4f5df31da51b8e0d98344a8fbe724107">CreateGraphicsCmdPool</a> ()</td></tr> <tr class="separator:a4f5df31da51b8e0d98344a8fbe724107"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4eec7c82288d80014ac8d636ebf7f63c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a4eec7c82288d80014ac8d636ebf7f63c">CreateSwapChain</a> ()</td></tr> <tr class="separator:a4eec7c82288d80014ac8d636ebf7f63c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa0e2ab8a1e9d8e5570eda950826449a6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aa0e2ab8a1e9d8e5570eda950826449a6">CreateComputeCmdPool</a> ()</td></tr> <tr class="separator:aa0e2ab8a1e9d8e5570eda950826449a6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a66019c13c0f8ad29e93c4e291b9a638d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a66019c13c0f8ad29e93c4e291b9a638d">CreateDescriptorPools</a> ()</td></tr> <tr class="separator:a66019c13c0f8ad29e93c4e291b9a638d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8131de2a6a3ef09f05067bc881732b6b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a8131de2a6a3ef09f05067bc881732b6b">CreateTextureSampler</a> ()</td></tr> <tr class="separator:a8131de2a6a3ef09f05067bc881732b6b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab43dc2ca3e8e6e9547b26b33ad79e3f1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ab43dc2ca3e8e6e9547b26b33ad79e3f1">RecreateSwapchain</a> ()</td></tr> <tr class="separator:ab43dc2ca3e8e6e9547b26b33ad79e3f1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3747e41646fee841c43701ca07fcc367"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a3747e41646fee841c43701ca07fcc367">CreatePipelines</a> (std::function< PipelineCreationData(void)> fn=DEFAULT_PIPELINE_CREATION_CALLBACK)</td></tr> <tr class="separator:a3747e41646fee841c43701ca07fcc367"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a167cb5dc3b6081b7a41a8df7b5619bf3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a167cb5dc3b6081b7a41a8df7b5619bf3">CreateSceneBuffers</a> ()</td></tr> <tr class="separator:a167cb5dc3b6081b7a41a8df7b5619bf3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01"><td class="memItemLeft" align="right" valign="top">vk::CommandPool & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01">GetGraphicsCmdPool</a> () FPR_NOEXCEPT</td></tr> <tr class="separator:a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:adce0072641f35159806b6a77f6d84acb"><td class="memItemLeft" align="right" valign="top">vk::CommandPool & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#adce0072641f35159806b6a77f6d84acb">GetComputeCmdPool</a> () FPR_NOEXCEPT</td></tr> <tr class="separator:adce0072641f35159806b6a77f6d84acb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a93e7b4e710420ab5f8dcdfa0da9552d7"><td class="memItemLeft" align="right" valign="top">vk::DescriptorPool & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a93e7b4e710420ab5f8dcdfa0da9552d7">GetDescriptorPool</a> ()</td></tr> <tr class="separator:a93e7b4e710420ab5f8dcdfa0da9552d7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa90f81b72efefa256158f57a3078dda0"><td class="memItemLeft" align="right" valign="top">vk::SurfaceKHR & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aa90f81b72efefa256158f57a3078dda0">GetSurface</a> () FPR_NOEXCEPT</td></tr> <tr class="separator:aa90f81b72efefa256158f57a3078dda0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a740d84ae2c7701d7549f5dcc9d4271df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_device.html">Device</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a740d84ae2c7701d7549f5dcc9d4271df">GetDevice</a> () const FPR_NOEXCEPT</td></tr> <tr class="separator:a740d84ae2c7701d7549f5dcc9d4271df"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa7de31d273295c20f2d46c388413f98f"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aa7de31d273295c20f2d46c388413f98f">GetRequiredDynamicAlignment</a> () const FPR_NOEXCEPT</td></tr> <tr class="separator:aa7de31d273295c20f2d46c388413f98f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab03ce93e4866a07ca51293979e544dfb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ab03ce93e4866a07ca51293979e544dfb">SetDynamicAlignment</a> (uint32_t) FPR_NOEXCEPT</td></tr> <tr class="separator:ab03ce93e4866a07ca51293979e544dfb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac9dc021fd22a0bf2ee3473e2582fcacf"><td class="memItemLeft" align="right" valign="top"><a id="ac9dc021fd22a0bf2ee3473e2582fcacf" name="ac9dc021fd22a0bf2ee3473e2582fcacf"></a>  </td><td class="memItemRight" valign="bottom"><b>Context</b> (const <a class="el" href="classfpr_1_1_context.html">Context</a> &other)=delete</td></tr> <tr class="separator:ac9dc021fd22a0bf2ee3473e2582fcacf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4f86efdb5748722796046e1beed850bd"><td class="memItemLeft" align="right" valign="top"><a id="a4f86efdb5748722796046e1beed850bd" name="a4f86efdb5748722796046e1beed850bd"></a> <a class="el" href="classfpr_1_1_context.html">Context</a> & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classfpr_1_1_context.html">Context</a> &other)=delete</td></tr> <tr class="separator:a4f86efdb5748722796046e1beed850bd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a035d33769ca8d29c4fc8c827894b7318"><td class="memItemLeft" align="right" valign="top">vk::Instance & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a035d33769ca8d29c4fc8c827894b7318">GetInstance</a> ()</td></tr> <tr class="separator:a035d33769ca8d29c4fc8c827894b7318"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad3d39b31c6af46e25f6ecb8b2e9db48f"><td class="memItemLeft" align="right" valign="top">vk::CommandBuffer & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ad3d39b31c6af46e25f6ecb8b2e9db48f">BeginSingleTimeCommands</a> ()</td></tr> <tr class="separator:ad3d39b31c6af46e25f6ecb8b2e9db48f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a23038f8f27ddcb4178a96a42a431aa51"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a23038f8f27ddcb4178a96a42a431aa51">EndSingleTimeCommands</a> ()</td></tr> <tr class="separator:a23038f8f27ddcb4178a96a42a431aa51"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a919643099656e601f351ba77839e6818"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_input_handler.html">InputHandler</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a919643099656e601f351ba77839e6818">GetCameraInputHandler</a> ()</td></tr> <tr class="separator:a919643099656e601f351ba77839e6818"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a> Static Public Member Functions</h2></td></tr> <tr class="memitem:aa832d82f0f3e820840534f6fa7375b66"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classfpr_1_1_context.html">Context</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aa832d82f0f3e820840534f6fa7375b66">Get</a> ()</td></tr> <tr class="separator:aa832d82f0f3e820840534f6fa7375b66"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab2e3c8fa73f218cb1d5418f59b689fa3"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ab2e3c8fa73f218cb1d5418f59b689fa3">Init</a> (<a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> *Window, const std::string &app_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> app_version, const std::string &engine_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> engine_version, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> vulkan_version)</td></tr> <tr class="separator:ab2e3c8fa73f218cb1d5418f59b689fa3"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a> Public Attributes</h2></td></tr> <tr class="memitem:a6152add68a36be2887736babcf7de309"><td class="memItemLeft" align="right" valign="top"><a id="a6152add68a36be2887736babcf7de309" name="a6152add68a36be2887736babcf7de309"></a> struct <a class="el" href="structfpr_1_1_context_1_1_per_model_data.html">fpr::Context::PerModelData</a> </td><td class="memItemRight" valign="bottom"><b>PER_MODEL_UBO</b></td></tr> <tr class="separator:a6152add68a36be2887736babcf7de309"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0a714dbe35e252e5f0fb08d93353f521"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_scene.html">fpr::Scene</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a0a714dbe35e252e5f0fb08d93353f521">m_loaded_scene</a></td></tr> <tr class="separator:a0a714dbe35e252e5f0fb08d93353f521"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0e9c719be40025ae3908cf5b150fbbaa"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classfpr_1_1_render_graph.html">RenderGraph</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a0e9c719be40025ae3908cf5b150fbbaa">m_render_graph</a></td></tr> <tr class="separator:a0e9c719be40025ae3908cf5b150fbbaa"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-attribs" name="pub-static-attribs"></a> Static Public Attributes</h2></td></tr> <tr class="memitem:a8122c873b7fb77545f691f54415165d0"><td class="memItemLeft" align="right" valign="top">static constexpr glm::vec3 </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a8122c873b7fb77545f691f54415165d0">FORWARD_VECTOR</a> = glm::vec3(0, 0, 1)</td></tr> <tr class="separator:a8122c873b7fb77545f691f54415165d0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac198d62cc69655470f4009c8c208fcf8"><td class="memItemLeft" align="right" valign="top">static constexpr glm::vec3 </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ac198d62cc69655470f4009c8c208fcf8">UP_VECTOR</a> = glm::vec3(0, 1, 0)</td></tr> <tr class="separator:ac198d62cc69655470f4009c8c208fcf8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0c670f759e87a77c0e1c1101fb2f7b14"><td class="memItemLeft" align="right" valign="top">static constexpr glm::vec3 </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a0c670f759e87a77c0e1c1101fb2f7b14">RIGHT_VECTOR</a> = glm::vec3(1, 0, 0)</td></tr> <tr class="separator:a0c670f759e87a77c0e1c1101fb2f7b14"><td class="memSeparator" colspan="2"> </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:ad82e1b0aeeaa8e48f5321bc800018a17"><td class="memItemLeft" align="right" valign="top">vk::ApplicationInfo </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ad82e1b0aeeaa8e48f5321bc800018a17">ApplicationInfo</a> (const char *application_name, const <a class="el" href="structfpr_1_1_version.html">Version</a> &app_version, const char *engine_name, const <a class="el" href="structfpr_1_1_version.html">Version</a> &engine_version, const <a class="el" href="structfpr_1_1_version.html">Version</a> &api_version) FPR_NOEXCEPT</td></tr> <tr class="separator:ad82e1b0aeeaa8e48f5321bc800018a17"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaea12d59729b8bcfbfe5c2e9fdc442a0"><td class="memItemLeft" align="right" valign="top">std::vector< const char * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aaea12d59729b8bcfbfe5c2e9fdc442a0">GetRequiredExtensions</a> (const std::vector< const char * > &validation_layers) FPR_NOEXCEPT</td></tr> <tr class="separator:aaea12d59729b8bcfbfe5c2e9fdc442a0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8e8150ecf20a532cbe26317441430e4a"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a8e8150ecf20a532cbe26317441430e4a">IsValidationLayersValid</a> (const std::vector< const char * > &validation_layers, const std::vector< vk::LayerProperties > &available_layers) FPR_NOEXCEPT</td></tr> <tr class="separator:a8e8150ecf20a532cbe26317441430e4a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad7a9efc0b05ee0e3ac49d705cedd59b0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ad7a9efc0b05ee0e3ac49d705cedd59b0">IsVulkanSupported</a> () const FPR_NOEXCEPT</td></tr> <tr class="separator:ad7a9efc0b05ee0e3ac49d705cedd59b0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a52b262d0a513b6cf146d4bffbc8e881a"><td class="memItemLeft" align="right" valign="top">const vk::Instance & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a52b262d0a513b6cf146d4bffbc8e881a">GetVulkanInstance</a> () const FPR_NOEXCEPT</td></tr> <tr class="separator:a52b262d0a513b6cf146d4bffbc8e881a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a060be9ef34c7a8ef5ddffdf19d557304"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a060be9ef34c7a8ef5ddffdf19d557304">Context</a> (<a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> *Window, const std::string &app_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> app_version, const std::string &engine_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> engine_version, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> vulkan_version)</td></tr> <tr class="separator:a060be9ef34c7a8ef5ddffdf19d557304"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3ca963f77621ccf674830daae6c89e68"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a3ca963f77621ccf674830daae6c89e68">CreateSingleTimeCommandBuffer</a> ()</td></tr> <tr class="separator:a3ca963f77621ccf674830daae6c89e68"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acda66df2f74d3e026a7552d003729bd1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#acda66df2f74d3e026a7552d003729bd1">CreateModelDescriptorSet</a> ()</td></tr> <tr class="separator:acda66df2f74d3e026a7552d003729bd1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa58601b03e76df72e511dcbb3fb0859c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aa58601b03e76df72e511dcbb3fb0859c">CreateCameraDescriptorSet</a> ()</td></tr> <tr class="separator:aa58601b03e76df72e511dcbb3fb0859c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6d0cdacc31991cfe91075cb6f30000d7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a6d0cdacc31991cfe91075cb6f30000d7">CreateCameraDescriptorSetLayout</a> ()</td></tr> <tr class="separator:a6d0cdacc31991cfe91075cb6f30000d7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a686fd9d832f107640104ba8fbff03174"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a686fd9d832f107640104ba8fbff03174">CreateModelDescriptorSetLayout</a> ()</td></tr> <tr class="separator:a686fd9d832f107640104ba8fbff03174"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8f5abde3f6345dc88f481c605487342d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a8f5abde3f6345dc88f481c605487342d">CreateDepthSamplerLayout</a> ()</td></tr> <tr class="separator:a8f5abde3f6345dc88f481c605487342d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aaa9cbf0705f7eafb673e446a9d83e32c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aaa9cbf0705f7eafb673e446a9d83e32c">CreateDepthSamplerDescriptorSet</a> ()</td></tr> <tr class="separator:aaa9cbf0705f7eafb673e446a9d83e32c"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-static-methods" name="pri-static-methods"></a> Static Private Member Functions</h2></td></tr> <tr class="memitem:a2ba94bf56092717ecd3a93b395b5e819"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classfpr_1_1_context.html">Context</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a2ba94bf56092717ecd3a93b395b5e819">GetImpl</a> (<a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> *Window=nullptr, const std::string &app_name=s_app_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> app_version=s_app_version, const std::string &engine_name=s_engine_name, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> engine_version=s_engine_version, <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> vulkan_version=s_vulkan_version)</td></tr> <tr class="separator:a2ba94bf56092717ecd3a93b395b5e819"><td class="memSeparator" colspan="2"> </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:ace01beea2ef8d8e68c03c3e879157d90"><td class="memItemLeft" align="right" valign="top">const bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ace01beea2ef8d8e68c03c3e879157d90">validation_layers_enabled</a> = true</td></tr> <tr class="separator:ace01beea2ef8d8e68c03c3e879157d90"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a66835dbfcf78a29d439214d67f545534"><td class="memItemLeft" align="right" valign="top">const std::vector< const char * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a66835dbfcf78a29d439214d67f545534">m_validation_layers</a> = { "VK_LAYER_KHRONOS_validation" }</td></tr> <tr class="separator:a66835dbfcf78a29d439214d67f545534"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aea3e71f8eb68b53dedcbac4a2c5405e2"><td class="memItemLeft" align="right" valign="top">vk::UniqueInstance </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aea3e71f8eb68b53dedcbac4a2c5405e2">m_instance</a></td></tr> <tr class="separator:aea3e71f8eb68b53dedcbac4a2c5405e2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a940a4f5679999f20b9d62033c76d181b"><td class="memItemLeft" align="right" valign="top">std::vector< const char * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a940a4f5679999f20b9d62033c76d181b">m_extensions</a></td></tr> <tr class="separator:a940a4f5679999f20b9d62033c76d181b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae917e38024bb98bde40e9d1242906dfa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_input_handler.html">InputHandler</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ae917e38024bb98bde40e9d1242906dfa">m_camera_input_handler</a></td></tr> <tr class="separator:ae917e38024bb98bde40e9d1242906dfa"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a27c288bdb8100485d4f2296039e1f78e"><td class="memItemLeft" align="right" valign="top">vk::UniqueSwapchainKHR </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a27c288bdb8100485d4f2296039e1f78e">m_old_swapchain</a></td></tr> <tr class="separator:a27c288bdb8100485d4f2296039e1f78e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4082ede2a96cc07697bb520f0c241750"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classfpr_1_1_device.html">Device</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a4082ede2a96cc07697bb520f0c241750">m_device</a></td></tr> <tr class="separator:a4082ede2a96cc07697bb520f0c241750"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad14830e70c1c13102900a2d284787775"><td class="memItemLeft" align="right" valign="top">vk::UniqueSurfaceKHR </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ad14830e70c1c13102900a2d284787775">m_surface</a></td></tr> <tr class="separator:ad14830e70c1c13102900a2d284787775"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5dfba28c93188376146d26030609e414"><td class="memItemLeft" align="right" valign="top">vk::UniqueCommandPool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a5dfba28c93188376146d26030609e414">m_command_pool</a></td></tr> <tr class="separator:a5dfba28c93188376146d26030609e414"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a279228c28370f08aa0b844fb8ce49cd7"><td class="memItemLeft" align="right" valign="top">vk::UniqueCommandPool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a279228c28370f08aa0b844fb8ce49cd7">m_compute_comand_pool</a></td></tr> <tr class="separator:a279228c28370f08aa0b844fb8ce49cd7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1b0ee8df829f3088635ee60a72175857"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a1b0ee8df829f3088635ee60a72175857">m_swapchain</a></td></tr> <tr class="separator:a1b0ee8df829f3088635ee60a72175857"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a352f84c0559517bb34d5fc9fbf0bbe40"><td class="memItemLeft" align="right" valign="top">std::function< PipelineCreationData(void)> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a352f84c0559517bb34d5fc9fbf0bbe40">m_pipeline_creation_fn</a></td></tr> <tr class="separator:a352f84c0559517bb34d5fc9fbf0bbe40"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4cf91ce0d7dc7e81b7c0fedab49a3702"><td class="memItemLeft" align="right" valign="top">vk::UniqueDescriptorPool </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a4cf91ce0d7dc7e81b7c0fedab49a3702">m_descriptor_pool</a></td></tr> <tr class="separator:a4cf91ce0d7dc7e81b7c0fedab49a3702"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab4ac14aeba0174a5182669390ce8bd9a"><td class="memItemLeft" align="right" valign="top">vk::UniqueCommandBuffer </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ab4ac14aeba0174a5182669390ce8bd9a">m_single_time_cmd_buffer</a></td></tr> <tr class="separator:ab4ac14aeba0174a5182669390ce8bd9a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a25ff52bf74454bf2d9b431f448711e76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a25ff52bf74454bf2d9b431f448711e76">m_window</a></td></tr> <tr class="separator:a25ff52bf74454bf2d9b431f448711e76"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4f0b5dc0b0e78ccee01fda3397bd35fd"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a4f0b5dc0b0e78ccee01fda3397bd35fd">m_dynamic_alignment</a> = sizeof(glm::mat4)</td></tr> <tr class="separator:a4f0b5dc0b0e78ccee01fda3397bd35fd"><td class="memSeparator" colspan="2"> </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:a55cc08215cd9e3c6f74f018a4549bf3f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a55cc08215cd9e3c6f74f018a4549bf3f">s_window</a></td></tr> <tr class="separator:a55cc08215cd9e3c6f74f018a4549bf3f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a15c289b55671859acd57467243fb2e4d"><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a15c289b55671859acd57467243fb2e4d">s_app_name</a></td></tr> <tr class="separator:a15c289b55671859acd57467243fb2e4d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a08ef84fa656e1a8cd0e56053036a6c2e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a08ef84fa656e1a8cd0e56053036a6c2e">s_app_version</a></td></tr> <tr class="separator:a08ef84fa656e1a8cd0e56053036a6c2e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aff122a94cfc024604e16728529e4e5d2"><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#aff122a94cfc024604e16728529e4e5d2">s_engine_name</a></td></tr> <tr class="separator:aff122a94cfc024604e16728529e4e5d2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a25b44f56c1c03166cbe34ff571e52a3a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#a25b44f56c1c03166cbe34ff571e52a3a">s_engine_version</a></td></tr> <tr class="separator:a25b44f56c1c03166cbe34ff571e52a3a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab0d76111212165c055fe62c7ed402af1"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ab0d76111212165c055fe62c7ed402af1">s_vulkan_version</a></td></tr> <tr class="separator:ab0d76111212165c055fe62c7ed402af1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac7a58327b27ee74bde4004b40e15e825"><td class="memItemLeft" align="right" valign="top">static std::function< PipelineCreationData(void)> </td><td class="memItemRight" valign="bottom"><a class="el" href="classfpr_1_1_context.html#ac7a58327b27ee74bde4004b40e15e825">DEFAULT_PIPELINE_CREATION_CALLBACK</a></td></tr> <tr class="separator:ac7a58327b27ee74bde4004b40e15e825"><td class="memSeparator" colspan="2"> </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="_context_8h_source.html#l00028">28</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div><h2 class="groupheader">Member Typedef Documentation</h2> <a id="a7fee95c82ef33714d34137be6e71fa8f" name="a7fee95c82ef33714d34137be6e71fa8f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7fee95c82ef33714d34137be6e71fa8f">◆ </a></span>PipelineCreationData</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">using fpr::Context::PipelineCreationData = std::vector<std::tuple<EPipelineType, std::string_view, <a class="el" href="structfpr_1_1_pipeline_options.html">fpr::PipelineOptions</a>, tl::optional<std::string> >></td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00075">75</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <h2 class="groupheader">Constructor & Destructor Documentation</h2> <a id="a060be9ef34c7a8ef5ddffdf19d557304" name="a060be9ef34c7a8ef5ddffdf19d557304"></a> <h2 class="memtitle"><span class="permalink"><a href="#a060be9ef34c7a8ef5ddffdf19d557304">◆ </a></span>Context()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">fpr::Context::Context </td> <td>(</td> <td class="paramtype"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td> <td class="paramname"><em>Window</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>app_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>app_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>engine_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>engine_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>vulkan_version</em> </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="_context_8cpp_source.html#l00647">647</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="ad82e1b0aeeaa8e48f5321bc800018a17" name="ad82e1b0aeeaa8e48f5321bc800018a17"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad82e1b0aeeaa8e48f5321bc800018a17">◆ </a></span>ApplicationInfo()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::ApplicationInfo fpr::Context::ApplicationInfo </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"><em>application_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structfpr_1_1_version.html">Version</a> & </td> <td class="paramname"><em>app_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"><em>engine_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structfpr_1_1_version.html">Version</a> & </td> <td class="paramname"><em>engine_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structfpr_1_1_version.html">Version</a> & </td> <td class="paramname"><em>api_version</em> </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="_context_8cpp_source.html#l00027">27</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ad3d39b31c6af46e25f6ecb8b2e9db48f" name="ad3d39b31c6af46e25f6ecb8b2e9db48f"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad3d39b31c6af46e25f6ecb8b2e9db48f">◆ </a></span>BeginSingleTimeCommands()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::CommandBuffer & fpr::Context::BeginSingleTimeCommands </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="_context_8cpp_source.html#l00601">601</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aa58601b03e76df72e511dcbb3fb0859c" name="aa58601b03e76df72e511dcbb3fb0859c"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa58601b03e76df72e511dcbb3fb0859c">◆ </a></span>CreateCameraDescriptorSet()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateCameraDescriptorSet </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00226">226</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a6d0cdacc31991cfe91075cb6f30000d7" name="a6d0cdacc31991cfe91075cb6f30000d7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a6d0cdacc31991cfe91075cb6f30000d7">◆ </a></span>CreateCameraDescriptorSetLayout()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateCameraDescriptorSetLayout </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00262">262</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aa0e2ab8a1e9d8e5570eda950826449a6" name="aa0e2ab8a1e9d8e5570eda950826449a6"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa0e2ab8a1e9d8e5570eda950826449a6">◆ </a></span>CreateComputeCmdPool()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateComputeCmdPool </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="_context_8cpp_source.html#l00470">470</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aaa9cbf0705f7eafb673e446a9d83e32c" name="aaa9cbf0705f7eafb673e446a9d83e32c"></a> <h2 class="memtitle"><span class="permalink"><a href="#aaa9cbf0705f7eafb673e446a9d83e32c">◆ </a></span>CreateDepthSamplerDescriptorSet()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateDepthSamplerDescriptorSet </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00330">330</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a8f5abde3f6345dc88f481c605487342d" name="a8f5abde3f6345dc88f481c605487342d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8f5abde3f6345dc88f481c605487342d">◆ </a></span>CreateDepthSamplerLayout()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateDepthSamplerLayout </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00306">306</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a66019c13c0f8ad29e93c4e291b9a638d" name="a66019c13c0f8ad29e93c4e291b9a638d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a66019c13c0f8ad29e93c4e291b9a638d">◆ </a></span>CreateDescriptorPools()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateDescriptorPools </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="_context_8cpp_source.html#l00482">482</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="af650b322b34a1aa0a55394ff0cc74773" name="af650b322b34a1aa0a55394ff0cc74773"></a> <h2 class="memtitle"><span class="permalink"><a href="#af650b322b34a1aa0a55394ff0cc74773">◆ </a></span>CreateDescriptorSets()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateDescriptorSets </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="_context_8cpp_source.html#l00364">364</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a4f5df31da51b8e0d98344a8fbe724107" name="a4f5df31da51b8e0d98344a8fbe724107"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4f5df31da51b8e0d98344a8fbe724107">◆ </a></span>CreateGraphicsCmdPool()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateGraphicsCmdPool </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="_context_8cpp_source.html#l00449">449</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="acda66df2f74d3e026a7552d003729bd1" name="acda66df2f74d3e026a7552d003729bd1"></a> <h2 class="memtitle"><span class="permalink"><a href="#acda66df2f74d3e026a7552d003729bd1">◆ </a></span>CreateModelDescriptorSet()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateModelDescriptorSet </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00188">188</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a686fd9d832f107640104ba8fbff03174" name="a686fd9d832f107640104ba8fbff03174"></a> <h2 class="memtitle"><span class="permalink"><a href="#a686fd9d832f107640104ba8fbff03174">◆ </a></span>CreateModelDescriptorSetLayout()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateModelDescriptorSetLayout </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00283">283</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a3747e41646fee841c43701ca07fcc367" name="a3747e41646fee841c43701ca07fcc367"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3747e41646fee841c43701ca07fcc367">◆ </a></span>CreatePipelines()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreatePipelines </td> <td>(</td> <td class="paramtype">std::function< PipelineCreationData(void)> </td> <td class="paramname"><em>fn</em> = <code>DEFAULT_PIPELINE_CREATION_CALLBACK</code></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00129">129</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a167cb5dc3b6081b7a41a8df7b5619bf3" name="a167cb5dc3b6081b7a41a8df7b5619bf3"></a> <h2 class="memtitle"><span class="permalink"><a href="#a167cb5dc3b6081b7a41a8df7b5619bf3">◆ </a></span>CreateSceneBuffers()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateSceneBuffers </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="_context_8cpp_source.html#l00377">377</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a3ca963f77621ccf674830daae6c89e68" name="a3ca963f77621ccf674830daae6c89e68"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3ca963f77621ccf674830daae6c89e68">◆ </a></span>CreateSingleTimeCommandBuffer()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateSingleTimeCommandBuffer </td> <td>(</td> <td class="paramname"></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="_context_8cpp_source.html#l00162">162</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a4eec7c82288d80014ac8d636ebf7f63c" name="a4eec7c82288d80014ac8d636ebf7f63c"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4eec7c82288d80014ac8d636ebf7f63c">◆ </a></span>CreateSwapChain()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateSwapChain </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="_context_8cpp_source.html#l00465">465</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a8131de2a6a3ef09f05067bc881732b6b" name="a8131de2a6a3ef09f05067bc881732b6b"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8131de2a6a3ef09f05067bc881732b6b">◆ </a></span>CreateTextureSampler()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::CreateTextureSampler </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="_context_8cpp_source.html#l00520">520</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a23038f8f27ddcb4178a96a42a431aa51" name="a23038f8f27ddcb4178a96a42a431aa51"></a> <h2 class="memtitle"><span class="permalink"><a href="#a23038f8f27ddcb4178a96a42a431aa51">◆ </a></span>EndSingleTimeCommands()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::EndSingleTimeCommands </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="_context_8cpp_source.html#l00612">612</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aa832d82f0f3e820840534f6fa7375b66" name="aa832d82f0f3e820840534f6fa7375b66"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa832d82f0f3e820840534f6fa7375b66">◆ </a></span>Get()</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="classfpr_1_1_context.html">Context</a> & fpr::Context::Get </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00372">372</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a919643099656e601f351ba77839e6818" name="a919643099656e601f351ba77839e6818"></a> <h2 class="memtitle"><span class="permalink"><a href="#a919643099656e601f351ba77839e6818">◆ </a></span>GetCameraInputHandler()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classfpr_1_1_input_handler.html">InputHandler</a> & fpr::Context::GetCameraInputHandler </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="_context_8cpp_source.html#l00641">641</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="adce0072641f35159806b6a77f6d84acb" name="adce0072641f35159806b6a77f6d84acb"></a> <h2 class="memtitle"><span class="permalink"><a href="#adce0072641f35159806b6a77f6d84acb">◆ </a></span>GetComputeCmdPool()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::CommandPool & fpr::Context::GetComputeCmdPool </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="_context_8cpp_source.html#l00566">566</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a93e7b4e710420ab5f8dcdfa0da9552d7" name="a93e7b4e710420ab5f8dcdfa0da9552d7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a93e7b4e710420ab5f8dcdfa0da9552d7">◆ </a></span>GetDescriptorPool()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::DescriptorPool & fpr::Context::GetDescriptorPool </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="_context_8cpp_source.html#l00571">571</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a740d84ae2c7701d7549f5dcc9d4271df" name="a740d84ae2c7701d7549f5dcc9d4271df"></a> <h2 class="memtitle"><span class="permalink"><a href="#a740d84ae2c7701d7549f5dcc9d4271df">◆ </a></span>GetDevice()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classfpr_1_1_device.html">Device</a> * fpr::Context::GetDevice </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="_context_8cpp_source.html#l00581">581</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01" name="a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3fb9d75c5c7a6a7e7b05c4a0b5fe9a01">◆ </a></span>GetGraphicsCmdPool()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::CommandPool & fpr::Context::GetGraphicsCmdPool </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="_context_8cpp_source.html#l00561">561</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a2ba94bf56092717ecd3a93b395b5e819" name="a2ba94bf56092717ecd3a93b395b5e819"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2ba94bf56092717ecd3a93b395b5e819">◆ </a></span>GetImpl()</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="classfpr_1_1_context.html">Context</a> & fpr::Context::GetImpl </td> <td>(</td> <td class="paramtype"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td> <td class="paramname"><em>Window</em> = <code>nullptr</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>app_name</em> = <code>s_app_name</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>app_version</em> = <code>s_app_version</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>engine_name</em> = <code>s_engine_name</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>engine_version</em> = <code>s_engine_version</code>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>vulkan_version</em> = <code>s_vulkan_version</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00175">175</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a035d33769ca8d29c4fc8c827894b7318" name="a035d33769ca8d29c4fc8c827894b7318"></a> <h2 class="memtitle"><span class="permalink"><a href="#a035d33769ca8d29c4fc8c827894b7318">◆ </a></span>GetInstance()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::Instance & fpr::Context::GetInstance </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="_context_8cpp_source.html#l00596">596</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aa7de31d273295c20f2d46c388413f98f" name="aa7de31d273295c20f2d46c388413f98f"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa7de31d273295c20f2d46c388413f98f">◆ </a></span>GetRequiredDynamicAlignment()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint32_t fpr::Context::GetRequiredDynamicAlignment </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="_context_8cpp_source.html#l00586">586</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aaea12d59729b8bcfbfe5c2e9fdc442a0" name="aaea12d59729b8bcfbfe5c2e9fdc442a0"></a> <h2 class="memtitle"><span class="permalink"><a href="#aaea12d59729b8bcfbfe5c2e9fdc442a0">◆ </a></span>GetRequiredExtensions()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::vector< const char * > fpr::Context::GetRequiredExtensions </td> <td>(</td> <td class="paramtype">const std::vector< const char * > & </td> <td class="paramname"><em>validation_layers</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="_context_8cpp_source.html#l00043">43</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="aa90f81b72efefa256158f57a3078dda0" name="aa90f81b72efefa256158f57a3078dda0"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa90f81b72efefa256158f57a3078dda0">◆ </a></span>GetSurface()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">vk::SurfaceKHR & fpr::Context::GetSurface </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="_context_8cpp_source.html#l00576">576</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="af145d8e714c8bfca26085b45c844b61b" name="af145d8e714c8bfca26085b45c844b61b"></a> <h2 class="memtitle"><span class="permalink"><a href="#af145d8e714c8bfca26085b45c844b61b">◆ </a></span>GetSwapChain()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a> * fpr::Context::GetSwapChain </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="_context_8cpp_source.html#l00444">444</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a52b262d0a513b6cf146d4bffbc8e881a" name="a52b262d0a513b6cf146d4bffbc8e881a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a52b262d0a513b6cf146d4bffbc8e881a">◆ </a></span>GetVulkanInstance()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const vk::Instance & fpr::Context::GetVulkanInstance </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</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="_context_8cpp_source.html#l00101">101</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ae4844c9d10b0c928a0ade4976f839439" name="ae4844c9d10b0c928a0ade4976f839439"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae4844c9d10b0c928a0ade4976f839439">◆ </a></span>GetWindow()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * fpr::Context::GetWindow </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="_context_8cpp_source.html#l00439">439</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ab2e3c8fa73f218cb1d5418f59b689fa3" name="ab2e3c8fa73f218cb1d5418f59b689fa3"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab2e3c8fa73f218cb1d5418f59b689fa3">◆ </a></span>Init()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void fpr::Context::Init </td> <td>(</td> <td class="paramtype"><a class="el" href="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * </td> <td class="paramname"><em>Window</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>app_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>app_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>engine_name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>engine_version</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structfpr_1_1_version.html">fpr::Version</a> </td> <td class="paramname"><em>vulkan_version</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00407">407</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="a8e8150ecf20a532cbe26317441430e4a" name="a8e8150ecf20a532cbe26317441430e4a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8e8150ecf20a532cbe26317441430e4a">◆ </a></span>IsValidationLayersValid()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool fpr::Context::IsValidationLayersValid </td> <td>(</td> <td class="paramtype">const std::vector< const char * > & </td> <td class="paramname"><em>validation_layers</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const std::vector< vk::LayerProperties > & </td> <td class="paramname"><em>available_layers</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00062">62</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ad7a9efc0b05ee0e3ac49d705cedd59b0" name="ad7a9efc0b05ee0e3ac49d705cedd59b0"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad7a9efc0b05ee0e3ac49d705cedd59b0">◆ </a></span>IsVulkanSupported()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool fpr::Context::IsVulkanSupported </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</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="_context_8cpp_source.html#l00077">77</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ab43dc2ca3e8e6e9547b26b33ad79e3f1" name="ab43dc2ca3e8e6e9547b26b33ad79e3f1"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab43dc2ca3e8e6e9547b26b33ad79e3f1">◆ </a></span>RecreateSwapchain()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::RecreateSwapchain </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="_context_8cpp_source.html#l00120">120</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <a id="ab03ce93e4866a07ca51293979e544dfb" name="ab03ce93e4866a07ca51293979e544dfb"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab03ce93e4866a07ca51293979e544dfb">◆ </a></span>SetDynamicAlignment()</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void fpr::Context::SetDynamicAlignment </td> <td>(</td> <td class="paramtype">uint32_t </td> <td class="paramname"><em>alignment</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8cpp_source.html#l00591">591</a> of file <a class="el" href="_context_8cpp_source.html">Context.cpp</a>.</p> </div> </div> <h2 class="groupheader">Member Data Documentation</h2> <a id="ac7a58327b27ee74bde4004b40e15e825" name="ac7a58327b27ee74bde4004b40e15e825"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac7a58327b27ee74bde4004b40e15e825">◆ </a></span>DEFAULT_PIPELINE_CREATION_CALLBACK</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::function< Context::PipelineCreationData(void)> fpr::Context::DEFAULT_PIPELINE_CREATION_CALLBACK</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</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">{</div> <div class="line"> fpr::Context::PipelineCreationData pipelines;</div> <div class="line"> </div> <div class="line"> pipelines.emplace_back(</div> <div class="line"> EPipelineType::EPT_Graphics, <span class="stringliteral">"Graphics"</span>, fpr::Pipeline::GetDefaultGraphicsPipeline(), tl::nullopt);</div> <div class="line"> </div> <div class="line"> pipelines.emplace_back(EPipelineType::EPT_Graphics, <span class="stringliteral">"Depth"</span>, fpr::Pipeline::GetDepthPassPipeline(), <span class="stringliteral">"Graphics"</span>);</div> <div class="line"> </div> <div class="line"> pipelines.emplace_back(</div> <div class="line"> EPipelineType::EPT_Compute, <span class="stringliteral">"LightCulling"</span>, fpr::Pipeline::GetLightCullingPipeline(), tl::nullopt);</div> <div class="line"> <span class="keywordflow">return</span> pipelines;</div> <div class="line">}</div> </div><!-- fragment --> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00090">90</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a8122c873b7fb77545f691f54415165d0" name="a8122c873b7fb77545f691f54415165d0"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8122c873b7fb77545f691f54415165d0">◆ </a></span>FORWARD_VECTOR</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">constexpr glm::vec3 fpr::Context::FORWARD_VECTOR = glm::vec3(0, 0, 1)</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00123">123</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ae917e38024bb98bde40e9d1242906dfa" name="ae917e38024bb98bde40e9d1242906dfa"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae917e38024bb98bde40e9d1242906dfa">◆ </a></span>m_camera_input_handler</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="classfpr_1_1_input_handler.html">InputHandler</a> fpr::Context::m_camera_input_handler</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="_context_8h_source.html#l00069">69</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a5dfba28c93188376146d26030609e414" name="a5dfba28c93188376146d26030609e414"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5dfba28c93188376146d26030609e414">◆ </a></span>m_command_pool</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueCommandPool fpr::Context::m_command_pool</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="_context_8h_source.html#l00080">80</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a279228c28370f08aa0b844fb8ce49cd7" name="a279228c28370f08aa0b844fb8ce49cd7"></a> <h2 class="memtitle"><span class="permalink"><a href="#a279228c28370f08aa0b844fb8ce49cd7">◆ </a></span>m_compute_comand_pool</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueCommandPool fpr::Context::m_compute_comand_pool</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="_context_8h_source.html#l00081">81</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a4cf91ce0d7dc7e81b7c0fedab49a3702" name="a4cf91ce0d7dc7e81b7c0fedab49a3702"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4cf91ce0d7dc7e81b7c0fedab49a3702">◆ </a></span>m_descriptor_pool</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueDescriptorPool fpr::Context::m_descriptor_pool</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="_context_8h_source.html#l00084">84</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a4082ede2a96cc07697bb520f0c241750" name="a4082ede2a96cc07697bb520f0c241750"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4082ede2a96cc07697bb520f0c241750">◆ </a></span>m_device</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<<a class="el" href="classfpr_1_1_device.html">Device</a>> fpr::Context::m_device</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="_context_8h_source.html#l00078">78</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a4f0b5dc0b0e78ccee01fda3397bd35fd" name="a4f0b5dc0b0e78ccee01fda3397bd35fd"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4f0b5dc0b0e78ccee01fda3397bd35fd">◆ </a></span>m_dynamic_alignment</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::Context::m_dynamic_alignment = sizeof(glm::mat4)</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="_context_8h_source.html#l00087">87</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a940a4f5679999f20b9d62033c76d181b" name="a940a4f5679999f20b9d62033c76d181b"></a> <h2 class="memtitle"><span class="permalink"><a href="#a940a4f5679999f20b9d62033c76d181b">◆ </a></span>m_extensions</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::vector<const char*> fpr::Context::m_extensions</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="_context_8h_source.html#l00048">48</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="aea3e71f8eb68b53dedcbac4a2c5405e2" name="aea3e71f8eb68b53dedcbac4a2c5405e2"></a> <h2 class="memtitle"><span class="permalink"><a href="#aea3e71f8eb68b53dedcbac4a2c5405e2">◆ </a></span>m_instance</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueInstance fpr::Context::m_instance</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="_context_8h_source.html#l00047">47</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a0a714dbe35e252e5f0fb08d93353f521" name="a0a714dbe35e252e5f0fb08d93353f521"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0a714dbe35e252e5f0fb08d93353f521">◆ </a></span>m_loaded_scene</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classfpr_1_1_scene.html">fpr::Scene</a>* fpr::Context::m_loaded_scene</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00135">135</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a27c288bdb8100485d4f2296039e1f78e" name="a27c288bdb8100485d4f2296039e1f78e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a27c288bdb8100485d4f2296039e1f78e">◆ </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::Context::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="_context_8h_source.html#l00070">70</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a352f84c0559517bb34d5fc9fbf0bbe40" name="a352f84c0559517bb34d5fc9fbf0bbe40"></a> <h2 class="memtitle"><span class="permalink"><a href="#a352f84c0559517bb34d5fc9fbf0bbe40">◆ </a></span>m_pipeline_creation_fn</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::function<PipelineCreationData(void)> fpr::Context::m_pipeline_creation_fn</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="_context_8h_source.html#l00083">83</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a0e9c719be40025ae3908cf5b150fbbaa" name="a0e9c719be40025ae3908cf5b150fbbaa"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0e9c719be40025ae3908cf5b150fbbaa">◆ </a></span>m_render_graph</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::unique_ptr<<a class="el" href="classfpr_1_1_render_graph.html">RenderGraph</a>> fpr::Context::m_render_graph</td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00147">147</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ab4ac14aeba0174a5182669390ce8bd9a" name="ab4ac14aeba0174a5182669390ce8bd9a"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab4ac14aeba0174a5182669390ce8bd9a">◆ </a></span>m_single_time_cmd_buffer</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueCommandBuffer fpr::Context::m_single_time_cmd_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="_context_8h_source.html#l00085">85</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ad14830e70c1c13102900a2d284787775" name="ad14830e70c1c13102900a2d284787775"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad14830e70c1c13102900a2d284787775">◆ </a></span>m_surface</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">vk::UniqueSurfaceKHR fpr::Context::m_surface</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="_context_8h_source.html#l00079">79</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a1b0ee8df829f3088635ee60a72175857" name="a1b0ee8df829f3088635ee60a72175857"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1b0ee8df829f3088635ee60a72175857">◆ </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">std::unique_ptr<<a class="el" href="classfpr_1_1_swap_chain.html">SwapChain</a>> fpr::Context::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="_context_8h_source.html#l00082">82</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a66835dbfcf78a29d439214d67f545534" name="a66835dbfcf78a29d439214d67f545534"></a> <h2 class="memtitle"><span class="permalink"><a href="#a66835dbfcf78a29d439214d67f545534">◆ </a></span>m_validation_layers</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const std::vector<const char*> fpr::Context::m_validation_layers = { "VK_LAYER_KHRONOS_validation" }</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="_context_8h_source.html#l00043">43</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a25ff52bf74454bf2d9b431f448711e76" name="a25ff52bf74454bf2d9b431f448711e76"></a> <h2 class="memtitle"><span class="permalink"><a href="#a25ff52bf74454bf2d9b431f448711e76">◆ </a></span>m_window</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="classfpr_1_1_vulkan_window.html">VulkanWindow</a>* fpr::Context::m_window</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="_context_8h_source.html#l00086">86</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a0c670f759e87a77c0e1c1101fb2f7b14" name="a0c670f759e87a77c0e1c1101fb2f7b14"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0c670f759e87a77c0e1c1101fb2f7b14">◆ </a></span>RIGHT_VECTOR</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">constexpr glm::vec3 fpr::Context::RIGHT_VECTOR = glm::vec3(1, 0, 0)</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00125">125</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a15c289b55671859acd57467243fb2e4d" name="a15c289b55671859acd57467243fb2e4d"></a> <h2 class="memtitle"><span class="permalink"><a href="#a15c289b55671859acd57467243fb2e4d">◆ </a></span>s_app_name</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string fpr::Context::s_app_name</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00031">31</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a08ef84fa656e1a8cd0e56053036a6c2e" name="a08ef84fa656e1a8cd0e56053036a6c2e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a08ef84fa656e1a8cd0e56053036a6c2e">◆ </a></span>s_app_version</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_version.html">fpr::Version</a> fpr::Context::s_app_version</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00032">32</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="aff122a94cfc024604e16728529e4e5d2" name="aff122a94cfc024604e16728529e4e5d2"></a> <h2 class="memtitle"><span class="permalink"><a href="#aff122a94cfc024604e16728529e4e5d2">◆ </a></span>s_engine_name</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string fpr::Context::s_engine_name</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00033">33</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a25b44f56c1c03166cbe34ff571e52a3a" name="a25b44f56c1c03166cbe34ff571e52a3a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a25b44f56c1c03166cbe34ff571e52a3a">◆ </a></span>s_engine_version</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_version.html">fpr::Version</a> fpr::Context::s_engine_version</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00034">34</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ab0d76111212165c055fe62c7ed402af1" name="ab0d76111212165c055fe62c7ed402af1"></a> <h2 class="memtitle"><span class="permalink"><a href="#ab0d76111212165c055fe62c7ed402af1">◆ </a></span>s_vulkan_version</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_version.html">fpr::Version</a> fpr::Context::s_vulkan_version</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00035">35</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="a55cc08215cd9e3c6f74f018a4549bf3f" name="a55cc08215cd9e3c6f74f018a4549bf3f"></a> <h2 class="memtitle"><span class="permalink"><a href="#a55cc08215cd9e3c6f74f018a4549bf3f">◆ </a></span>s_window</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="classfpr_1_1_vulkan_window.html">VulkanWindow</a> * fpr::Context::s_window</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00030">30</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ac198d62cc69655470f4009c8c208fcf8" name="ac198d62cc69655470f4009c8c208fcf8"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac198d62cc69655470f4009c8c208fcf8">◆ </a></span>UP_VECTOR</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">constexpr glm::vec3 fpr::Context::UP_VECTOR = glm::vec3(0, 1, 0)</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span></span> </td> </tr> </table> </div><div class="memdoc"> <p class="definition">Definition at line <a class="el" href="_context_8h_source.html#l00124">124</a> of file <a class="el" href="_context_8h_source.html">Context.h</a>.</p> </div> </div> <a id="ace01beea2ef8d8e68c03c3e879157d90" name="ace01beea2ef8d8e68c03c3e879157d90"></a> <h2 class="memtitle"><span class="permalink"><a href="#ace01beea2ef8d8e68c03c3e879157d90">◆ </a></span>validation_layers_enabled</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const bool fpr::Context::validation_layers_enabled = true</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="_context_8h_source.html#l00042">42</a> of file <a class="el" href="_context_8h_source.html">Context.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="_context_8h_source.html">Context.h</a></li> <li>D:/Users/mbuzelis/source/repos/ForwardPlusRenderer/src/<a class="el" href="_context_8cpp_source.html">Context.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_context.html">Context</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>