<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.7" xml:lang="en-US">
  <compounddef id="de/d6b/classResourceManager" kind="class" language="C++" prot="public">
    <compoundname>ResourceManager</compoundname>
    <includes refid="db/d16/ResourceManager_8hpp" local="no">ResourceManager.hpp</includes>
      <sectiondef kind="private-attrib">
      <memberdef kind="variable" id="de/d6b/classResourceManager_1a13ecc712ce6a74430fb5ce309bae1c5e" prot="private" static="no" mutable="no">
        <type>std::unordered_map&lt; std::string, SDL_Surface * &gt;</type>
        <definition>std::unordered_map&lt;std::string, SDL_Surface*&gt; ResourceManager::surfaces</definition>
        <argsstring></argsstring>
        <name>surfaces</name>
        <qualifiedname>ResourceManager::surfaces</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="27" column="28" bodyfile="include/ResourceManager.hpp" bodystart="27" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="private-func">
      <memberdef kind="function" id="de/d6b/classResourceManager_1a3b32babd2e81909bbd90d7f2d566fadb" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>ResourceManager::ResourceManager</definition>
        <argsstring>()</argsstring>
        <name>ResourceManager</name>
        <qualifiedname>ResourceManager::ResourceManager</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Construct a new Resource Manager object. Not used, according to the Singleton Pattern. </para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="23" column="9" bodyfile="src/ResourceManager.cpp" bodystart="12" bodyend="12"/>
        <referencedby refid="de/d6b/classResourceManager_1a98b11a6302bf0db4ffc81eea70512ee2" compoundref="d8/d44/ResourceManager_8cpp" startline="16" endline="20">GetInstance</referencedby>
      </memberdef>
      <memberdef kind="function" id="de/d6b/classResourceManager_1af7a286275ba537839da512d9d000af01" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>ResourceManager::ResourceManager</definition>
        <argsstring>(ResourceManager const &amp;)</argsstring>
        <name>ResourceManager</name>
        <qualifiedname>ResourceManager::ResourceManager</qualifiedname>
        <param>
          <type><ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref> const &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="24" column="9" bodyfile="src/ResourceManager.cpp" bodystart="13" bodyend="13"/>
      </memberdef>
      <memberdef kind="function" id="de/d6b/classResourceManager_1a529d0597fb7c1ea38f9ed5e150a73068" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void ResourceManager::operator=</definition>
        <argsstring>(ResourceManager const &amp;)</argsstring>
        <name>operator=</name>
        <qualifiedname>ResourceManager::operator=</qualifiedname>
        <param>
          <type><ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref> const &amp;</type>
          <defname>rhs</defname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="25" column="14" bodyfile="src/ResourceManager.cpp" bodystart="14" bodyend="14"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-static-func">
      <memberdef kind="function" id="de/d6b/classResourceManager_1a98b11a6302bf0db4ffc81eea70512ee2" prot="public" static="yes" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref> &amp;</type>
        <definition>ResourceManager &amp; ResourceManager::GetInstance</definition>
        <argsstring>()</argsstring>
        <name>GetInstance</name>
        <qualifiedname>ResourceManager::GetInstance</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Get the Singleton instance of the <ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref>.</para>
<para><simplesect kind="return"><para>the only <ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref> instance </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="35" column="32" bodyfile="src/ResourceManager.cpp" bodystart="16" bodyend="20"/>
        <references refid="de/d6b/classResourceManager_1a3b32babd2e81909bbd90d7f2d566fadb" compoundref="d8/d44/ResourceManager_8cpp" startline="12" endline="12">ResourceManager</references>
        <referencedby refid="d6/d77/classSpriteComponent_1a70bc3139c9721612b1cdb3e514d4dd46" compoundref="d0/dff/Sprite_8cpp" startline="72" endline="96">SpriteComponent::LoadImage</referencedby>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-func">
      <memberdef kind="function" id="de/d6b/classResourceManager_1a5b5534fbba6f619d50c8b4896ec7c768" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>SDL_Surface *</type>
        <definition>SDL_Surface * ResourceManager::LoadResource</definition>
        <argsstring>(std::string image_filename)</argsstring>
        <name>LoadResource</name>
        <qualifiedname>ResourceManager::LoadResource</qualifiedname>
        <param>
          <type>std::string</type>
          <declname>image_filename</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Load a file into memory.</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>image_filename</parametername>
