source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1GLGpuProgramManager.html @ 692

Revision 692, 139.7 KB checked in by mattausch, 19 years ago (diff)

adding ogre 1.2 and dependencies

Line 
1<html>
2<head>
3<title>Ogre::GLGpuProgramManager class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::GLGpuProgramManager Class Reference</h1><code>#include &lt;<a class="el" href="OgreGLGpuProgramManager_8h-source.html">OgreGLGpuProgramManager.h</a>&gt;</code>
11<p>
12<p>Inheritance diagram for Ogre::GLGpuProgramManager:
13<p><center><img src="classOgre_1_1GLGpuProgramManager.png" usemap="#Ogre::GLGpuProgramManager_map" border="0" alt=""></center>
14<map name="Ogre::GLGpuProgramManager_map">
15<area href="classOgre_1_1GpuProgramManager.html" alt="Ogre::GpuProgramManager" shape="rect" coords="127,112,372,136">
16<area href="classOgre_1_1ResourceManager.html" alt="Ogre::ResourceManager" shape="rect" coords="0,56,245,80">
17<area href="classOgre_1_1Singleton.html" alt="Ogre::Singleton< GpuProgramManager >" shape="rect" coords="255,56,500,80">
18<area href="classOgre_1_1ScriptLoader.html" alt="Ogre::ScriptLoader" shape="rect" coords="0,0,245,24">
19</map>
20<a href="classOgre_1_1GLGpuProgramManager-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
21<tr><td></td></tr>
22<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
23<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a> *(*&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">CreateGpuProgramCallback</a> )(<a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> *creator, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, bool isManual, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
24
25<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::set&lt; <a class="el" href="namespaceOgre.html#a471">String</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">SyntaxCodes</a></td></tr>
26
27<tr><td class="memItemLeft" nowrap align=right valign=top>typedef HashMap&lt; <a class="el" href="namespaceOgre.html#a471">String</a>, <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw0">ResourceMap</a></td></tr>
28
29<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>,<br>
30 <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">ResourceHandleMap</a></td></tr>
31
32<tr><td class="memItemLeft" nowrap align=right valign=top>typedef <a class="el" href="classOgre_1_1MapIterator.html">MapIterator</a>&lt; <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">ResourceHandleMap</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw2">ResourceMapIterator</a></td></tr>
33
34<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
35<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagera0">GLGpuProgramManager</a> ()</td></tr>
36
37<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagera1">~GLGpuProgramManager</a> ()</td></tr>
38
39<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1SharedPtr.html">GpuProgramParametersSharedPtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagera2">createParameters</a> (void)</td></tr>
40
41<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> instance which can be used to bind parameters to your programs.  <a href="#Ogre_1_1GLGpuProgramManagera2"></a><br><br></td></tr>
42<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagera3">registerProgramFactory</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode, <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">CreateGpuProgramCallback</a> createFn)</td></tr>
43
44<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagera4">unregisterProgramFactory</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
45
46<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera2">load</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;groupName, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;filename, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
47
48<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Loads a GPU program from a file of assembly.  <a href="#Ogre_1_1GpuProgramManagera2"></a><br><br></td></tr>
49<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera34">load</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, bool isManual=false, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader=0, const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *loadParams=0)</td></tr>
50
51<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Generic load method, used to create a <a class="el" href="classOgre_1_1Resource.html">Resource</a> specific to this <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> without using one of the specialised 'load' methods (containing per-Resource-type parameters).  <a href="#Ogre_1_1TextureManagera34"></a><br><br></td></tr>
52<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera3">loadFromString</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;groupName, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;code, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
53
54<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Loads a GPU program from a string of assembly code.  <a href="#Ogre_1_1GpuProgramManagera3"></a><br><br></td></tr>
55<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">SyntaxCodes</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera4">getSupportedSyntax</a> (void) const </td></tr>
56
57<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the syntaxes that this manager supports.  <a href="#Ogre_1_1GpuProgramManagera4"></a><br><br></td></tr>
58<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera5">isSyntaxSupported</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode) const </td></tr>
59
60<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether a given syntax code (e.g.  <a href="#Ogre_1_1GpuProgramManagera5"></a><br><br></td></tr>
61<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera7">createProgram</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;groupName, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;filename, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
62
63<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new, unloaded <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a> from a file of assembly.  <a href="#Ogre_1_1GpuProgramManagera7"></a><br><br></td></tr>
64<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera8">createProgramFromString</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;groupName, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;code, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
65
66<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a GPU program from a string of assembly code.  <a href="#Ogre_1_1GpuProgramManagera8"></a><br><br></td></tr>
67<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera9">create</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode, bool isManual=false, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader=0)</td></tr>
68
69<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">General create method, using specific create parameters instead of name / value pairs.  <a href="#Ogre_1_1GpuProgramManagera9"></a><br><br></td></tr>
70<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera14">create</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, bool isManual=false, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader=0, const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *createParams=0)</td></tr>
71
72<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new blank resource, but does not immediately load it.  <a href="#Ogre_1_1TextureManagera14"></a><br><br></td></tr>
73<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera10">_pushSyntaxCode</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Internal method for populating the supported syntax codes, called by <a class="el" href="classOgre_1_1RenderSystem.html">RenderSystem</a>.  <a href="#Ogre_1_1GpuProgramManagera10"></a><br><br></td></tr>
76<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera11">getByName</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, bool preferHighLevelPrograms=true)</td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Overrides the standard <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> getByName method.  <a href="#Ogre_1_1GpuProgramManagera11"></a><br><br></td></tr>
79<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera27">getByName</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name)</td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a pointer to a resource by name, or null if the resource does not exist.  <a href="#Ogre_1_1TextureManagera27"></a><br><br></td></tr>
82<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera15">setMemoryBudget</a> (size_t bytes)</td></tr>
83
84<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a limit on the amount of memory this resource handler may use.  <a href="#Ogre_1_1TextureManagera15"></a><br><br></td></tr>
85<tr><td class="memItemLeft" nowrap align=right valign=top>virtual size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera16">getMemoryBudget</a> (void) const </td></tr>
86
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the limit on the amount of memory this resource handler may use.  <a href="#Ogre_1_1TextureManagera16"></a><br><br></td></tr>
88<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera17">unload</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name)</td></tr>
89
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unloads a single resource by name.  <a href="#Ogre_1_1TextureManagera17"></a><br><br></td></tr>
91<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera18">unload</a> (<a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle)</td></tr>
92
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unloads a single resource by handle.  <a href="#Ogre_1_1TextureManagera18"></a><br><br></td></tr>
94<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera19">unloadAll</a> (bool reloadableOnly=true)</td></tr>
95
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unloads all resources.  <a href="#Ogre_1_1TextureManagera19"></a><br><br></td></tr>
97<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera20">reloadAll</a> (bool reloadableOnly=true)</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Caused all currently loaded resources to be reloaded.  <a href="#Ogre_1_1TextureManagera20"></a><br><br></td></tr>
100<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera21">unloadUnreferencedResources</a> (bool reloadableOnly=true)</td></tr>
101
102<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unload all resources which are not referenced by any other object.  <a href="#Ogre_1_1TextureManagera21"></a><br><br></td></tr>
103<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera22">reloadUnreferencedResources</a> (bool reloadableOnly=true)</td></tr>
104
105<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Caused all currently loaded but not referenced by any other object resources to be reloaded.  <a href="#Ogre_1_1TextureManagera22"></a><br><br></td></tr>
106<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera23">remove</a> (<a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;r)</td></tr>
107
108<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a single resource.  <a href="#Ogre_1_1TextureManagera23"></a><br><br></td></tr>
109<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera24">remove</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name)</td></tr>
110
111<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a single resource by name.  <a href="#Ogre_1_1TextureManagera24"></a><br><br></td></tr>
112<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera25">remove</a> (<a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle)</td></tr>
113
114<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a single resource by handle.  <a href="#Ogre_1_1TextureManagera25"></a><br><br></td></tr>
115<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera26">removeAll</a> (void)</td></tr>
116
117<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Removes all resources.  <a href="#Ogre_1_1TextureManagera26"></a><br><br></td></tr>
118<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera28">getByHandle</a> (<a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle)</td></tr>
119
120<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a pointer to a resource by handle, or null if the resource does not exist.  <a href="#Ogre_1_1TextureManagera28"></a><br><br></td></tr>
121<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera29">resourceExists</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name)</td></tr>
122
123<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether the named resource exists in this manager.  <a href="#Ogre_1_1TextureManagera29"></a><br><br></td></tr>
124<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera30">resourceExists</a> (<a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle)</td></tr>
125
126<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether a resource with the given handle exists in this manager.  <a href="#Ogre_1_1TextureManagera30"></a><br><br></td></tr>
127<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera31">_notifyResourceTouched</a> (<a class="el" href="classOgre_1_1Resource.html">Resource</a> *res)</td></tr>
128
129<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Notify this manager that a resource which it manages has been 'touched', ie used.  <a href="#Ogre_1_1TextureManagera31"></a><br><br></td></tr>
130<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera32">_notifyResourceLoaded</a> (<a class="el" href="classOgre_1_1Resource.html">Resource</a> *res)</td></tr>
131
132<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Notify this manager that a resource which it manages has been loaded.  <a href="#Ogre_1_1TextureManagera32"></a><br><br></td></tr>
133<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera33">_notifyResourceUnloaded</a> (<a class="el" href="classOgre_1_1Resource.html">Resource</a> *res)</td></tr>
134
135<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Notify this manager that a resource which it manages has been unloaded.  <a href="#Ogre_1_1TextureManagera33"></a><br><br></td></tr>
136<tr><td class="memItemLeft" nowrap align=right valign=top>virtual const <a class="el" href="namespaceOgre.html#a580">StringVector</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera35">getScriptPatterns</a> (void) const </td></tr>
137
138<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the file patterns which should be used to find scripts for this <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a>.  <a href="#Ogre_1_1TextureManagera35"></a><br><br></td></tr>
139<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera36">parseScript</a> (<a class="el" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a> &amp;stream, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;groupName)</td></tr>
140
141<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Parse the definition of a set of resources from a script file.  <a href="#Ogre_1_1TextureManagera36"></a><br><br></td></tr>
142<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="namespaceOgre.html#a465">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera37">getLoadingOrder</a> (void) const </td></tr>
143
144<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the relative loading order of resources of this type.  <a href="#Ogre_1_1TextureManagera37"></a><br><br></td></tr>
145<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera38">getResourceType</a> (void) const </td></tr>
146
147<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a string identifying the type of resource this manager handles.  <a href="#Ogre_1_1TextureManagera38"></a><br><br></td></tr>
148<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw2">ResourceMapIterator</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera39">getResourceIterator</a> (void)</td></tr>
149
150<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns an iterator over all resources in this manager.  <a href="#Ogre_1_1TextureManagera39"></a><br><br></td></tr>
151<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
152<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagere0">getSingleton</a> (void)</td></tr>
153
154<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Override standard <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> retrieval.  <a href="#Ogre_1_1GpuProgramManagere0"></a><br><br></td></tr>
155<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagere1">getSingletonPtr</a> (void)</td></tr>
156
157<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Override standard <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> retrieval.  <a href="#Ogre_1_1GpuProgramManagere1"></a><br><br></td></tr>
158<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
159<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Resource.html">Resource</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerb0">createImpl</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, bool isManual, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader, const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *params)</td></tr>
160
161<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><dl compact><dt><b>Remarks:</b></dt><dd>Subclasses must override this method and create a subclass of <a class="el" href="classOgre_1_1Resource.html">Resource</a>. </dd></dl>
162<dl compact><dt><b>Parameters:</b></dt><dd>
163  <table border="0" cellspacing="2" cellpadding="0">
164    <tr><td valign=top><em>name</em>&nbsp;</td><td>The unique name of the resource </td></tr>
165    <tr><td valign=top><em>group</em>&nbsp;</td><td>The name of the resource group to attach this new resource to </td></tr>
166    <tr><td valign=top><em>isManual</em>&nbsp;</td><td>Is this resource manually loaded? If so, you should really populate the loader parameter in order that the load process can call the loader back when loading is required. </td></tr>
167    <tr><td valign=top><em>loader</em>&nbsp;</td><td>Pointer to a ManualLoader implementation which will be called when the <a class="el" href="classOgre_1_1Resource.html">Resource</a> wishes to load (should be supplied if you set isManual to true). You can in fact leave this parameter null if you wish, but the <a class="el" href="classOgre_1_1Resource.html">Resource</a> will never be able to reload if anything ever causes it to unload. Therefore provision of a proper ManualLoader instance is strongly recommended. </td></tr>
168    <tr><td valign=top><em>createParams</em>&nbsp;</td><td>If any parameters are required to create an instance, they should be supplied here as name / value pairs. These do not need to be set on the instance (handled elsewhere), just used if required to differentiate which concrete class is created.</td></tr>
169  </table>
170</dl>
171  <a href="#Ogre_1_1GLGpuProgramManagerb0"></a><br><br></td></tr>
172<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Resource.html">Resource</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerb1">createImpl</a> (const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;name, <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;group, bool isManual, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *loader, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;syntaxCode)</td></tr>
173
174<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialised create method with specific parameters.  <a href="#Ogre_1_1GLGpuProgramManagerb1"></a><br><br></td></tr>
175<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb0">getNextHandle</a> (void)</td></tr>
176
177<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocates the next handle.  <a href="#Ogre_1_1TextureManagerb0"></a><br><br></td></tr>
178<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb2">addImpl</a> (<a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;res)</td></tr>
179
180<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a newly created resource to the manager (note weak reference).  <a href="#Ogre_1_1TextureManagerb2"></a><br><br></td></tr>
181<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb3">removeImpl</a> (<a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;res)</td></tr>
182
183<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Remove a resource from this manager; remove it from the lists.  <a href="#Ogre_1_1TextureManagerb3"></a><br><br></td></tr>
184<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb4">checkUsage</a> (void)</td></tr>
185
186<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks memory usage and pages out if required.  <a href="#Ogre_1_1TextureManagerb4"></a><br><br></td></tr>
187<tr><td class="memItemLeft" nowrap align=right valign=top>virtual size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb5">getMemoryUsage</a> (void) const </td></tr>
188
189<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the current memory usage, in bytes.  <a href="#Ogre_1_1TextureManagerb5"></a><br><br></td></tr>
190<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
191<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">SyntaxCodes</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerp0">mSyntaxCodes</a></td></tr>
192
193<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Supported program syntax codes.  <a href="#Ogre_1_1GpuProgramManagerp0"></a><br><br></td></tr>
194<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">ResourceHandleMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp2">mResourcesByHandle</a></td></tr>
195
196<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw0">ResourceMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp3">mResources</a></td></tr>
197
198<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp4">mNextHandle</a></td></tr>
199
200<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp5">mMemoryBudget</a></td></tr>
201
202<tr><td class="memItemLeft" nowrap align=right valign=top>size_t&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp6">mMemoryUsage</a></td></tr>
203
204<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a580">StringVector</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp7">mScriptPatterns</a></td></tr>
205
206<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Patterns to use to look for scripts if supported (e.g. *.overlay).  <a href="#Ogre_1_1TextureManagerp7"></a><br><br></td></tr>
207<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a465">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp8">mLoadOrder</a></td></tr>
208
209<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Loading order relative to other managers, higher is later.  <a href="#Ogre_1_1TextureManagerp8"></a><br><br></td></tr>
210<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a471">String</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp9">mResourceType</a></td></tr>
211
212<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">String identifying the resource type this manager handles.  <a href="#Ogre_1_1TextureManagerp9"></a><br><br></td></tr>
213<tr><td colspan=2><br><h2>Static Protected Attributes</h2></td></tr>
214<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Singleton.html#Ogre_1_1Singletont0">ms_Singleton</a></td></tr>
215
216<tr><td colspan=2><br><h2>Private Types</h2></td></tr>
217<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; <a class="el" href="namespaceOgre.html#a471">String</a>,<br>
218 <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">CreateGpuProgramCallback</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagery0">ProgramMap</a></td></tr>
219
220<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
221<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagery0">ProgramMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerr0">mProgramMap</a></td></tr>
222
223</table>
224<hr><h2>Member Typedef Documentation</h2>
225<a class="anchor" name="Ogre_1_1GLGpuProgramManagerw0" doxytag="Ogre::GLGpuProgramManager::CreateGpuProgramCallback" ></a><p>
226<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
227  <tr>
228    <td class="mdRow">
229      <table cellpadding="0" cellspacing="0" border="0">
230        <tr>
231          <td class="md" nowrap valign="top"> typedef <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a>*(* <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">Ogre::GLGpuProgramManager::CreateGpuProgramCallback</a>)(<a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a>* creator, const <a class="el" href="namespaceOgre.html#a471">String</a>&amp; name, <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> handle, const <a class="el" href="namespaceOgre.html#a471">String</a>&amp; group, bool isManual, <a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a>* loader, <a class="el" href="namespaceOgre.html#a658">GpuProgramType</a> gptype, const <a class="el" href="namespaceOgre.html#a471">String</a>&amp; syntaxCode)
232      </table>
233    </td>
234  </tr>
235</table>
236<table cellspacing=5 cellpadding=0 border=0>
237  <tr>
238    <td>
239      &nbsp;
240    </td>
241    <td>
242
243<p>
244
245<p>
246Definition at line <a class="el" href="OgreGLGpuProgramManager_8h-source.html#l00036">36</a> of file <a class="el" href="OgreGLGpuProgramManager_8h-source.html">OgreGLGpuProgramManager.h</a>.    </td>
247  </tr>
248</table>
249<a class="anchor" name="Ogre_1_1GLGpuProgramManagery0" doxytag="Ogre::GLGpuProgramManager::ProgramMap" ></a><p>
250<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
251  <tr>
252    <td class="mdRow">
253      <table cellpadding="0" cellspacing="0" border="0">
254        <tr>
255          <td class="md" nowrap valign="top"> typedef std::map&lt;<a class="el" href="namespaceOgre.html#a471">String</a>, <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">CreateGpuProgramCallback</a>&gt; <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagery0">Ogre::GLGpuProgramManager::ProgramMap</a><code> [private]</code>
256      </table>
257    </td>
258  </tr>
259</table>
260<table cellspacing=5 cellpadding=0 border=0>
261  <tr>
262    <td>
263      &nbsp;
264    </td>
265    <td>
266
267<p>
268
269<p>
270Definition at line <a class="el" href="OgreGLGpuProgramManager_8h-source.html#l00042">42</a> of file <a class="el" href="OgreGLGpuProgramManager_8h-source.html">OgreGLGpuProgramManager.h</a>.    </td>
271  </tr>
272</table>
273<a class="anchor" name="Ogre_1_1TextureManagerw1" doxytag="Ogre::GLGpuProgramManager::ResourceHandleMap" ></a><p>
274<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
275  <tr>
276    <td class="mdRow">
277      <table cellpadding="0" cellspacing="0" border="0">
278        <tr>
279          <td class="md" nowrap valign="top"> typedef std::map&lt;<a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>, <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a>&gt; <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">Ogre::ResourceManager::ResourceHandleMap</a><code> [inherited]</code>
280      </table>
281    </td>
282  </tr>
283</table>
284<table cellspacing=5 cellpadding=0 border=0>
285  <tr>
286    <td>
287      &nbsp;
288    </td>
289    <td>
290
291<p>
292
293<p>
294Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00387">387</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
295  </tr>
296</table>
297<a class="anchor" name="Ogre_1_1TextureManagerw0" doxytag="Ogre::GLGpuProgramManager::ResourceMap" ></a><p>
298<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
299  <tr>
300    <td class="mdRow">
301      <table cellpadding="0" cellspacing="0" border="0">
302        <tr>
303          <td class="md" nowrap valign="top"> typedef HashMap&lt; <a class="el" href="namespaceOgre.html#a471">String</a>, <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &gt; <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw0">Ogre::ResourceManager::ResourceMap</a><code> [inherited]</code>
304      </table>
305    </td>
306  </tr>
307</table>
308<table cellspacing=5 cellpadding=0 border=0>
309  <tr>
310    <td>
311      &nbsp;
312    </td>
313    <td>
314
315<p>
316
317<p>
318Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00386">386</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
319  </tr>
320</table>
321<a class="anchor" name="Ogre_1_1TextureManagerw2" doxytag="Ogre::GLGpuProgramManager::ResourceMapIterator" ></a><p>
322<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
323  <tr>
324    <td class="mdRow">
325      <table cellpadding="0" cellspacing="0" border="0">
326        <tr>
327          <td class="md" nowrap valign="top"> typedef <a class="el" href="classOgre_1_1MapIterator.html">MapIterator</a>&lt;<a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">ResourceHandleMap</a>&gt; <a class="el" href="classOgre_1_1MapIterator.html">Ogre::ResourceManager::ResourceMapIterator</a><code> [inherited]</code>
328      </table>
329    </td>
330  </tr>
331</table>
332<table cellspacing=5 cellpadding=0 border=0>
333  <tr>
334    <td>
335      &nbsp;
336    </td>
337    <td>
338
339<p>
340
341<p>
342Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00405">405</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
343<p>
344Referenced by <a class="el" href="OgreResourceManager_8h-source.html#l00410">Ogre::ResourceManager::getResourceIterator()</a>.    </td>
345  </tr>
346</table>
347<a class="anchor" name="Ogre_1_1GpuProgramManagerw0" doxytag="Ogre::GLGpuProgramManager::SyntaxCodes" ></a><p>
348<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
349  <tr>
350    <td class="mdRow">
351      <table cellpadding="0" cellspacing="0" border="0">
352        <tr>
353          <td class="md" nowrap valign="top"> typedef std::set&lt;<a class="el" href="namespaceOgre.html#a471">String</a>&gt; <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">Ogre::GpuProgramManager::SyntaxCodes</a><code> [inherited]</code>
354      </table>
355    </td>
356  </tr>
357</table>
358<table cellspacing=5 cellpadding=0 border=0>
359  <tr>
360    <td>
361      &nbsp;
362    </td>
363    <td>
364
365<p>
366
367<p>
368Definition at line <a class="el" href="OgreGpuProgramManager_8h-source.html#l00040">40</a> of file <a class="el" href="OgreGpuProgramManager_8h-source.html">OgreGpuProgramManager.h</a>.
369<p>
370Referenced by <a class="el" href="OgreGpuProgramManager_8h-source.html#l00084">Ogre::GpuProgramManager::getSupportedSyntax()</a>.    </td>
371  </tr>
372</table>
373<hr><h2>Constructor &amp; Destructor Documentation</h2>
374<a class="anchor" name="Ogre_1_1GLGpuProgramManagera0" doxytag="Ogre::GLGpuProgramManager::GLGpuProgramManager" ></a><p>
375<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
376  <tr>
377    <td class="mdRow">
378      <table cellpadding="0" cellspacing="0" border="0">
379        <tr>
380          <td class="md" nowrap valign="top"> Ogre::GLGpuProgramManager::GLGpuProgramManager </td>
381          <td class="md" valign="top">(&nbsp;</td>
382          <td class="mdname1" valign="top" nowrap>          </td>
383          <td class="md" valign="top">&nbsp;)&nbsp;</td>
384          <td class="md" nowrap></td>
385        </tr>
386
387      </table>
388    </td>
389  </tr>
390</table>
391<table cellspacing=5 cellpadding=0 border=0>
392  <tr>
393    <td>
394      &nbsp;
395    </td>
396    <td>
397
398<p>
399    </td>
400  </tr>
401</table>
402<a class="anchor" name="Ogre_1_1GLGpuProgramManagera1" doxytag="Ogre::GLGpuProgramManager::~GLGpuProgramManager" ></a><p>
403<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
404  <tr>
405    <td class="mdRow">
406      <table cellpadding="0" cellspacing="0" border="0">
407        <tr>
408          <td class="md" nowrap valign="top"> Ogre::GLGpuProgramManager::~<a class="el" href="classOgre_1_1GLGpuProgramManager.html">GLGpuProgramManager</a> </td>
409          <td class="md" valign="top">(&nbsp;</td>
410          <td class="mdname1" valign="top" nowrap>          </td>
411          <td class="md" valign="top">&nbsp;)&nbsp;</td>
412          <td class="md" nowrap></td>
413        </tr>
414
415      </table>
416    </td>
417  </tr>
418</table>
419<table cellspacing=5 cellpadding=0 border=0>
420  <tr>
421    <td>
422      &nbsp;
423    </td>
424    <td>
425
426<p>
427    </td>
428  </tr>
429</table>
430<hr><h2>Member Function Documentation</h2>
431<a class="anchor" name="Ogre_1_1TextureManagera32" doxytag="Ogre::GLGpuProgramManager::_notifyResourceLoaded" ></a><p>
432<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
433  <tr>
434    <td class="mdRow">
435      <table cellpadding="0" cellspacing="0" border="0">
436        <tr>
437          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::_notifyResourceLoaded </td>
438          <td class="md" valign="top">(&nbsp;</td>
439          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Resource.html">Resource</a> *&nbsp;</td>
440          <td class="mdname1" valign="top" nowrap> <em>res</em>          </td>
441          <td class="md" valign="top">&nbsp;)&nbsp;</td>
442          <td class="md" nowrap><code> [virtual, inherited]</code></td>
443        </tr>
444
445      </table>
446    </td>
447  </tr>
448</table>
449<table cellspacing=5 cellpadding=0 border=0>
450  <tr>
451    <td>
452      &nbsp;
453    </td>
454    <td>
455
456<p>
457Notify this manager that a resource which it manages has been loaded.
458<p>
459    </td>
460  </tr>
461</table>
462<a class="anchor" name="Ogre_1_1TextureManagera31" doxytag="Ogre::GLGpuProgramManager::_notifyResourceTouched" ></a><p>
463<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
464  <tr>
465    <td class="mdRow">
466      <table cellpadding="0" cellspacing="0" border="0">
467        <tr>
468          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::_notifyResourceTouched </td>
469          <td class="md" valign="top">(&nbsp;</td>
470          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Resource.html">Resource</a> *&nbsp;</td>
471          <td class="mdname1" valign="top" nowrap> <em>res</em>          </td>
472          <td class="md" valign="top">&nbsp;)&nbsp;</td>
473          <td class="md" nowrap><code> [virtual, inherited]</code></td>
474        </tr>
475
476      </table>
477    </td>
478  </tr>
479</table>
480<table cellspacing=5 cellpadding=0 border=0>
481  <tr>
482    <td>
483      &nbsp;
484    </td>
485    <td>
486
487<p>
488Notify this manager that a resource which it manages has been 'touched', ie used.
489<p>
490    </td>
491  </tr>
492</table>
493<a class="anchor" name="Ogre_1_1TextureManagera33" doxytag="Ogre::GLGpuProgramManager::_notifyResourceUnloaded" ></a><p>
494<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
495  <tr>
496    <td class="mdRow">
497      <table cellpadding="0" cellspacing="0" border="0">
498        <tr>
499          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::_notifyResourceUnloaded </td>
500          <td class="md" valign="top">(&nbsp;</td>
501          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Resource.html">Resource</a> *&nbsp;</td>
502          <td class="mdname1" valign="top" nowrap> <em>res</em>          </td>
503          <td class="md" valign="top">&nbsp;)&nbsp;</td>
504          <td class="md" nowrap><code> [virtual, inherited]</code></td>
505        </tr>
506
507      </table>
508    </td>
509  </tr>
510</table>
511<table cellspacing=5 cellpadding=0 border=0>
512  <tr>
513    <td>
514      &nbsp;
515    </td>
516    <td>
517
518<p>
519Notify this manager that a resource which it manages has been unloaded.
520<p>
521    </td>
522  </tr>
523</table>
524<a class="anchor" name="Ogre_1_1GpuProgramManagera10" doxytag="Ogre::GLGpuProgramManager::_pushSyntaxCode" ></a><p>
525<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
526  <tr>
527    <td class="mdRow">
528      <table cellpadding="0" cellspacing="0" border="0">
529        <tr>
530          <td class="md" nowrap valign="top"> virtual void Ogre::GpuProgramManager::_pushSyntaxCode </td>
531          <td class="md" valign="top">(&nbsp;</td>
532          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
533          <td class="mdname1" valign="top" nowrap> <em>syntaxCode</em>          </td>
534          <td class="md" valign="top">&nbsp;)&nbsp;</td>
535          <td class="md" nowrap><code> [virtual, inherited]</code></td>
536        </tr>
537
538      </table>
539    </td>
540  </tr>
541</table>
542<table cellspacing=5 cellpadding=0 border=0>
543  <tr>
544    <td>
545      &nbsp;
546    </td>
547    <td>
548
549<p>
550Internal method for populating the supported syntax codes, called by <a class="el" href="classOgre_1_1RenderSystem.html">RenderSystem</a>.
551<p>
552
553<p>
554Definition at line <a class="el" href="OgreGpuProgramManager_8h-source.html#l00140">140</a> of file <a class="el" href="OgreGpuProgramManager_8h-source.html">OgreGpuProgramManager.h</a>.
555<p>
556References <a class="el" href="OgrePrerequisites_8h-source.html#l00156">Ogre::String</a>.    </td>
557  </tr>
558</table>
559<a class="anchor" name="Ogre_1_1TextureManagerb2" doxytag="Ogre::GLGpuProgramManager::addImpl" ></a><p>
560<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
561  <tr>
562    <td class="mdRow">
563      <table cellpadding="0" cellspacing="0" border="0">
564        <tr>
565          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::addImpl </td>
566          <td class="md" valign="top">(&nbsp;</td>
567          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;&nbsp;</td>
568          <td class="mdname1" valign="top" nowrap> <em>res</em>          </td>
569          <td class="md" valign="top">&nbsp;)&nbsp;</td>
570          <td class="md" nowrap><code> [protected, virtual, inherited]</code></td>
571        </tr>
572
573      </table>
574    </td>
575  </tr>
576</table>
577<table cellspacing=5 cellpadding=0 border=0>
578  <tr>
579    <td>
580      &nbsp;
581    </td>
582    <td>
583
584<p>
585Add a newly created resource to the manager (note weak reference).
586<p>
587    </td>
588  </tr>
589</table>
590<a class="anchor" name="Ogre_1_1TextureManagerb4" doxytag="Ogre::GLGpuProgramManager::checkUsage" ></a><p>
591<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
592  <tr>
593    <td class="mdRow">
594      <table cellpadding="0" cellspacing="0" border="0">
595        <tr>
596          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::checkUsage </td>
597          <td class="md" valign="top">(&nbsp;</td>
598          <td class="md" nowrap valign="top">void&nbsp;</td>
599          <td class="mdname1" valign="top" nowrap>          </td>
600          <td class="md" valign="top">&nbsp;)&nbsp;</td>
601          <td class="md" nowrap><code> [protected, virtual, inherited]</code></td>
602        </tr>
603
604      </table>
605    </td>
606  </tr>
607</table>
608<table cellspacing=5 cellpadding=0 border=0>
609  <tr>
610    <td>
611      &nbsp;
612    </td>
613    <td>
614
615<p>
616Checks memory usage and pages out if required.
617<p>
618    </td>
619  </tr>
620</table>
621<a class="anchor" name="Ogre_1_1TextureManagera14" doxytag="Ogre::GLGpuProgramManager::create" ></a><p>
622<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
623  <tr>
624    <td class="mdRow">
625      <table cellpadding="0" cellspacing="0" border="0">
626        <tr>
627          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::ResourceManager::create </td>
628          <td class="md" valign="top">(&nbsp;</td>
629          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
630          <td class="mdname" nowrap> <em>name</em>, </td>
631        </tr>
632        <tr>
633          <td class="md" nowrap align="right"></td>
634          <td></td>
635          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
636          <td class="mdname" nowrap> <em>group</em>, </td>
637        </tr>
638        <tr>
639          <td class="md" nowrap align="right"></td>
640          <td></td>
641          <td class="md" nowrap>bool&nbsp;</td>
642          <td class="mdname" nowrap> <em>isManual</em> = false, </td>
643        </tr>
644        <tr>
645          <td class="md" nowrap align="right"></td>
646          <td></td>
647          <td class="md" nowrap><a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *&nbsp;</td>
648          <td class="mdname" nowrap> <em>loader</em> = 0, </td>
649        </tr>
650        <tr>
651          <td class="md" nowrap align="right"></td>
652          <td></td>
653          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *&nbsp;</td>
654          <td class="mdname" nowrap> <em>createParams</em> = 0</td>
655        </tr>
656        <tr>
657          <td></td>
658          <td class="md">)&nbsp;</td>
659          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
660        </tr>
661
662      </table>
663    </td>
664  </tr>
665</table>
666<table cellspacing=5 cellpadding=0 border=0>
667  <tr>
668    <td>
669      &nbsp;
670    </td>
671    <td>
672
673<p>
674Creates a new blank resource, but does not immediately load it.
675<p>
676<dl compact><dt><b>Remarks:</b></dt><dd><a class="el" href="classOgre_1_1Resource.html">Resource</a> managers handle disparate types of resources, so if you want to get at the detailed interface of this resource, you'll have to cast the result to the subclass you know you're creating. </dd></dl>
677<dl compact><dt><b>Parameters:</b></dt><dd>
678  <table border="0" cellspacing="2" cellpadding="0">
679    <tr><td valign=top><em>name</em>&nbsp;</td><td>The unique name of the resource </td></tr>
680    <tr><td valign=top><em>group</em>&nbsp;</td><td>The name of the resource group to attach this new resource to </td></tr>
681    <tr><td valign=top><em>isManual</em>&nbsp;</td><td>Is this resource manually loaded? If so, you should really populate the loader parameter in order that the load process can call the loader back when loading is required. </td></tr>
682    <tr><td valign=top><em>loader</em>&nbsp;</td><td>Pointer to a ManualLoader implementation which will be called when the <a class="el" href="classOgre_1_1Resource.html">Resource</a> wishes to load (should be supplied if you set isManual to true). You can in fact leave this parameter null if you wish, but the <a class="el" href="classOgre_1_1Resource.html">Resource</a> will never be able to reload if anything ever causes it to unload. Therefore provision of a proper ManualLoader instance is strongly recommended. </td></tr>
683    <tr><td valign=top><em>createParams</em>&nbsp;</td><td>If any parameters are required to create an instance, they should be supplied here as name / value pairs </td></tr>
684  </table>
685</dl>
686    </td>
687  </tr>
688</table>
689<a class="anchor" name="Ogre_1_1GpuProgramManagera9" doxytag="Ogre::GLGpuProgramManager::create" ></a><p>
690<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
691  <tr>
692    <td class="mdRow">
693      <table cellpadding="0" cellspacing="0" border="0">
694        <tr>
695          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::GpuProgramManager::create </td>
696          <td class="md" valign="top">(&nbsp;</td>
697          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
698          <td class="mdname" nowrap> <em>name</em>, </td>
699        </tr>
700        <tr>
701          <td class="md" nowrap align="right"></td>
702          <td></td>
703          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
704          <td class="mdname" nowrap> <em>group</em>, </td>
705        </tr>
706        <tr>
707          <td class="md" nowrap align="right"></td>
708          <td></td>
709          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
710          <td class="mdname" nowrap> <em>gptype</em>, </td>
711        </tr>
712        <tr>
713          <td class="md" nowrap align="right"></td>
714          <td></td>
715          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
716          <td class="mdname" nowrap> <em>syntaxCode</em>, </td>
717        </tr>
718        <tr>
719          <td class="md" nowrap align="right"></td>
720          <td></td>
721          <td class="md" nowrap>bool&nbsp;</td>
722          <td class="mdname" nowrap> <em>isManual</em> = false, </td>
723        </tr>
724        <tr>
725          <td class="md" nowrap align="right"></td>
726          <td></td>
727          <td class="md" nowrap><a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *&nbsp;</td>
728          <td class="mdname" nowrap> <em>loader</em> = 0</td>
729        </tr>
730        <tr>
731          <td></td>
732          <td class="md">)&nbsp;</td>
733          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
734        </tr>
735
736      </table>
737    </td>
738  </tr>
739</table>
740<table cellspacing=5 cellpadding=0 border=0>
741  <tr>
742    <td>
743      &nbsp;
744    </td>
745    <td>
746
747<p>
748General create method, using specific create parameters instead of name / value pairs.
749<p>
750    </td>
751  </tr>
752</table>
753<a class="anchor" name="Ogre_1_1GLGpuProgramManagerb1" doxytag="Ogre::GLGpuProgramManager::createImpl" ></a><p>
754<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
755  <tr>
756    <td class="mdRow">
757      <table cellpadding="0" cellspacing="0" border="0">
758        <tr>
759          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Resource.html">Resource</a>* Ogre::GLGpuProgramManager::createImpl </td>
760          <td class="md" valign="top">(&nbsp;</td>
761          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
762          <td class="mdname" nowrap> <em>name</em>, </td>
763        </tr>
764        <tr>
765          <td class="md" nowrap align="right"></td>
766          <td></td>
767          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
768          <td class="mdname" nowrap> <em>handle</em>, </td>
769        </tr>
770        <tr>
771          <td class="md" nowrap align="right"></td>
772          <td></td>
773          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
774          <td class="mdname" nowrap> <em>group</em>, </td>
775        </tr>
776        <tr>
777          <td class="md" nowrap align="right"></td>
778          <td></td>
779          <td class="md" nowrap>bool&nbsp;</td>
780          <td class="mdname" nowrap> <em>isManual</em>, </td>
781        </tr>
782        <tr>
783          <td class="md" nowrap align="right"></td>
784          <td></td>
785          <td class="md" nowrap><a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *&nbsp;</td>
786          <td class="mdname" nowrap> <em>loader</em>, </td>
787        </tr>
788        <tr>
789          <td class="md" nowrap align="right"></td>
790          <td></td>
791          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
792          <td class="mdname" nowrap> <em>gptype</em>, </td>
793        </tr>
794        <tr>
795          <td class="md" nowrap align="right"></td>
796          <td></td>
797          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
798          <td class="mdname" nowrap> <em>syntaxCode</em></td>
799        </tr>
800        <tr>
801          <td></td>
802          <td class="md">)&nbsp;</td>
803          <td class="md" colspan="2"><code> [protected, virtual]</code></td>
804        </tr>
805
806      </table>
807    </td>
808  </tr>
809</table>
810<table cellspacing=5 cellpadding=0 border=0>
811  <tr>
812    <td>
813      &nbsp;
814    </td>
815    <td>
816
817<p>
818Specialised create method with specific parameters.
819<p>
820
821<p>
822Implements <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerb0">Ogre::GpuProgramManager</a>.    </td>
823  </tr>
824</table>
825<a class="anchor" name="Ogre_1_1GLGpuProgramManagerb0" doxytag="Ogre::GLGpuProgramManager::createImpl" ></a><p>
826<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
827  <tr>
828    <td class="mdRow">
829      <table cellpadding="0" cellspacing="0" border="0">
830        <tr>
831          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Resource.html">Resource</a>* Ogre::GLGpuProgramManager::createImpl </td>
832          <td class="md" valign="top">(&nbsp;</td>
833          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
834          <td class="mdname" nowrap> <em>name</em>, </td>
835        </tr>
836        <tr>
837          <td class="md" nowrap align="right"></td>
838          <td></td>
839          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
840          <td class="mdname" nowrap> <em>handle</em>, </td>
841        </tr>
842        <tr>
843          <td class="md" nowrap align="right"></td>
844          <td></td>
845          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
846          <td class="mdname" nowrap> <em>group</em>, </td>
847        </tr>
848        <tr>
849          <td class="md" nowrap align="right"></td>
850          <td></td>
851          <td class="md" nowrap>bool&nbsp;</td>
852          <td class="mdname" nowrap> <em>isManual</em>, </td>
853        </tr>
854        <tr>
855          <td class="md" nowrap align="right"></td>
856          <td></td>
857          <td class="md" nowrap><a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *&nbsp;</td>
858          <td class="mdname" nowrap> <em>loader</em>, </td>
859        </tr>
860        <tr>
861          <td class="md" nowrap align="right"></td>
862          <td></td>
863          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *&nbsp;</td>
864          <td class="mdname" nowrap> <em>params</em></td>
865        </tr>
866        <tr>
867          <td></td>
868          <td class="md">)&nbsp;</td>
869          <td class="md" colspan="2"><code> [protected, virtual]</code></td>
870        </tr>
871
872      </table>
873    </td>
874  </tr>
875</table>
876<table cellspacing=5 cellpadding=0 border=0>
877  <tr>
878    <td>
879      &nbsp;
880    </td>
881    <td>
882
883<p>
884<dl compact><dt><b>Remarks:</b></dt><dd>Subclasses must override this method and create a subclass of <a class="el" href="classOgre_1_1Resource.html">Resource</a>. </dd></dl>
885<dl compact><dt><b>Parameters:</b></dt><dd>
886  <table border="0" cellspacing="2" cellpadding="0">
887    <tr><td valign=top><em>name</em>&nbsp;</td><td>The unique name of the resource </td></tr>
888    <tr><td valign=top><em>group</em>&nbsp;</td><td>The name of the resource group to attach this new resource to </td></tr>
889    <tr><td valign=top><em>isManual</em>&nbsp;</td><td>Is this resource manually loaded? If so, you should really populate the loader parameter in order that the load process can call the loader back when loading is required. </td></tr>
890    <tr><td valign=top><em>loader</em>&nbsp;</td><td>Pointer to a ManualLoader implementation which will be called when the <a class="el" href="classOgre_1_1Resource.html">Resource</a> wishes to load (should be supplied if you set isManual to true). You can in fact leave this parameter null if you wish, but the <a class="el" href="classOgre_1_1Resource.html">Resource</a> will never be able to reload if anything ever causes it to unload. Therefore provision of a proper ManualLoader instance is strongly recommended. </td></tr>
891    <tr><td valign=top><em>createParams</em>&nbsp;</td><td>If any parameters are required to create an instance, they should be supplied here as name / value pairs. These do not need to be set on the instance (handled elsewhere), just used if required to differentiate which concrete class is created.</td></tr>
892  </table>
893</dl>
894 
895<p>
896
897<p>
898Implements <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerb1">Ogre::ResourceManager</a>.    </td>
899  </tr>
900</table>
901<a class="anchor" name="Ogre_1_1GLGpuProgramManagera2" doxytag="Ogre::GLGpuProgramManager::createParameters" ></a><p>
902<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
903  <tr>
904    <td class="mdRow">
905      <table cellpadding="0" cellspacing="0" border="0">
906        <tr>
907          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1SharedPtr.html">GpuProgramParametersSharedPtr</a> Ogre::GLGpuProgramManager::createParameters </td>
908          <td class="md" valign="top">(&nbsp;</td>
909          <td class="md" nowrap valign="top">void&nbsp;</td>
910          <td class="mdname1" valign="top" nowrap>          </td>
911          <td class="md" valign="top">&nbsp;)&nbsp;</td>
912          <td class="md" nowrap><code> [virtual]</code></td>
913        </tr>
914
915      </table>
916    </td>
917  </tr>
918</table>
919<table cellspacing=5 cellpadding=0 border=0>
920  <tr>
921    <td>
922      &nbsp;
923    </td>
924    <td>
925
926<p>
927Creates a new <a class="el" href="classOgre_1_1GpuProgramParameters.html">GpuProgramParameters</a> instance which can be used to bind parameters to your programs.
928<p>
929<dl compact><dt><b>Remarks:</b></dt><dd>Program parameters can be shared between multiple programs if you wish. </dd></dl>
930
931<p>
932Implements <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagera6">Ogre::GpuProgramManager</a>.    </td>
933  </tr>
934</table>
935<a class="anchor" name="Ogre_1_1GpuProgramManagera7" doxytag="Ogre::GLGpuProgramManager::createProgram" ></a><p>
936<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
937  <tr>
938    <td class="mdRow">
939      <table cellpadding="0" cellspacing="0" border="0">
940        <tr>
941          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a> Ogre::GpuProgramManager::createProgram </td>
942          <td class="md" valign="top">(&nbsp;</td>
943          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
944          <td class="mdname" nowrap> <em>name</em>, </td>
945        </tr>
946        <tr>
947          <td class="md" nowrap align="right"></td>
948          <td></td>
949          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
950          <td class="mdname" nowrap> <em>groupName</em>, </td>
951        </tr>
952        <tr>
953          <td class="md" nowrap align="right"></td>
954          <td></td>
955          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
956          <td class="mdname" nowrap> <em>filename</em>, </td>
957        </tr>
958        <tr>
959          <td class="md" nowrap align="right"></td>
960          <td></td>
961          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
962          <td class="mdname" nowrap> <em>gptype</em>, </td>
963        </tr>
964        <tr>
965          <td class="md" nowrap align="right"></td>
966          <td></td>
967          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
968          <td class="mdname" nowrap> <em>syntaxCode</em></td>
969        </tr>
970        <tr>
971          <td></td>
972          <td class="md">)&nbsp;</td>
973          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
974        </tr>
975
976      </table>
977    </td>
978  </tr>
979</table>
980<table cellspacing=5 cellpadding=0 border=0>
981  <tr>
982    <td>
983      &nbsp;
984    </td>
985    <td>
986
987<p>
988Create a new, unloaded <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a> from a file of assembly.
989<p>
990<dl compact><dt><b>Remarks:</b></dt><dd>Use this method in preference to the 'load' methods if you wish to define a <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a>, but not load it yet; useful for saving memory. </dd></dl>
991<dl compact><dt><b></b></dt><dd>This method creates a new program of the type specified as the second parameter. As with all types of <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a>, this class will search for the file in all resource locations it has been configured to look in. </dd></dl>
992<dl compact><dt><b>Parameters:</b></dt><dd>
993  <table border="0" cellspacing="2" cellpadding="0">
994    <tr><td valign=top><em>name</em>&nbsp;</td><td>The name of the program </td></tr>
995    <tr><td valign=top><em>groupName</em>&nbsp;</td><td>The name of the resource group </td></tr>
996    <tr><td valign=top><em>filename</em>&nbsp;</td><td>The file to load </td></tr>
997    <tr><td valign=top><em>syntaxCode</em>&nbsp;</td><td>The name of the syntax to be used for this program e.g. arbvp1, vs_1_1 </td></tr>
998    <tr><td valign=top><em>gptype</em>&nbsp;</td><td>The type of program to create</td></tr>
999  </table>
1000</dl>
1001    </td>
1002  </tr>
1003</table>
1004<a class="anchor" name="Ogre_1_1GpuProgramManagera8" doxytag="Ogre::GLGpuProgramManager::createProgramFromString" ></a><p>
1005<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1006  <tr>
1007    <td class="mdRow">
1008      <table cellpadding="0" cellspacing="0" border="0">
1009        <tr>
1010          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a> Ogre::GpuProgramManager::createProgramFromString </td>
1011          <td class="md" valign="top">(&nbsp;</td>
1012          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1013          <td class="mdname" nowrap> <em>name</em>, </td>
1014        </tr>
1015        <tr>
1016          <td class="md" nowrap align="right"></td>
1017          <td></td>
1018          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1019          <td class="mdname" nowrap> <em>groupName</em>, </td>
1020        </tr>
1021        <tr>
1022          <td class="md" nowrap align="right"></td>
1023          <td></td>
1024          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1025          <td class="mdname" nowrap> <em>code</em>, </td>
1026        </tr>
1027        <tr>
1028          <td class="md" nowrap align="right"></td>
1029          <td></td>
1030          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
1031          <td class="mdname" nowrap> <em>gptype</em>, </td>
1032        </tr>
1033        <tr>
1034          <td class="md" nowrap align="right"></td>
1035          <td></td>
1036          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1037          <td class="mdname" nowrap> <em>syntaxCode</em></td>
1038        </tr>
1039        <tr>
1040          <td></td>
1041          <td class="md">)&nbsp;</td>
1042          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
1043        </tr>
1044
1045      </table>
1046    </td>
1047  </tr>
1048</table>
1049<table cellspacing=5 cellpadding=0 border=0>
1050  <tr>
1051    <td>
1052      &nbsp;
1053    </td>
1054    <td>
1055
1056<p>
1057Create a GPU program from a string of assembly code.
1058<p>
1059<dl compact><dt><b>Remarks:</b></dt><dd>Use this method in preference to the 'load' methods if you wish to define a <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a>, but not load it yet; useful for saving memory. </dd></dl>
1060<dl compact><dt><b></b></dt><dd>The assembly code must be compatible with this manager - call the getSupportedSyntax method for details of the supported syntaxes </dd></dl>
1061<dl compact><dt><b>Parameters:</b></dt><dd>
1062  <table border="0" cellspacing="2" cellpadding="0">
1063    <tr><td valign=top><em>name</em>&nbsp;</td><td>The identifying name to give this program, which can be used to retrieve this program later with getByName. </td></tr>
1064    <tr><td valign=top><em>groupName</em>&nbsp;</td><td>The name of the resource group </td></tr>
1065    <tr><td valign=top><em>code</em>&nbsp;</td><td>A string of assembly code which will form the program to run </td></tr>
1066    <tr><td valign=top><em>gptype</em>&nbsp;</td><td>The type of prgram to create. </td></tr>
1067    <tr><td valign=top><em>syntaxCode</em>&nbsp;</td><td>The name of the syntax to be used for this program e.g. arbvp1, vs_1_1</td></tr>
1068  </table>
1069</dl>
1070    </td>
1071  </tr>
1072</table>
1073<a class="anchor" name="Ogre_1_1TextureManagera28" doxytag="Ogre::GLGpuProgramManager::getByHandle" ></a><p>
1074<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1075  <tr>
1076    <td class="mdRow">
1077      <table cellpadding="0" cellspacing="0" border="0">
1078        <tr>
1079          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::ResourceManager::getByHandle </td>
1080          <td class="md" valign="top">(&nbsp;</td>
1081          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
1082          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
1083          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1084          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1085        </tr>
1086
1087      </table>
1088    </td>
1089  </tr>
1090</table>
1091<table cellspacing=5 cellpadding=0 border=0>
1092  <tr>
1093    <td>
1094      &nbsp;
1095    </td>
1096    <td>
1097
1098<p>
1099Retrieves a pointer to a resource by handle, or null if the resource does not exist.
1100<p>
1101    </td>
1102  </tr>
1103</table>
1104<a class="anchor" name="Ogre_1_1TextureManagera27" doxytag="Ogre::GLGpuProgramManager::getByName" ></a><p>
1105<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1106  <tr>
1107    <td class="mdRow">
1108      <table cellpadding="0" cellspacing="0" border="0">
1109        <tr>
1110          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::ResourceManager::getByName </td>
1111          <td class="md" valign="top">(&nbsp;</td>
1112          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1113          <td class="mdname1" valign="top" nowrap> <em>name</em>          </td>
1114          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1115          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1116        </tr>
1117
1118      </table>
1119    </td>
1120  </tr>
1121</table>
1122<table cellspacing=5 cellpadding=0 border=0>
1123  <tr>
1124    <td>
1125      &nbsp;
1126    </td>
1127    <td>
1128
1129<p>
1130Retrieves a pointer to a resource by name, or null if the resource does not exist.
1131<p>
1132    </td>
1133  </tr>
1134</table>
1135<a class="anchor" name="Ogre_1_1GpuProgramManagera11" doxytag="Ogre::GLGpuProgramManager::getByName" ></a><p>
1136<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1137  <tr>
1138    <td class="mdRow">
1139      <table cellpadding="0" cellspacing="0" border="0">
1140        <tr>
1141          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::GpuProgramManager::getByName </td>
1142          <td class="md" valign="top">(&nbsp;</td>
1143          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1144          <td class="mdname" nowrap> <em>name</em>, </td>
1145        </tr>
1146        <tr>
1147          <td class="md" nowrap align="right"></td>
1148          <td></td>
1149          <td class="md" nowrap>bool&nbsp;</td>
1150          <td class="mdname" nowrap> <em>preferHighLevelPrograms</em> = true</td>
1151        </tr>
1152        <tr>
1153          <td></td>
1154          <td class="md">)&nbsp;</td>
1155          <td class="md" colspan="2"><code> [inherited]</code></td>
1156        </tr>
1157
1158      </table>
1159    </td>
1160  </tr>
1161</table>
1162<table cellspacing=5 cellpadding=0 border=0>
1163  <tr>
1164    <td>
1165      &nbsp;
1166    </td>
1167    <td>
1168
1169<p>
1170Overrides the standard <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> getByName method.
1171<p>
1172<dl compact><dt><b>Parameters:</b></dt><dd>
1173  <table border="0" cellspacing="2" cellpadding="0">
1174    <tr><td valign=top><em>name</em>&nbsp;</td><td>The name of the program to retrieve </td></tr>
1175    <tr><td valign=top><em>preferHighLevelPrograms</em>&nbsp;</td><td>If set to true (the default), high level programs will be returned in preference to low-level programs. </td></tr>
1176  </table>
1177</dl>
1178    </td>
1179  </tr>
1180</table>
1181<a class="anchor" name="Ogre_1_1TextureManagera37" doxytag="Ogre::GLGpuProgramManager::getLoadingOrder" ></a><p>
1182<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1183  <tr>
1184    <td class="mdRow">
1185      <table cellpadding="0" cellspacing="0" border="0">
1186        <tr>
1187          <td class="md" nowrap valign="top"> virtual <a class="el" href="namespaceOgre.html#a465">Real</a> Ogre::ResourceManager::getLoadingOrder </td>
1188          <td class="md" valign="top">(&nbsp;</td>
1189          <td class="md" nowrap valign="top">void&nbsp;</td>
1190          <td class="mdname1" valign="top" nowrap>          </td>
1191          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1192          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1193        </tr>
1194
1195      </table>
1196    </td>
1197  </tr>
1198</table>
1199<table cellspacing=5 cellpadding=0 border=0>
1200  <tr>
1201    <td>
1202      &nbsp;
1203    </td>
1204    <td>
1205
1206<p>
1207Gets the relative loading order of resources of this type.
1208<p>
1209<dl compact><dt><b>Remarks:</b></dt><dd>There are dependencies between some kinds of resource in terms of loading order, and this value enumerates that. Higher values load later during bulk loading tasks.</dd></dl>
1210
1211<p>
1212Implements <a class="el" href="classOgre_1_1ScriptLoader.html#Ogre_1_1ScriptLoadera3">Ogre::ScriptLoader</a>.
1213<p>
1214Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00340">340</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
1215<p>
1216References <a class="el" href="OgrePrerequisites_8h-source.html#l00113">Ogre::Real</a>.    </td>
1217  </tr>
1218</table>
1219<a class="anchor" name="Ogre_1_1TextureManagera16" doxytag="Ogre::GLGpuProgramManager::getMemoryBudget" ></a><p>
1220<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1221  <tr>
1222    <td class="mdRow">
1223      <table cellpadding="0" cellspacing="0" border="0">
1224        <tr>
1225          <td class="md" nowrap valign="top"> virtual size_t Ogre::ResourceManager::getMemoryBudget </td>
1226          <td class="md" valign="top">(&nbsp;</td>
1227          <td class="md" nowrap valign="top">void&nbsp;</td>
1228          <td class="mdname1" valign="top" nowrap>          </td>
1229          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1230          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1231        </tr>
1232
1233      </table>
1234    </td>
1235  </tr>
1236</table>
1237<table cellspacing=5 cellpadding=0 border=0>
1238  <tr>
1239    <td>
1240      &nbsp;
1241    </td>
1242    <td>
1243
1244<p>
1245Get the limit on the amount of memory this resource handler may use.
1246<p>
1247    </td>
1248  </tr>
1249</table>
1250<a class="anchor" name="Ogre_1_1TextureManagerb5" doxytag="Ogre::GLGpuProgramManager::getMemoryUsage" ></a><p>
1251<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1252  <tr>
1253    <td class="mdRow">
1254      <table cellpadding="0" cellspacing="0" border="0">
1255        <tr>
1256          <td class="md" nowrap valign="top"> virtual size_t Ogre::ResourceManager::getMemoryUsage </td>
1257          <td class="md" valign="top">(&nbsp;</td>
1258          <td class="md" nowrap valign="top">void&nbsp;</td>
1259          <td class="mdname1" valign="top" nowrap>          </td>
1260          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1261          <td class="md" nowrap> const<code> [protected, virtual, inherited]</code></td>
1262        </tr>
1263
1264      </table>
1265    </td>
1266  </tr>
1267</table>
1268<table cellspacing=5 cellpadding=0 border=0>
1269  <tr>
1270    <td>
1271      &nbsp;
1272    </td>
1273    <td>
1274
1275<p>
1276Gets the current memory usage, in bytes.
1277<p>
1278
1279<p>
1280Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00382">382</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
1281  </tr>
1282</table>
1283<a class="anchor" name="Ogre_1_1TextureManagerb0" doxytag="Ogre::GLGpuProgramManager::getNextHandle" ></a><p>
1284<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1285  <tr>
1286    <td class="mdRow">
1287      <table cellpadding="0" cellspacing="0" border="0">
1288        <tr>
1289          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> Ogre::ResourceManager::getNextHandle </td>
1290          <td class="md" valign="top">(&nbsp;</td>
1291          <td class="md" nowrap valign="top">void&nbsp;</td>
1292          <td class="mdname1" valign="top" nowrap>          </td>
1293          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1294          <td class="md" nowrap><code> [protected, inherited]</code></td>
1295        </tr>
1296
1297      </table>
1298    </td>
1299  </tr>
1300</table>
1301<table cellspacing=5 cellpadding=0 border=0>
1302  <tr>
1303    <td>
1304      &nbsp;
1305    </td>
1306    <td>
1307
1308<p>
1309Allocates the next handle.
1310<p>
1311    </td>
1312  </tr>
1313</table>
1314<a class="anchor" name="Ogre_1_1TextureManagera39" doxytag="Ogre::GLGpuProgramManager::getResourceIterator" ></a><p>
1315<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1316  <tr>
1317    <td class="mdRow">
1318      <table cellpadding="0" cellspacing="0" border="0">
1319        <tr>
1320          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw2">ResourceMapIterator</a> Ogre::ResourceManager::getResourceIterator </td>
1321          <td class="md" valign="top">(&nbsp;</td>
1322          <td class="md" nowrap valign="top">void&nbsp;</td>
1323          <td class="mdname1" valign="top" nowrap>          </td>
1324          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1325          <td class="md" nowrap><code> [inherited]</code></td>
1326        </tr>
1327
1328      </table>
1329    </td>
1330  </tr>
1331</table>
1332<table cellspacing=5 cellpadding=0 border=0>
1333  <tr>
1334    <td>
1335      &nbsp;
1336    </td>
1337    <td>
1338
1339<p>
1340Returns an iterator over all resources in this manager.
1341<p>
1342<dl compact><dt><b>Note:</b></dt><dd>Use of this iterator is NOT thread safe! </dd></dl>
1343
1344<p>
1345Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00410">410</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
1346<p>
1347References <a class="el" href="OgreResourceManager_8h-source.html#l00405">Ogre::ResourceManager::ResourceMapIterator</a>.    </td>
1348  </tr>
1349</table>
1350<a class="anchor" name="Ogre_1_1TextureManagera38" doxytag="Ogre::GLGpuProgramManager::getResourceType" ></a><p>
1351<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1352  <tr>
1353    <td class="mdRow">
1354      <table cellpadding="0" cellspacing="0" border="0">
1355        <tr>
1356          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a471">String</a>&amp; Ogre::ResourceManager::getResourceType </td>
1357          <td class="md" valign="top">(&nbsp;</td>
1358          <td class="md" nowrap valign="top">void&nbsp;</td>
1359          <td class="mdname1" valign="top" nowrap>          </td>
1360          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1361          <td class="md" nowrap> const<code> [inherited]</code></td>
1362        </tr>
1363
1364      </table>
1365    </td>
1366  </tr>
1367</table>
1368<table cellspacing=5 cellpadding=0 border=0>
1369  <tr>
1370    <td>
1371      &nbsp;
1372    </td>
1373    <td>
1374
1375<p>
1376Gets a string identifying the type of resource this manager handles.
1377<p>
1378
1379<p>
1380Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00343">343</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
1381<p>
1382References <a class="el" href="OgrePrerequisites_8h-source.html#l00156">Ogre::String</a>.    </td>
1383  </tr>
1384</table>
1385<a class="anchor" name="Ogre_1_1TextureManagera35" doxytag="Ogre::GLGpuProgramManager::getScriptPatterns" ></a><p>
1386<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1387  <tr>
1388    <td class="mdRow">
1389      <table cellpadding="0" cellspacing="0" border="0">
1390        <tr>
1391          <td class="md" nowrap valign="top"> virtual const <a class="el" href="namespaceOgre.html#a580">StringVector</a>&amp; Ogre::ResourceManager::getScriptPatterns </td>
1392          <td class="md" valign="top">(&nbsp;</td>
1393          <td class="md" nowrap valign="top">void&nbsp;</td>
1394          <td class="mdname1" valign="top" nowrap>          </td>
1395          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1396          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1397        </tr>
1398
1399      </table>
1400    </td>
1401  </tr>
1402</table>
1403<table cellspacing=5 cellpadding=0 border=0>
1404  <tr>
1405    <td>
1406      &nbsp;
1407    </td>
1408    <td>
1409
1410<p>
1411Gets the file patterns which should be used to find scripts for this <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a>.
1412<p>
1413<dl compact><dt><b>Remarks:</b></dt><dd>Some resource managers can read script files in order to define resources ahead of time. These resources are added to the available list inside the manager, but none are loaded initially. This allows you to load the items that are used on demand, or to load them all as a group if you wish (through <a class="el" href="classOgre_1_1ResourceGroupManager.html">ResourceGroupManager</a>). </dd></dl>
1414<dl compact><dt><b></b></dt><dd>This method lets you determine the file pattern which will be used to identify scripts intended for this manager. </dd></dl>
1415<dl compact><dt><b>Returns:</b></dt><dd>A list of file patterns, in the order they should be searched in. </dd></dl>
1416<dl compact><dt><b>See also:</b></dt><dd>isScriptingSupported, <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagera36">parseScript</a></dd></dl>
1417
1418<p>
1419Implements <a class="el" href="classOgre_1_1ScriptLoader.html#Ogre_1_1ScriptLoadera1">Ogre::ScriptLoader</a>.
1420<p>
1421Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00317">317</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
1422<p>
1423References <a class="el" href="OgreStringVector_8h-source.html#l00036">Ogre::StringVector</a>.    </td>
1424  </tr>
1425</table>
1426<a class="anchor" name="Ogre_1_1GpuProgramManagere0" doxytag="Ogre::GLGpuProgramManager::getSingleton" ></a><p>
1427<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1428  <tr>
1429    <td class="mdRow">
1430      <table cellpadding="0" cellspacing="0" border="0">
1431        <tr>
1432          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a>&amp; Ogre::GpuProgramManager::getSingleton </td>
1433          <td class="md" valign="top">(&nbsp;</td>
1434          <td class="md" nowrap valign="top">void&nbsp;</td>
1435          <td class="mdname1" valign="top" nowrap>          </td>
1436          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1437          <td class="md" nowrap><code> [static, inherited]</code></td>
1438        </tr>
1439
1440      </table>
1441    </td>
1442  </tr>
1443</table>
1444<table cellspacing=5 cellpadding=0 border=0>
1445  <tr>
1446    <td>
1447      &nbsp;
1448    </td>
1449    <td>
1450
1451<p>
1452Override standard <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> retrieval.
1453<p>
1454<dl compact><dt><b>Remarks:</b></dt><dd>Why do we do this? Well, it's because the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> implementation is in a .h file, which means it gets compiled into anybody who includes it. This is needed for the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> template to work, but we actually only want it compiled into the implementation of the class based on the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a>, not all of them. If we don't change this, we get link errors when trying to use the Singleton-based class from an outside dll. </dd></dl>
1455<dl compact><dt><b></b></dt><dd>This method just delegates to the template version anyway, but the implementation stays in this single compilation unit, preventing link errors. </dd></dl>
1456
1457<p>
1458Reimplemented from <a class="el" href="classOgre_1_1Singleton.html#Ogre_1_1Singletone0">Ogre::Singleton&lt; GpuProgramManager &gt;</a>.    </td>
1459  </tr>
1460</table>
1461<a class="anchor" name="Ogre_1_1GpuProgramManagere1" doxytag="Ogre::GLGpuProgramManager::getSingletonPtr" ></a><p>
1462<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1463  <tr>
1464    <td class="mdRow">
1465      <table cellpadding="0" cellspacing="0" border="0">
1466        <tr>
1467          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a>* Ogre::GpuProgramManager::getSingletonPtr </td>
1468          <td class="md" valign="top">(&nbsp;</td>
1469          <td class="md" nowrap valign="top">void&nbsp;</td>
1470          <td class="mdname1" valign="top" nowrap>          </td>
1471          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1472          <td class="md" nowrap><code> [static, inherited]</code></td>
1473        </tr>
1474
1475      </table>
1476    </td>
1477  </tr>
1478</table>
1479<table cellspacing=5 cellpadding=0 border=0>
1480  <tr>
1481    <td>
1482      &nbsp;
1483    </td>
1484    <td>
1485
1486<p>
1487Override standard <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> retrieval.
1488<p>
1489<dl compact><dt><b>Remarks:</b></dt><dd>Why do we do this? Well, it's because the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> implementation is in a .h file, which means it gets compiled into anybody who includes it. This is needed for the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a> template to work, but we actually only want it compiled into the implementation of the class based on the <a class="el" href="classOgre_1_1Singleton.html">Singleton</a>, not all of them. If we don't change this, we get link errors when trying to use the Singleton-based class from an outside dll. </dd></dl>
1490<dl compact><dt><b></b></dt><dd>This method just delegates to the template version anyway, but the implementation stays in this single compilation unit, preventing link errors. </dd></dl>
1491
1492<p>
1493Reimplemented from <a class="el" href="classOgre_1_1Singleton.html#Ogre_1_1Singletone1">Ogre::Singleton&lt; GpuProgramManager &gt;</a>.    </td>
1494  </tr>
1495</table>
1496<a class="anchor" name="Ogre_1_1GpuProgramManagera4" doxytag="Ogre::GLGpuProgramManager::getSupportedSyntax" ></a><p>
1497<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1498  <tr>
1499    <td class="mdRow">
1500      <table cellpadding="0" cellspacing="0" border="0">
1501        <tr>
1502          <td class="md" nowrap valign="top"> virtual const <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">SyntaxCodes</a>&amp; Ogre::GpuProgramManager::getSupportedSyntax </td>
1503          <td class="md" valign="top">(&nbsp;</td>
1504          <td class="md" nowrap valign="top">void&nbsp;</td>
1505          <td class="mdname1" valign="top" nowrap>          </td>
1506          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1507          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1508        </tr>
1509
1510      </table>
1511    </td>
1512  </tr>
1513</table>
1514<table cellspacing=5 cellpadding=0 border=0>
1515  <tr>
1516    <td>
1517      &nbsp;
1518    </td>
1519    <td>
1520
1521<p>
1522Returns the syntaxes that this manager supports.
1523<p>
1524
1525<p>
1526Definition at line <a class="el" href="OgreGpuProgramManager_8h-source.html#l00084">84</a> of file <a class="el" href="OgreGpuProgramManager_8h-source.html">OgreGpuProgramManager.h</a>.
1527<p>
1528References <a class="el" href="OgreGpuProgramManager_8h-source.html#l00040">Ogre::GpuProgramManager::SyntaxCodes</a>.    </td>
1529  </tr>
1530</table>
1531<a class="anchor" name="Ogre_1_1GpuProgramManagera5" doxytag="Ogre::GLGpuProgramManager::isSyntaxSupported" ></a><p>
1532<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1533  <tr>
1534    <td class="mdRow">
1535      <table cellpadding="0" cellspacing="0" border="0">
1536        <tr>
1537          <td class="md" nowrap valign="top"> virtual bool Ogre::GpuProgramManager::isSyntaxSupported </td>
1538          <td class="md" valign="top">(&nbsp;</td>
1539          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1540          <td class="mdname1" valign="top" nowrap> <em>syntaxCode</em>          </td>
1541          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1542          <td class="md" nowrap> const<code> [virtual, inherited]</code></td>
1543        </tr>
1544
1545      </table>
1546    </td>
1547  </tr>
1548</table>
1549<table cellspacing=5 cellpadding=0 border=0>
1550  <tr>
1551    <td>
1552      &nbsp;
1553    </td>
1554    <td>
1555
1556<p>
1557Returns whether a given syntax code (e.g.
1558<p>
1559"ps_1_3", "fp20", "arbvp1") is supported.     </td>
1560  </tr>
1561</table>
1562<a class="anchor" name="Ogre_1_1TextureManagera34" doxytag="Ogre::GLGpuProgramManager::load" ></a><p>
1563<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1564  <tr>
1565    <td class="mdRow">
1566      <table cellpadding="0" cellspacing="0" border="0">
1567        <tr>
1568          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> Ogre::ResourceManager::load </td>
1569          <td class="md" valign="top">(&nbsp;</td>
1570          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1571          <td class="mdname" nowrap> <em>name</em>, </td>
1572        </tr>
1573        <tr>
1574          <td class="md" nowrap align="right"></td>
1575          <td></td>
1576          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1577          <td class="mdname" nowrap> <em>group</em>, </td>
1578        </tr>
1579        <tr>
1580          <td class="md" nowrap align="right"></td>
1581          <td></td>
1582          <td class="md" nowrap>bool&nbsp;</td>
1583          <td class="mdname" nowrap> <em>isManual</em> = false, </td>
1584        </tr>
1585        <tr>
1586          <td class="md" nowrap align="right"></td>
1587          <td></td>
1588          <td class="md" nowrap><a class="el" href="classOgre_1_1ManualResourceLoader.html">ManualResourceLoader</a> *&nbsp;</td>
1589          <td class="mdname" nowrap> <em>loader</em> = 0, </td>
1590        </tr>
1591        <tr>
1592          <td class="md" nowrap align="right"></td>
1593          <td></td>
1594          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a76">NameValuePairList</a> *&nbsp;</td>
1595          <td class="mdname" nowrap> <em>loadParams</em> = 0</td>
1596        </tr>
1597        <tr>
1598          <td></td>
1599          <td class="md">)&nbsp;</td>
1600          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
1601        </tr>
1602
1603      </table>
1604    </td>
1605  </tr>
1606</table>
1607<table cellspacing=5 cellpadding=0 border=0>
1608  <tr>
1609    <td>
1610      &nbsp;
1611    </td>
1612    <td>
1613
1614<p>
1615Generic load method, used to create a <a class="el" href="classOgre_1_1Resource.html">Resource</a> specific to this <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> without using one of the specialised 'load' methods (containing per-Resource-type parameters).
1616<p>
1617<dl compact><dt><b>Parameters:</b></dt><dd>
1618  <table border="0" cellspacing="2" cellpadding="0">
1619    <tr><td valign=top><em>name</em>&nbsp;</td><td>The name of the <a class="el" href="classOgre_1_1Resource.html">Resource</a> </td></tr>
1620    <tr><td valign=top><em>group</em>&nbsp;</td><td>The resource group to which this resource will belong </td></tr>
1621    <tr><td valign=top><em>isManual</em>&nbsp;</td><td>Is the resource to be manually loaded? If so, you should provide a value for the loader parameter </td></tr>
1622    <tr><td valign=top><em>loader</em>&nbsp;</td><td>The manual loader which is to perform the required actions when this resource is loaded; only applicable when you specify true for the previous parameter </td></tr>
1623    <tr><td valign=top><em>loadParams</em>&nbsp;</td><td>Optional pointer to a list of name/value pairs containing loading parameters for this type of resource.</td></tr>
1624  </table>
1625</dl>
1626
1627<p>
1628Reimplemented in <a class="el" href="classOgre_1_1BspResourceManager.html#Ogre_1_1BspResourceManagera2">Ogre::BspResourceManager</a>.    </td>
1629  </tr>
1630</table>
1631<a class="anchor" name="Ogre_1_1GpuProgramManagera2" doxytag="Ogre::GLGpuProgramManager::load" ></a><p>
1632<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1633  <tr>
1634    <td class="mdRow">
1635      <table cellpadding="0" cellspacing="0" border="0">
1636        <tr>
1637          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a> Ogre::GpuProgramManager::load </td>
1638          <td class="md" valign="top">(&nbsp;</td>
1639          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1640          <td class="mdname" nowrap> <em>name</em>, </td>
1641        </tr>
1642        <tr>
1643          <td class="md" nowrap align="right"></td>
1644          <td></td>
1645          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1646          <td class="mdname" nowrap> <em>groupName</em>, </td>
1647        </tr>
1648        <tr>
1649          <td class="md" nowrap align="right"></td>
1650          <td></td>
1651          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1652          <td class="mdname" nowrap> <em>filename</em>, </td>
1653        </tr>
1654        <tr>
1655          <td class="md" nowrap align="right"></td>
1656          <td></td>
1657          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
1658          <td class="mdname" nowrap> <em>gptype</em>, </td>
1659        </tr>
1660        <tr>
1661          <td class="md" nowrap align="right"></td>
1662          <td></td>
1663          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1664          <td class="mdname" nowrap> <em>syntaxCode</em></td>
1665        </tr>
1666        <tr>
1667          <td></td>
1668          <td class="md">)&nbsp;</td>
1669          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
1670        </tr>
1671
1672      </table>
1673    </td>
1674  </tr>
1675</table>
1676<table cellspacing=5 cellpadding=0 border=0>
1677  <tr>
1678    <td>
1679      &nbsp;
1680    </td>
1681    <td>
1682
1683<p>
1684Loads a GPU program from a file of assembly.
1685<p>
1686<dl compact><dt><b>Remarks:</b></dt><dd>This method creates a new program of the type specified as the second parameter. As with all types of <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a>, this class will search for the file in all resource locations it has been configured to look in. </dd></dl>
1687<dl compact><dt><b>Parameters:</b></dt><dd>
1688  <table border="0" cellspacing="2" cellpadding="0">
1689    <tr><td valign=top><em>name</em>&nbsp;</td><td>The name of the <a class="el" href="classOgre_1_1GpuProgram.html">GpuProgram</a> </td></tr>
1690    <tr><td valign=top><em>groupName</em>&nbsp;</td><td>The name of the resource group </td></tr>
1691    <tr><td valign=top><em>filename</em>&nbsp;</td><td>The file to load </td></tr>
1692    <tr><td valign=top><em>gptype</em>&nbsp;</td><td>The type of program to create </td></tr>
1693    <tr><td valign=top><em>syntaxCode</em>&nbsp;</td><td>The name of the syntax to be used for this program e.g. arbvp1, vs_1_1</td></tr>
1694  </table>
1695</dl>
1696    </td>
1697  </tr>
1698</table>
1699<a class="anchor" name="Ogre_1_1GpuProgramManagera3" doxytag="Ogre::GLGpuProgramManager::loadFromString" ></a><p>
1700<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1701  <tr>
1702    <td class="mdRow">
1703      <table cellpadding="0" cellspacing="0" border="0">
1704        <tr>
1705          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1GpuProgramPtr.html">GpuProgramPtr</a> Ogre::GpuProgramManager::loadFromString </td>
1706          <td class="md" valign="top">(&nbsp;</td>
1707          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1708          <td class="mdname" nowrap> <em>name</em>, </td>
1709        </tr>
1710        <tr>
1711          <td class="md" nowrap align="right"></td>
1712          <td></td>
1713          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1714          <td class="mdname" nowrap> <em>groupName</em>, </td>
1715        </tr>
1716        <tr>
1717          <td class="md" nowrap align="right"></td>
1718          <td></td>
1719          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1720          <td class="mdname" nowrap> <em>code</em>, </td>
1721        </tr>
1722        <tr>
1723          <td class="md" nowrap align="right"></td>
1724          <td></td>
1725          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a658">GpuProgramType</a>&nbsp;</td>
1726          <td class="mdname" nowrap> <em>gptype</em>, </td>
1727        </tr>
1728        <tr>
1729          <td class="md" nowrap align="right"></td>
1730          <td></td>
1731          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1732          <td class="mdname" nowrap> <em>syntaxCode</em></td>
1733        </tr>
1734        <tr>
1735          <td></td>
1736          <td class="md">)&nbsp;</td>
1737          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
1738        </tr>
1739
1740      </table>
1741    </td>
1742  </tr>
1743</table>
1744<table cellspacing=5 cellpadding=0 border=0>
1745  <tr>
1746    <td>
1747      &nbsp;
1748    </td>
1749    <td>
1750
1751<p>
1752Loads a GPU program from a string of assembly code.
1753<p>
1754<dl compact><dt><b>Remarks:</b></dt><dd>The assembly code must be compatible with this manager - call the getSupportedSyntax method for details of the supported syntaxes </dd></dl>
1755<dl compact><dt><b>Parameters:</b></dt><dd>
1756  <table border="0" cellspacing="2" cellpadding="0">
1757    <tr><td valign=top><em>name</em>&nbsp;</td><td>The identifying name to give this program, which can be used to retrieve this program later with getByName. </td></tr>
1758    <tr><td valign=top><em>groupName</em>&nbsp;</td><td>The name of the resource group </td></tr>
1759    <tr><td valign=top><em>code</em>&nbsp;</td><td>A string of assembly code which will form the program to run </td></tr>
1760    <tr><td valign=top><em>gptype</em>&nbsp;</td><td>The type of prgram to create. </td></tr>
1761    <tr><td valign=top><em>syntaxCode</em>&nbsp;</td><td>The name of the syntax to be used for this program e.g. arbvp1, vs_1_1</td></tr>
1762  </table>
1763</dl>
1764    </td>
1765  </tr>
1766</table>
1767<a class="anchor" name="Ogre_1_1TextureManagera36" doxytag="Ogre::GLGpuProgramManager::parseScript" ></a><p>
1768<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1769  <tr>
1770    <td class="mdRow">
1771      <table cellpadding="0" cellspacing="0" border="0">
1772        <tr>
1773          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::parseScript </td>
1774          <td class="md" valign="top">(&nbsp;</td>
1775          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a> &amp;&nbsp;</td>
1776          <td class="mdname" nowrap> <em>stream</em>, </td>
1777        </tr>
1778        <tr>
1779          <td class="md" nowrap align="right"></td>
1780          <td></td>
1781          <td class="md" nowrap>const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1782          <td class="mdname" nowrap> <em>groupName</em></td>
1783        </tr>
1784        <tr>
1785          <td></td>
1786          <td class="md">)&nbsp;</td>
1787          <td class="md" colspan="2"><code> [virtual, inherited]</code></td>
1788        </tr>
1789
1790      </table>
1791    </td>
1792  </tr>
1793</table>
1794<table cellspacing=5 cellpadding=0 border=0>
1795  <tr>
1796    <td>
1797      &nbsp;
1798    </td>
1799    <td>
1800
1801<p>
1802Parse the definition of a set of resources from a script file.
1803<p>
1804<dl compact><dt><b>Remarks:</b></dt><dd>Some resource managers can read script files in order to define resources ahead of time. These resources are added to the available list inside the manager, but none are loaded initially. This allows you to load the items that are used on demand, or to load them all as a group if you wish (through <a class="el" href="classOgre_1_1ResourceGroupManager.html">ResourceGroupManager</a>). </dd></dl>
1805<dl compact><dt><b>Parameters:</b></dt><dd>
1806  <table border="0" cellspacing="2" cellpadding="0">
1807    <tr><td valign=top><em>stream</em>&nbsp;</td><td>Weak reference to a data stream which is the source of the script </td></tr>
1808    <tr><td valign=top><em>groupName</em>&nbsp;</td><td>The name of the resource group that resources which are parsed are to become a member of. If this group is loaded or unloaded, then the resources discovered in this script will be loaded / unloaded with it.</td></tr>
1809  </table>
1810</dl>
1811
1812<p>
1813Implements <a class="el" href="classOgre_1_1ScriptLoader.html#Ogre_1_1ScriptLoadera2">Ogre::ScriptLoader</a>.
1814<p>
1815Reimplemented in <a class="el" href="classOgre_1_1CompositorManager.html#Ogre_1_1CompositorManagera4">Ogre::CompositorManager</a>, <a class="el" href="classOgre_1_1FontManager.html#Ogre_1_1FontManagera2">Ogre::FontManager</a>, and <a class="el" href="classOgre_1_1MaterialManager.html#Ogre_1_1MaterialManagera3">Ogre::MaterialManager</a>.
1816<p>
1817Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00332">332</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
1818<p>
1819References <a class="el" href="OgreDataStream_8h-source.html#l00149">Ogre::DataStreamPtr</a>, and <a class="el" href="OgrePrerequisites_8h-source.html#l00156">Ogre::String</a>.    </td>
1820  </tr>
1821</table>
1822<a class="anchor" name="Ogre_1_1GLGpuProgramManagera3" doxytag="Ogre::GLGpuProgramManager::registerProgramFactory" ></a><p>
1823<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1824  <tr>
1825    <td class="mdRow">
1826      <table cellpadding="0" cellspacing="0" border="0">
1827        <tr>
1828          <td class="md" nowrap valign="top"> bool Ogre::GLGpuProgramManager::registerProgramFactory </td>
1829          <td class="md" valign="top">(&nbsp;</td>
1830          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1831          <td class="mdname" nowrap> <em>syntaxCode</em>, </td>
1832        </tr>
1833        <tr>
1834          <td class="md" nowrap align="right"></td>
1835          <td></td>
1836          <td class="md" nowrap><a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerw0">CreateGpuProgramCallback</a>&nbsp;</td>
1837          <td class="mdname" nowrap> <em>createFn</em></td>
1838        </tr>
1839        <tr>
1840          <td></td>
1841          <td class="md">)&nbsp;</td>
1842          <td class="md" colspan="2"></td>
1843        </tr>
1844
1845      </table>
1846    </td>
1847  </tr>
1848</table>
1849<table cellspacing=5 cellpadding=0 border=0>
1850  <tr>
1851    <td>
1852      &nbsp;
1853    </td>
1854    <td>
1855
1856<p>
1857    </td>
1858  </tr>
1859</table>
1860<a class="anchor" name="Ogre_1_1TextureManagera20" doxytag="Ogre::GLGpuProgramManager::reloadAll" ></a><p>
1861<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1862  <tr>
1863    <td class="mdRow">
1864      <table cellpadding="0" cellspacing="0" border="0">
1865        <tr>
1866          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::reloadAll </td>
1867          <td class="md" valign="top">(&nbsp;</td>
1868          <td class="md" nowrap valign="top">bool&nbsp;</td>
1869          <td class="mdname1" valign="top" nowrap> <em>reloadableOnly</em> = true          </td>
1870          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1871          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1872        </tr>
1873
1874      </table>
1875    </td>
1876  </tr>
1877</table>
1878<table cellspacing=5 cellpadding=0 border=0>
1879  <tr>
1880    <td>
1881      &nbsp;
1882    </td>
1883    <td>
1884
1885<p>
1886Caused all currently loaded resources to be reloaded.
1887<p>
1888<dl compact><dt><b>Remarks:</b></dt><dd>All resources currently being held in this manager which are also marked as currently loaded will be unloaded, then loaded again. </dd></dl>
1889<dl compact><dt><b>Parameters:</b></dt><dd>
1890  <table border="0" cellspacing="2" cellpadding="0">
1891    <tr><td valign=top><em>reloadableOnly</em>&nbsp;</td><td>If true (the default), only reload the resource that is reloadable. Because some resources isn't reloadable, they will be unloaded but can't loaded again. Thus, you might not want to them unloaded. Or, you might unload all of them, and then populate them manually later. </td></tr>
1892  </table>
1893</dl>
1894<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classOgre_1_1Resource.html#Ogre_1_1Texturea32">Resource::isReloadable</a> for resource is reloadable.</dd></dl>
1895    </td>
1896  </tr>
1897</table>
1898<a class="anchor" name="Ogre_1_1TextureManagera22" doxytag="Ogre::GLGpuProgramManager::reloadUnreferencedResources" ></a><p>
1899<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1900  <tr>
1901    <td class="mdRow">
1902      <table cellpadding="0" cellspacing="0" border="0">
1903        <tr>
1904          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::reloadUnreferencedResources </td>
1905          <td class="md" valign="top">(&nbsp;</td>
1906          <td class="md" nowrap valign="top">bool&nbsp;</td>
1907          <td class="mdname1" valign="top" nowrap> <em>reloadableOnly</em> = true          </td>
1908          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1909          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1910        </tr>
1911
1912      </table>
1913    </td>
1914  </tr>
1915</table>
1916<table cellspacing=5 cellpadding=0 border=0>
1917  <tr>
1918    <td>
1919      &nbsp;
1920    </td>
1921    <td>
1922
1923<p>
1924Caused all currently loaded but not referenced by any other object resources to be reloaded.
1925<p>
1926<dl compact><dt><b>Remarks:</b></dt><dd>This method behaves like reloadAll, except that it only reloads resources which are not in use, ie not referenced by other objects. </dd></dl>
1927<dl compact><dt><b></b></dt><dd>Some referenced resource may exists 'weak' pointer to their sub-components (e.g. <a class="el" href="classOgre_1_1Entity.html">Entity</a> held pointer to <a class="el" href="classOgre_1_1SubMesh.html">SubMesh</a>), in this case, unload or reload that resource will cause dangerous pointer access. Use this function instead of reloadAll allows you avoid fail in those situations. </dd></dl>
1928<dl compact><dt><b>Parameters:</b></dt><dd>
1929  <table border="0" cellspacing="2" cellpadding="0">
1930    <tr><td valign=top><em>reloadableOnly</em>&nbsp;</td><td>If true (the default), only reloads resources which can be subsequently automatically reloaded.</td></tr>
1931  </table>
1932</dl>
1933    </td>
1934  </tr>
1935</table>
1936<a class="anchor" name="Ogre_1_1TextureManagera25" doxytag="Ogre::GLGpuProgramManager::remove" ></a><p>
1937<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1938  <tr>
1939    <td class="mdRow">
1940      <table cellpadding="0" cellspacing="0" border="0">
1941        <tr>
1942          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::remove </td>
1943          <td class="md" valign="top">(&nbsp;</td>
1944          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
1945          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
1946          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1947          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1948        </tr>
1949
1950      </table>
1951    </td>
1952  </tr>
1953</table>
1954<table cellspacing=5 cellpadding=0 border=0>
1955  <tr>
1956    <td>
1957      &nbsp;
1958    </td>
1959    <td>
1960
1961<p>
1962Remove a single resource by handle.
1963<p>
1964<dl compact><dt><b>Remarks:</b></dt><dd>Removes a single resource, meaning it will be removed from the list of valid resources in this manager, also causing it to be unloaded. </dd></dl>
1965<dl compact><dt><b>Note:</b></dt><dd>The word 'Destroy' is not used here, since if any other pointers are referring to this resource, it will persist until they have finished with it; however to all intents and purposes it no longer exists and will likely get destroyed imminently. <p>
1966If you do have shared pointers to resources hanging around after the <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> is destroyed, you may get problems on destruction of these resources if they were relying on the manager (especially if it is a plugin). If you find you get problems on shutdown in the destruction of resources, try making sure you release all your shared pointers before you shutdown OGRE.</dd></dl>
1967    </td>
1968  </tr>
1969</table>
1970<a class="anchor" name="Ogre_1_1TextureManagera24" doxytag="Ogre::GLGpuProgramManager::remove" ></a><p>
1971<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1972  <tr>
1973    <td class="mdRow">
1974      <table cellpadding="0" cellspacing="0" border="0">
1975        <tr>
1976          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::remove </td>
1977          <td class="md" valign="top">(&nbsp;</td>
1978          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
1979          <td class="mdname1" valign="top" nowrap> <em>name</em>          </td>
1980          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1981          <td class="md" nowrap><code> [virtual, inherited]</code></td>
1982        </tr>
1983
1984      </table>
1985    </td>
1986  </tr>
1987</table>
1988<table cellspacing=5 cellpadding=0 border=0>
1989  <tr>
1990    <td>
1991      &nbsp;
1992    </td>
1993    <td>
1994
1995<p>
1996Remove a single resource by name.
1997<p>
1998<dl compact><dt><b>Remarks:</b></dt><dd>Removes a single resource, meaning it will be removed from the list of valid resources in this manager, also causing it to be unloaded. </dd></dl>
1999<dl compact><dt><b>Note:</b></dt><dd>The word 'Destroy' is not used here, since if any other pointers are referring to this resource, it will persist until they have finished with it; however to all intents and purposes it no longer exists and will likely get destroyed imminently. <p>
2000If you do have shared pointers to resources hanging around after the <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> is destroyed, you may get problems on destruction of these resources if they were relying on the manager (especially if it is a plugin). If you find you get problems on shutdown in the destruction of resources, try making sure you release all your shared pointers before you shutdown OGRE.</dd></dl>
2001    </td>
2002  </tr>
2003</table>
2004<a class="anchor" name="Ogre_1_1TextureManagera23" doxytag="Ogre::GLGpuProgramManager::remove" ></a><p>
2005<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2006  <tr>
2007    <td class="mdRow">
2008      <table cellpadding="0" cellspacing="0" border="0">
2009        <tr>
2010          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::remove </td>
2011          <td class="md" valign="top">(&nbsp;</td>
2012          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;&nbsp;</td>
2013          <td class="mdname1" valign="top" nowrap> <em>r</em>          </td>
2014          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2015          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2016        </tr>
2017
2018      </table>
2019    </td>
2020  </tr>
2021</table>
2022<table cellspacing=5 cellpadding=0 border=0>
2023  <tr>
2024    <td>
2025      &nbsp;
2026    </td>
2027    <td>
2028
2029<p>
2030Remove a single resource.
2031<p>
2032<dl compact><dt><b>Remarks:</b></dt><dd>Removes a single resource, meaning it will be removed from the list of valid resources in this manager, also causing it to be unloaded. </dd></dl>
2033<dl compact><dt><b>Note:</b></dt><dd>The word 'Destroy' is not used here, since if any other pointers are referring to this resource, it will persist until they have finished with it; however to all intents and purposes it no longer exists and will likely get destroyed imminently. <p>
2034If you do have shared pointers to resources hanging around after the <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> is destroyed, you may get problems on destruction of these resources if they were relying on the manager (especially if it is a plugin). If you find you get problems on shutdown in the destruction of resources, try making sure you release all your shared pointers before you shutdown OGRE.</dd></dl>
2035    </td>
2036  </tr>
2037</table>
2038<a class="anchor" name="Ogre_1_1TextureManagera26" doxytag="Ogre::GLGpuProgramManager::removeAll" ></a><p>
2039<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2040  <tr>
2041    <td class="mdRow">
2042      <table cellpadding="0" cellspacing="0" border="0">
2043        <tr>
2044          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::removeAll </td>
2045          <td class="md" valign="top">(&nbsp;</td>
2046          <td class="md" nowrap valign="top">void&nbsp;</td>
2047          <td class="mdname1" valign="top" nowrap>          </td>
2048          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2049          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2050        </tr>
2051
2052      </table>
2053    </td>
2054  </tr>
2055</table>
2056<table cellspacing=5 cellpadding=0 border=0>
2057  <tr>
2058    <td>
2059      &nbsp;
2060    </td>
2061    <td>
2062
2063<p>
2064Removes all resources.
2065<p>
2066<dl compact><dt><b>Note:</b></dt><dd>The word 'Destroy' is not used here, since if any other pointers are referring to these resources, they will persist until they have been finished with; however to all intents and purposes the resources no longer exist and will get destroyed imminently. <p>
2067If you do have shared pointers to resources hanging around after the <a class="el" href="classOgre_1_1ResourceManager.html">ResourceManager</a> is destroyed, you may get problems on destruction of these resources if they were relying on the manager (especially if it is a plugin). If you find you get problems on shutdown in the destruction of resources, try making sure you release all your shared pointers before you shutdown OGRE. </dd></dl>
2068
2069<p>
2070Reimplemented in <a class="el" href="classOgre_1_1CompositorManager.html#Ogre_1_1CompositorManagera12">Ogre::CompositorManager</a>.    </td>
2071  </tr>
2072</table>
2073<a class="anchor" name="Ogre_1_1TextureManagerb3" doxytag="Ogre::GLGpuProgramManager::removeImpl" ></a><p>
2074<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2075  <tr>
2076    <td class="mdRow">
2077      <table cellpadding="0" cellspacing="0" border="0">
2078        <tr>
2079          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::removeImpl </td>
2080          <td class="md" valign="top">(&nbsp;</td>
2081          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1SharedPtr.html">ResourcePtr</a> &amp;&nbsp;</td>
2082          <td class="mdname1" valign="top" nowrap> <em>res</em>          </td>
2083          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2084          <td class="md" nowrap><code> [protected, virtual, inherited]</code></td>
2085        </tr>
2086
2087      </table>
2088    </td>
2089  </tr>
2090</table>
2091<table cellspacing=5 cellpadding=0 border=0>
2092  <tr>
2093    <td>
2094      &nbsp;
2095    </td>
2096    <td>
2097
2098<p>
2099Remove a resource from this manager; remove it from the lists.
2100<p>
2101    </td>
2102  </tr>
2103</table>
2104<a class="anchor" name="Ogre_1_1TextureManagera30" doxytag="Ogre::GLGpuProgramManager::resourceExists" ></a><p>
2105<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2106  <tr>
2107    <td class="mdRow">
2108      <table cellpadding="0" cellspacing="0" border="0">
2109        <tr>
2110          <td class="md" nowrap valign="top"> virtual bool Ogre::ResourceManager::resourceExists </td>
2111          <td class="md" valign="top">(&nbsp;</td>
2112          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
2113          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
2114          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2115          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2116        </tr>
2117
2118      </table>
2119    </td>
2120  </tr>
2121</table>
2122<table cellspacing=5 cellpadding=0 border=0>
2123  <tr>
2124    <td>
2125      &nbsp;
2126    </td>
2127    <td>
2128
2129<p>
2130Returns whether a resource with the given handle exists in this manager.
2131<p>
2132
2133<p>
2134Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00265">265</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
2135<p>
2136References <a class="el" href="OgreSharedPtr_8h-source.html#l00114">Ogre::SharedPtr&lt; T &gt;::isNull()</a>, and <a class="el" href="OgreResource_8h-source.html#l00035">Ogre::ResourceHandle</a>.    </td>
2137  </tr>
2138</table>
2139<a class="anchor" name="Ogre_1_1TextureManagera29" doxytag="Ogre::GLGpuProgramManager::resourceExists" ></a><p>
2140<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2141  <tr>
2142    <td class="mdRow">
2143      <table cellpadding="0" cellspacing="0" border="0">
2144        <tr>
2145          <td class="md" nowrap valign="top"> virtual bool Ogre::ResourceManager::resourceExists </td>
2146          <td class="md" valign="top">(&nbsp;</td>
2147          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
2148          <td class="mdname1" valign="top" nowrap> <em>name</em>          </td>
2149          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2150          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2151        </tr>
2152
2153      </table>
2154    </td>
2155  </tr>
2156</table>
2157<table cellspacing=5 cellpadding=0 border=0>
2158  <tr>
2159    <td>
2160      &nbsp;
2161    </td>
2162    <td>
2163
2164<p>
2165Returns whether the named resource exists in this manager.
2166<p>
2167
2168<p>
2169Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00260">260</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.
2170<p>
2171References <a class="el" href="OgreSharedPtr_8h-source.html#l00114">Ogre::SharedPtr&lt; T &gt;::isNull()</a>, and <a class="el" href="OgrePrerequisites_8h-source.html#l00156">Ogre::String</a>.    </td>
2172  </tr>
2173</table>
2174<a class="anchor" name="Ogre_1_1TextureManagera15" doxytag="Ogre::GLGpuProgramManager::setMemoryBudget" ></a><p>
2175<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2176  <tr>
2177    <td class="mdRow">
2178      <table cellpadding="0" cellspacing="0" border="0">
2179        <tr>
2180          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::setMemoryBudget </td>
2181          <td class="md" valign="top">(&nbsp;</td>
2182          <td class="md" nowrap valign="top">size_t&nbsp;</td>
2183          <td class="mdname1" valign="top" nowrap> <em>bytes</em>          </td>
2184          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2185          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2186        </tr>
2187
2188      </table>
2189    </td>
2190  </tr>
2191</table>
2192<table cellspacing=5 cellpadding=0 border=0>
2193  <tr>
2194    <td>
2195      &nbsp;
2196    </td>
2197    <td>
2198
2199<p>
2200Set a limit on the amount of memory this resource handler may use.
2201<p>
2202<dl compact><dt><b>Remarks:</b></dt><dd>If, when asked to load a new resource, the manager believes it will exceed this memory budget, it will temporarily unload a resource to make room for the new one. This unloading is not permanent and the <a class="el" href="classOgre_1_1Resource.html">Resource</a> is not destroyed; it simply needs to be reloaded when next used. </dd></dl>
2203    </td>
2204  </tr>
2205</table>
2206<a class="anchor" name="Ogre_1_1TextureManagera18" doxytag="Ogre::GLGpuProgramManager::unload" ></a><p>
2207<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2208  <tr>
2209    <td class="mdRow">
2210      <table cellpadding="0" cellspacing="0" border="0">
2211        <tr>
2212          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::unload </td>
2213          <td class="md" valign="top">(&nbsp;</td>
2214          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a529">ResourceHandle</a>&nbsp;</td>
2215          <td class="mdname1" valign="top" nowrap> <em>handle</em>          </td>
2216          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2217          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2218        </tr>
2219
2220      </table>
2221    </td>
2222  </tr>
2223</table>
2224<table cellspacing=5 cellpadding=0 border=0>
2225  <tr>
2226    <td>
2227      &nbsp;
2228    </td>
2229    <td>
2230
2231<p>
2232Unloads a single resource by handle.
2233<p>
2234<dl compact><dt><b>Remarks:</b></dt><dd>Unloaded resources are not removed, they simply free up their memory as much as they can and wait to be reloaded. </dd></dl>
2235<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classOgre_1_1ResourceGroupManager.html">ResourceGroupManager</a> for unloading of resource groups.</dd></dl>
2236    </td>
2237  </tr>
2238</table>
2239<a class="anchor" name="Ogre_1_1TextureManagera17" doxytag="Ogre::GLGpuProgramManager::unload" ></a><p>
2240<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2241  <tr>
2242    <td class="mdRow">
2243      <table cellpadding="0" cellspacing="0" border="0">
2244        <tr>
2245          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::unload </td>
2246          <td class="md" valign="top">(&nbsp;</td>
2247          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
2248          <td class="mdname1" valign="top" nowrap> <em>name</em>          </td>
2249          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2250          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2251        </tr>
2252
2253      </table>
2254    </td>
2255  </tr>
2256</table>
2257<table cellspacing=5 cellpadding=0 border=0>
2258  <tr>
2259    <td>
2260      &nbsp;
2261    </td>
2262    <td>
2263
2264<p>
2265Unloads a single resource by name.
2266<p>
2267<dl compact><dt><b>Remarks:</b></dt><dd>Unloaded resources are not removed, they simply free up their memory as much as they can and wait to be reloaded. </dd></dl>
2268<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classOgre_1_1ResourceGroupManager.html">ResourceGroupManager</a> for unloading of resource groups.</dd></dl>
2269    </td>
2270  </tr>
2271</table>
2272<a class="anchor" name="Ogre_1_1TextureManagera19" doxytag="Ogre::GLGpuProgramManager::unloadAll" ></a><p>
2273<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2274  <tr>
2275    <td class="mdRow">
2276      <table cellpadding="0" cellspacing="0" border="0">
2277        <tr>
2278          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::unloadAll </td>
2279          <td class="md" valign="top">(&nbsp;</td>
2280          <td class="md" nowrap valign="top">bool&nbsp;</td>
2281          <td class="mdname1" valign="top" nowrap> <em>reloadableOnly</em> = true          </td>
2282          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2283          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2284        </tr>
2285
2286      </table>
2287    </td>
2288  </tr>
2289</table>
2290<table cellspacing=5 cellpadding=0 border=0>
2291  <tr>
2292    <td>
2293      &nbsp;
2294    </td>
2295    <td>
2296
2297<p>
2298Unloads all resources.
2299<p>
2300<dl compact><dt><b>Remarks:</b></dt><dd>Unloaded resources are not removed, they simply free up their memory as much as they can and wait to be reloaded. </dd></dl>
2301<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classOgre_1_1ResourceGroupManager.html">ResourceGroupManager</a> for unloading of resource groups. </dd></dl>
2302<dl compact><dt><b>Parameters:</b></dt><dd>
2303  <table border="0" cellspacing="2" cellpadding="0">
2304    <tr><td valign=top><em>reloadableOnly</em>&nbsp;</td><td>If true (the default), only unload the resource that is reloadable. Because some resources isn't reloadable, they will be unloaded but can't load them later. Thus, you might not want to them unloaded. Or, you might unload all of them, and then populate them manually later. </td></tr>
2305  </table>
2306</dl>
2307<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="classOgre_1_1Resource.html#Ogre_1_1Texturea32">Resource::isReloadable</a> for resource is reloadable.</dd></dl>
2308    </td>
2309  </tr>
2310</table>
2311<a class="anchor" name="Ogre_1_1TextureManagera21" doxytag="Ogre::GLGpuProgramManager::unloadUnreferencedResources" ></a><p>
2312<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2313  <tr>
2314    <td class="mdRow">
2315      <table cellpadding="0" cellspacing="0" border="0">
2316        <tr>
2317          <td class="md" nowrap valign="top"> virtual void Ogre::ResourceManager::unloadUnreferencedResources </td>
2318          <td class="md" valign="top">(&nbsp;</td>
2319          <td class="md" nowrap valign="top">bool&nbsp;</td>
2320          <td class="mdname1" valign="top" nowrap> <em>reloadableOnly</em> = true          </td>
2321          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2322          <td class="md" nowrap><code> [virtual, inherited]</code></td>
2323        </tr>
2324
2325      </table>
2326    </td>
2327  </tr>
2328</table>
2329<table cellspacing=5 cellpadding=0 border=0>
2330  <tr>
2331    <td>
2332      &nbsp;
2333    </td>
2334    <td>
2335
2336<p>
2337Unload all resources which are not referenced by any other object.
2338<p>
2339<dl compact><dt><b>Remarks:</b></dt><dd>This method behaves like unloadAll, except that it only unloads resources which are not in use, ie not referenced by other objects. This allows you to free up some memory selectively whilst still keeping the group around (and the resources present, just not using much memory). </dd></dl>
2340<dl compact><dt><b></b></dt><dd>Some referenced resource may exists 'weak' pointer to their sub-components (e.g. <a class="el" href="classOgre_1_1Entity.html">Entity</a> held pointer to <a class="el" href="classOgre_1_1SubMesh.html">SubMesh</a>), in this case, unload or reload that resource will cause dangerous pointer access. Use this function instead of unloadAll allows you avoid fail in those situations. </dd></dl>
2341<dl compact><dt><b>Parameters:</b></dt><dd>
2342  <table border="0" cellspacing="2" cellpadding="0">
2343    <tr><td valign=top><em>reloadableOnly</em>&nbsp;</td><td>If true (the default), only unloads resources which can be subsequently automatically reloaded.</td></tr>
2344  </table>
2345</dl>
2346    </td>
2347  </tr>
2348</table>
2349<a class="anchor" name="Ogre_1_1GLGpuProgramManagera4" doxytag="Ogre::GLGpuProgramManager::unregisterProgramFactory" ></a><p>
2350<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2351  <tr>
2352    <td class="mdRow">
2353      <table cellpadding="0" cellspacing="0" border="0">
2354        <tr>
2355          <td class="md" nowrap valign="top"> bool Ogre::GLGpuProgramManager::unregisterProgramFactory </td>
2356          <td class="md" valign="top">(&nbsp;</td>
2357          <td class="md" nowrap valign="top">const <a class="el" href="namespaceOgre.html#a471">String</a> &amp;&nbsp;</td>
2358          <td class="mdname1" valign="top" nowrap> <em>syntaxCode</em>          </td>
2359          <td class="md" valign="top">&nbsp;)&nbsp;</td>
2360          <td class="md" nowrap></td>
2361        </tr>
2362
2363      </table>
2364    </td>
2365  </tr>
2366</table>
2367<table cellspacing=5 cellpadding=0 border=0>
2368  <tr>
2369    <td>
2370      &nbsp;
2371    </td>
2372    <td>
2373
2374<p>
2375    </td>
2376  </tr>
2377</table>
2378<hr><h2>Member Data Documentation</h2>
2379<a class="anchor" name="Ogre_1_1TextureManagerp8" doxytag="Ogre::GLGpuProgramManager::mLoadOrder" ></a><p>
2380<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2381  <tr>
2382    <td class="mdRow">
2383      <table cellpadding="0" cellspacing="0" border="0">
2384        <tr>
2385          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a465">Real</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp8">Ogre::ResourceManager::mLoadOrder</a><code> [protected, inherited]</code>
2386      </table>
2387    </td>
2388  </tr>
2389</table>
2390<table cellspacing=5 cellpadding=0 border=0>
2391  <tr>
2392    <td>
2393      &nbsp;
2394    </td>
2395    <td>
2396
2397<p>
2398Loading order relative to other managers, higher is later.
2399<p>
2400
2401<p>
2402Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00400">400</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2403  </tr>
2404</table>
2405<a class="anchor" name="Ogre_1_1TextureManagerp5" doxytag="Ogre::GLGpuProgramManager::mMemoryBudget" ></a><p>
2406<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2407  <tr>
2408    <td class="mdRow">
2409      <table cellpadding="0" cellspacing="0" border="0">
2410        <tr>
2411          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp5">Ogre::ResourceManager::mMemoryBudget</a><code> [protected, inherited]</code>
2412      </table>
2413    </td>
2414  </tr>
2415</table>
2416<table cellspacing=5 cellpadding=0 border=0>
2417  <tr>
2418    <td>
2419      &nbsp;
2420    </td>
2421    <td>
2422
2423<p>
2424
2425<p>
2426Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00392">392</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2427  </tr>
2428</table>
2429<a class="anchor" name="Ogre_1_1TextureManagerp6" doxytag="Ogre::GLGpuProgramManager::mMemoryUsage" ></a><p>
2430<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2431  <tr>
2432    <td class="mdRow">
2433      <table cellpadding="0" cellspacing="0" border="0">
2434        <tr>
2435          <td class="md" nowrap valign="top"> size_t <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp6">Ogre::ResourceManager::mMemoryUsage</a><code> [protected, inherited]</code>
2436      </table>
2437    </td>
2438  </tr>
2439</table>
2440<table cellspacing=5 cellpadding=0 border=0>
2441  <tr>
2442    <td>
2443      &nbsp;
2444    </td>
2445    <td>
2446
2447<p>
2448
2449<p>
2450Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00393">393</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2451  </tr>
2452</table>
2453<a class="anchor" name="Ogre_1_1TextureManagerp4" doxytag="Ogre::GLGpuProgramManager::mNextHandle" ></a><p>
2454<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2455  <tr>
2456    <td class="mdRow">
2457      <table cellpadding="0" cellspacing="0" border="0">
2458        <tr>
2459          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a529">ResourceHandle</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp4">Ogre::ResourceManager::mNextHandle</a><code> [protected, inherited]</code>
2460      </table>
2461    </td>
2462  </tr>
2463</table>
2464<table cellspacing=5 cellpadding=0 border=0>
2465  <tr>
2466    <td>
2467      &nbsp;
2468    </td>
2469    <td>
2470
2471<p>
2472
2473<p>
2474Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00391">391</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2475  </tr>
2476</table>
2477<a class="anchor" name="Ogre_1_1GLGpuProgramManagerr0" doxytag="Ogre::GLGpuProgramManager::mProgramMap" ></a><p>
2478<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2479  <tr>
2480    <td class="mdRow">
2481      <table cellpadding="0" cellspacing="0" border="0">
2482        <tr>
2483          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagery0">ProgramMap</a> <a class="el" href="classOgre_1_1GLGpuProgramManager.html#Ogre_1_1GLGpuProgramManagerr0">Ogre::GLGpuProgramManager::mProgramMap</a><code> [private]</code>
2484      </table>
2485    </td>
2486  </tr>
2487</table>
2488<table cellspacing=5 cellpadding=0 border=0>
2489  <tr>
2490    <td>
2491      &nbsp;
2492    </td>
2493    <td>
2494
2495<p>
2496
2497<p>
2498Definition at line <a class="el" href="OgreGLGpuProgramManager_8h-source.html#l00043">43</a> of file <a class="el" href="OgreGLGpuProgramManager_8h-source.html">OgreGLGpuProgramManager.h</a>.    </td>
2499  </tr>
2500</table>
2501<a class="anchor" name="Ogre_1_1TextureManagerp3" doxytag="Ogre::GLGpuProgramManager::mResources" ></a><p>
2502<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2503  <tr>
2504    <td class="mdRow">
2505      <table cellpadding="0" cellspacing="0" border="0">
2506        <tr>
2507          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw0">ResourceMap</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp3">Ogre::ResourceManager::mResources</a><code> [protected, inherited]</code>
2508      </table>
2509    </td>
2510  </tr>
2511</table>
2512<table cellspacing=5 cellpadding=0 border=0>
2513  <tr>
2514    <td>
2515      &nbsp;
2516    </td>
2517    <td>
2518
2519<p>
2520
2521<p>
2522Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00390">390</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2523  </tr>
2524</table>
2525<a class="anchor" name="Ogre_1_1TextureManagerp2" doxytag="Ogre::GLGpuProgramManager::mResourcesByHandle" ></a><p>
2526<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2527  <tr>
2528    <td class="mdRow">
2529      <table cellpadding="0" cellspacing="0" border="0">
2530        <tr>
2531          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerw1">ResourceHandleMap</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp2">Ogre::ResourceManager::mResourcesByHandle</a><code> [protected, inherited]</code>
2532      </table>
2533    </td>
2534  </tr>
2535</table>
2536<table cellspacing=5 cellpadding=0 border=0>
2537  <tr>
2538    <td>
2539      &nbsp;
2540    </td>
2541    <td>
2542
2543<p>
2544
2545<p>
2546Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00389">389</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2547  </tr>
2548</table>
2549<a class="anchor" name="Ogre_1_1TextureManagerp9" doxytag="Ogre::GLGpuProgramManager::mResourceType" ></a><p>
2550<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2551  <tr>
2552    <td class="mdRow">
2553      <table cellpadding="0" cellspacing="0" border="0">
2554        <tr>
2555          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a471">String</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp9">Ogre::ResourceManager::mResourceType</a><code> [protected, inherited]</code>
2556      </table>
2557    </td>
2558  </tr>
2559</table>
2560<table cellspacing=5 cellpadding=0 border=0>
2561  <tr>
2562    <td>
2563      &nbsp;
2564    </td>
2565    <td>
2566
2567<p>
2568String identifying the resource type this manager handles.
2569<p>
2570
2571<p>
2572Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00402">402</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2573  </tr>
2574</table>
2575<a class="anchor" name="Ogre_1_1Singletont0" doxytag="Ogre::GLGpuProgramManager::ms_Singleton" ></a><p>
2576<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2577  <tr>
2578    <td class="mdRow">
2579      <table cellpadding="0" cellspacing="0" border="0">
2580        <tr>
2581          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a> * <a class="el" href="classOgre_1_1Singleton.html">Ogre::Singleton</a>&lt; <a class="el" href="classOgre_1_1GpuProgramManager.html">GpuProgramManager</a>  &gt;::<a class="el" href="classOgre_1_1Singleton.html#Ogre_1_1Singletont0">ms_Singleton</a><code> [static, protected, inherited]</code>
2582      </table>
2583    </td>
2584  </tr>
2585</table>
2586<table cellspacing=5 cellpadding=0 border=0>
2587  <tr>
2588    <td>
2589      &nbsp;
2590    </td>
2591    <td>
2592
2593<p>
2594
2595<p>
2596Definition at line <a class="el" href="OgreSingleton_8h-source.html#l00054">54</a> of file <a class="el" href="OgreSingleton_8h-source.html">OgreSingleton.h</a>.    </td>
2597  </tr>
2598</table>
2599<a class="anchor" name="Ogre_1_1TextureManagerp7" doxytag="Ogre::GLGpuProgramManager::mScriptPatterns" ></a><p>
2600<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2601  <tr>
2602    <td class="mdRow">
2603      <table cellpadding="0" cellspacing="0" border="0">
2604        <tr>
2605          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a580">StringVector</a> <a class="el" href="classOgre_1_1ResourceManager.html#Ogre_1_1TextureManagerp7">Ogre::ResourceManager::mScriptPatterns</a><code> [protected, inherited]</code>
2606      </table>
2607    </td>
2608  </tr>
2609</table>
2610<table cellspacing=5 cellpadding=0 border=0>
2611  <tr>
2612    <td>
2613      &nbsp;
2614    </td>
2615    <td>
2616
2617<p>
2618Patterns to use to look for scripts if supported (e.g. *.overlay).
2619<p>
2620
2621<p>
2622Definition at line <a class="el" href="OgreResourceManager_8h-source.html#l00398">398</a> of file <a class="el" href="OgreResourceManager_8h-source.html">OgreResourceManager.h</a>.    </td>
2623  </tr>
2624</table>
2625<a class="anchor" name="Ogre_1_1GpuProgramManagerp0" doxytag="Ogre::GLGpuProgramManager::mSyntaxCodes" ></a><p>
2626<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
2627  <tr>
2628    <td class="mdRow">
2629      <table cellpadding="0" cellspacing="0" border="0">
2630        <tr>
2631          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerw0">SyntaxCodes</a> <a class="el" href="classOgre_1_1GpuProgramManager.html#Ogre_1_1GpuProgramManagerp0">Ogre::GpuProgramManager::mSyntaxCodes</a><code> [protected, inherited]</code>
2632      </table>
2633    </td>
2634  </tr>
2635</table>
2636<table cellspacing=5 cellpadding=0 border=0>
2637  <tr>
2638    <td>
2639      &nbsp;
2640    </td>
2641    <td>
2642
2643<p>
2644Supported program syntax codes.
2645<p>
2646
2647<p>
2648Definition at line <a class="el" href="OgreGpuProgramManager_8h-source.html#l00044">44</a> of file <a class="el" href="OgreGpuProgramManager_8h-source.html">OgreGpuProgramManager.h</a>.    </td>
2649  </tr>
2650</table>
2651<hr>The documentation for this class was generated from the following file:<ul>
2652<li><a class="el" href="OgreGLGpuProgramManager_8h-source.html">OgreGLGpuProgramManager.h</a></ul>
2653<hr>
2654<p>
2655Copyright &copy; 2000-2005 by The OGRE Team<br />
2656<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
2657This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
2658                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
2659                <Work rdf:about="">
2660                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
2661        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
2662                </Work>
2663                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
2664
2665Last modified Sun Mar 12 14:52:33 2006
2666</p>
2667</body>
2668</html>
Note: See TracBrowser for help on using the repository browser.