aboutsummaryrefslogtreecommitdiffstats
path: root/classyage_1_1GlslProgram.html
diff options
context:
space:
mode:
Diffstat (limited to 'classyage_1_1GlslProgram.html')
-rw-r--r--classyage_1_1GlslProgram.html644
1 files changed, 644 insertions, 0 deletions
diff --git a/classyage_1_1GlslProgram.html b/classyage_1_1GlslProgram.html
new file mode 100644
index 00000000..371d297c
--- /dev/null
+++ b/classyage_1_1GlslProgram.html
@@ -0,0 +1,644 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>YAGE: yage::GlslProgram Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">YAGE
+ &#160;<span id="projectnumber">v0.1.3.0</span>
+ </div>
+ <div id="projectbrief">Yet Another Game Engine</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+ <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classyage_1_1GlslProgram.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pri-methods">Private Member Functions</a> &#124;
+<a href="#pri-attribs">Private Attributes</a> &#124;
+<a href="classyage_1_1GlslProgram-members.html">List of all members</a> </div>
+ <div class="headertitle">
+<div class="title">yage::GlslProgram Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="glslprogram_8h_source.html">glslprogram.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a721b43cbdf82dbf68b3a4f3304a135c4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a721b43cbdf82dbf68b3a4f3304a135c4">GlslProgram</a> ()=default</td></tr>
+<tr class="separator:a721b43cbdf82dbf68b3a4f3304a135c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78268f78af00bcb2358d48bb010aa9fd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a78268f78af00bcb2358d48bb010aa9fd">GlslProgram</a> (const <a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;)=delete</td></tr>
+<tr class="separator:a78268f78af00bcb2358d48bb010aa9fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2cea717928baf5feed2ac5dc2a03290"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#af2cea717928baf5feed2ac5dc2a03290">GlslProgram</a> (<a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&amp;)=delete</td></tr>
+<tr class="separator:af2cea717928baf5feed2ac5dc2a03290"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45676c850afad2717fd4119eb8c02ef7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a45676c850afad2717fd4119eb8c02ef7">~GlslProgram</a> ()</td></tr>
+<tr class="separator:a45676c850afad2717fd4119eb8c02ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5af953324ac9f89aecf7e0a73a9467ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a5af953324ac9f89aecf7e0a73a9467ad">operator=</a> (const <a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;)=delete</td></tr>
+<tr class="separator:a5af953324ac9f89aecf7e0a73a9467ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0de6e3d7c8e39357c7b0f91d85b21fb2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a0de6e3d7c8e39357c7b0f91d85b21fb2">operator=</a> (<a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&amp;)=delete</td></tr>
+<tr class="separator:a0de6e3d7c8e39357c7b0f91d85b21fb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa97d015c12b29a4ccf5f3fe75a33db5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#aa97d015c12b29a4ccf5f3fe75a33db5c">compileShaders</a> (const std::string &amp;vertexShader, const std::string fragmentShader)</td></tr>
+<tr class="memdesc:aa97d015c12b29a4ccf5f3fe75a33db5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">compiles vertex and fragment shader <a href="#aa97d015c12b29a4ccf5f3fe75a33db5c">More...</a><br/></td></tr>
+<tr class="separator:aa97d015c12b29a4ccf5f3fe75a33db5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff700034b2742769a0869944948dc430"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#aff700034b2742769a0869944948dc430">compileShadersFromFile</a> (const std::string &amp;vertex_shader_path, const std::string &amp;fragment_shader_path)</td></tr>
+<tr class="separator:aff700034b2742769a0869944948dc430"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed74ec6db4d2b02e1172bd5694eb1b27"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#aed74ec6db4d2b02e1172bd5694eb1b27">linkShaders</a> ()</td></tr>
+<tr class="separator:aed74ec6db4d2b02e1172bd5694eb1b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e38b9f5daaf4b111b69e4d2900d4970"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a4e38b9f5daaf4b111b69e4d2900d4970">addAttribute</a> (const std::string &amp;attribute_name)</td></tr>
+<tr class="separator:a4e38b9f5daaf4b111b69e4d2900d4970"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a255ccbb1d94d17f2de62319efd4be91d"><td class="memItemLeft" align="right" valign="top">GLint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a255ccbb1d94d17f2de62319efd4be91d">getUniformLocation</a> (const std::string &amp;uniform_name)</td></tr>
+<tr class="separator:a255ccbb1d94d17f2de62319efd4be91d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a762b44540ef219ff39f784543fc162c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a762b44540ef219ff39f784543fc162c3">use</a> ()</td></tr>
+<tr class="separator:a762b44540ef219ff39f784543fc162c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2afa98cbf5d25b634e01b863c33fcf8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a2afa98cbf5d25b634e01b863c33fcf8f">unuse</a> ()</td></tr>
+<tr class="separator:a2afa98cbf5d25b634e01b863c33fcf8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1260a2302c1434ce38c850dc18cbc04e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a1260a2302c1434ce38c850dc18cbc04e">defaultSetup</a> ()</td></tr>
+<tr class="separator:a1260a2302c1434ce38c850dc18cbc04e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
+Private Member Functions</h2></td></tr>
+<tr class="memitem:a7f566bb89d01dbdeea4e034b36bf7cd4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a7f566bb89d01dbdeea4e034b36bf7cd4">compileShader</a> (GLuint shader, const std::string &amp;shaderContent)</td></tr>
+<tr class="memdesc:a7f566bb89d01dbdeea4e034b36bf7cd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">compiles one shader <a href="#a7f566bb89d01dbdeea4e034b36bf7cd4">More...</a><br/></td></tr>
+<tr class="separator:a7f566bb89d01dbdeea4e034b36bf7cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07a4484f76091689c35a8f7617b7c2e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a07a4484f76091689c35a8f7617b7c2e6">compileShaderFromFile</a> (GLuint shader, const std::string &amp;file_path)</td></tr>
+<tr class="separator:a07a4484f76091689c35a8f7617b7c2e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43838529286cfc954ef2db3229274dd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a43838529286cfc954ef2db3229274dd9">initShaderId</a> ()</td></tr>
+<tr class="separator:a43838529286cfc954ef2db3229274dd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
+Private Attributes</h2></td></tr>
+<tr class="memitem:ad8f02beee9fdc3608d7aceebf3398e8b"><td class="memItemLeft" align="right" valign="top">GLuint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#ad8f02beee9fdc3608d7aceebf3398e8b">program_id_</a> = 0</td></tr>
+<tr class="memdesc:ad8f02beee9fdc3608d7aceebf3398e8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">compiled shader program id <a href="#ad8f02beee9fdc3608d7aceebf3398e8b">More...</a><br/></td></tr>
+<tr class="separator:ad8f02beee9fdc3608d7aceebf3398e8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe46af121e9c0214be6f7b18660c5bc7"><td class="memItemLeft" align="right" valign="top">GLuint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#afe46af121e9c0214be6f7b18660c5bc7">vertex_shader_id_</a> = 0</td></tr>
+<tr class="separator:afe46af121e9c0214be6f7b18660c5bc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad20ee225c8e981861923a2d7eeaf940f"><td class="memItemLeft" align="right" valign="top">GLuint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#ad20ee225c8e981861923a2d7eeaf940f">fragment_shader_id_</a> = 0</td></tr>
+<tr class="separator:ad20ee225c8e981861923a2d7eeaf940f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55d4f797833c688be78c00882112e486"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classyage_1_1GlslProgram.html#a55d4f797833c688be78c00882112e486">attribute_index_</a> = 0</td></tr>
+<tr class="separator:a55d4f797833c688be78c00882112e486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a721b43cbdf82dbf68b3a4f3304a135c4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">yage::GlslProgram::GlslProgram </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">default</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78268f78af00bcb2358d48bb010aa9fd"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">yage::GlslProgram::GlslProgram </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2cea717928baf5feed2ac5dc2a03290"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">yage::GlslProgram::GlslProgram </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a45676c850afad2717fd4119eb8c02ef7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">yage::GlslProgram::~GlslProgram </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>cleans up all the shaders and the program </p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a4e38b9f5daaf4b111b69e4d2900d4970"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::addAttribute </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>attribute_name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7f566bb89d01dbdeea4e034b36bf7cd4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::compileShader </td>
+ <td>(</td>
+ <td class="paramtype">GLuint&#160;</td>
+ <td class="paramname"><em>shader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>shaderContent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07a4484f76091689c35a8f7617b7c2e6"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::compileShaderFromFile </td>
+ <td>(</td>
+ <td class="paramtype">GLuint&#160;</td>
+ <td class="paramname"><em>shader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>file_path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa97d015c12b29a4ccf5f3fe75a33db5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::compileShaders </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>vertexShader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string&#160;</td>
+ <td class="paramname"><em>fragmentShader</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff700034b2742769a0869944948dc430"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::compileShadersFromFile </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>vertex_shader_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>fragment_shader_path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1260a2302c1434ce38c850dc18cbc04e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::defaultSetup </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a255ccbb1d94d17f2de62319efd4be91d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GLint yage::GlslProgram::getUniformLocation </td>
+ <td>(</td>
+ <td class="paramtype">const std::string &amp;&#160;</td>
+ <td class="paramname"><em>uniform_name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43838529286cfc954ef2db3229274dd9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::initShaderId </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed74ec6db4d2b02e1172bd5694eb1b27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::linkShaders </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5af953324ac9f89aecf7e0a73a9467ad"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a>&amp; yage::GlslProgram::operator= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0de6e3d7c8e39357c7b0f91d85b21fb2"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a>&amp; yage::GlslProgram::operator= </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a> &amp;&amp;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">delete</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2afa98cbf5d25b634e01b863c33fcf8f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::unuse </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a762b44540ef219ff39f784543fc162c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void yage::GlslProgram::use </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Data Documentation</h2>
+<a class="anchor" id="a55d4f797833c688be78c00882112e486"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int yage::GlslProgram::attribute_index_ = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad20ee225c8e981861923a2d7eeaf940f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GLuint yage::GlslProgram::fragment_shader_id_ = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad8f02beee9fdc3608d7aceebf3398e8b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GLuint yage::GlslProgram::program_id_ = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe46af121e9c0214be6f7b18660c5bc7"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GLuint yage::GlslProgram::vertex_shader_id_ = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">private</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>yage/core/<a class="el" href="glslprogram_8h_source.html">glslprogram.h</a></li>
+<li>yage/core/<a class="el" href="glslprogram_8cpp.html">glslprogram.cpp</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="namespaceyage.html">yage</a></li><li class="navelem"><a class="el" href="classyage_1_1GlslProgram.html">GlslProgram</a></li>
+ <li class="footer">Generated on Sat Dec 23 2017 01:02:05 for YAGE by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
+ </ul>
+</div>
+</body>
+</html>