</parameternamelist>
<parameterdescription>
<para>the name of the file to be loaded </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the SDL_Surface created by loading the file </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="43" column="21" bodyfile="src/ResourceManager.cpp" bodystart="22" bodyend="32"/>
        <references refid="de/d6b/classResourceManager_1a71c603bdc173cfe704788a0fbfe2ac7e" compoundref="d8/d44/ResourceManager_8cpp" startline="36" endline="38">GetResource</references>
        <referencedby refid="d6/d77/classSpriteComponent_1a70bc3139c9721612b1cdb3e514d4dd46" compoundref="d0/dff/Sprite_8cpp" startline="72" endline="96">SpriteComponent::LoadImage</referencedby>
      </memberdef>
      <memberdef kind="function" id="de/d6b/classResourceManager_1a71c603bdc173cfe704788a0fbfe2ac7e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>SDL_Surface *</type>
        <definition>SDL_Surface * ResourceManager::GetResource</definition>
        <argsstring>(std::string key)</argsstring>
        <name>GetResource</name>
        <qualifiedname>ResourceManager::GetResource</qualifiedname>
        <param>
          <type>std::string</type>
          <declname>key</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Get a resource from the <ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref>. If the resource is not already loaded, calls <ref refid="de/d6b/classResourceManager_1a5b5534fbba6f619d50c8b4896ec7c768" kindref="member">LoadResource()</ref></para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>key</parametername>
</parameternamelist>
<parameterdescription>
<para>the filename to be loaded </para>
</parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>the SDL_Surface created by loading the file </para>
</simplesect>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="54" column="21" bodyfile="src/ResourceManager.cpp" bodystart="36" bodyend="38"/>
        <referencedby refid="de/d6b/classResourceManager_1a5b5534fbba6f619d50c8b4896ec7c768" compoundref="d8/d44/ResourceManager_8cpp" startline="22" endline="32">LoadResource</referencedby>
      </memberdef>
      <memberdef kind="function" id="de/d6b/classResourceManager_1a19f196ba87bf74201b9e3f496edc78cd" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int ResourceManager::StartUp</definition>
        <argsstring>()</argsstring>
        <name>StartUp</name>
        <qualifiedname>ResourceManager::StartUp</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Initialize the Singleton. </para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="59" column="13"/>
      </memberdef>
      <memberdef kind="function" id="de/d6b/classResourceManager_1ae5ed3ee26a3de63a04d4bb6542d5bbb0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int ResourceManager::ShutDown</definition>
        <argsstring>()</argsstring>
        <name>ShutDown</name>
        <qualifiedname>ResourceManager::ShutDown</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Destroy the Singleton </para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="include/ResourceManager.hpp" line="64" column="13" bodyfile="src/ResourceManager.cpp" bodystart="40" bodyend="45"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
<para>A Singleton class to hold all loaded files in the game. The purpose of the <ref refid="de/d6b/classResourceManager" kindref="compound">ResourceManager</ref> is to avoid wasting memory on duplicate textures, audio files, and any other things that need to be loaded. </para>
    </detaileddescription>
    <location file="include/ResourceManager.hpp" line="17" column="1" bodyfile="include/ResourceManager.hpp" bodystart="17" bodyend="65"/>
    <listofallmembers>
      <member refid="de/d6b/classResourceManager_1a98b11a6302bf0db4ffc81eea70512ee2" prot="public" virt="non-virtual"><scope>ResourceManager</scope><name>GetInstance</name></member>
      <member refid="de/d6b/classResourceManager_1a71c603bdc173cfe704788a0fbfe2ac7e" prot="public" virt="non-virtual"><scope>ResourceManager</scope><name>GetResource</name></member>
      <member refid="de/d6b/classResourceManager_1a5b5534fbba6f619d50c8b4896ec7c768" prot="public" virt="non-virtual"><scope>ResourceManager</scope><name>LoadResource</name></member>
      <member refid="de/d6b/classResourceManager_1a529d0597fb7c1ea38f9ed5e150a73068" prot="private" virt="non-virtual"><scope>ResourceManager</scope><name>operator=</name></member>
      <member refid="de/d6b/classResourceManager_1a3b32babd2e81909bbd90d7f2d566fadb" prot="private" virt="non-virtual"><scope>ResourceManager</scope><name>ResourceManager</name></member>
      <member refid="de/d6b/classResourceManager_1af7a286275ba537839da512d9d000af01" prot="private" virt="non-virtual"><scope>ResourceManager</scope><name>ResourceManager</name></member>
      <member refid="de/d6b/classResourceManager_1ae5ed3ee26a3de63a04d4bb6542d5bbb0" prot="public" virt="non-virtual"><scope>ResourceManager</scope><name>ShutDown</name></member>
      <member refid="de/d6b/classResourceManager_1a19f196ba87bf74201b9e3f496edc78cd" prot="public" virt="non-virtual"><scope>ResourceManager</scope><name>StartUp</name></member>
      <member refid="de/d6b/classResourceManager_1a13ecc712ce6a74430fb5ce309bae1c5e" prot="private" virt="non-virtual"><scope>ResourceManager</scope><name>surfaces</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
