\hypertarget{_plus_2include_2_g_l_s_l_2_ogre_g_l_s_l_program_8h}{}\section{Ogre\+G\+L\+S\+L\+Program.\+h File Reference}
\label{_plus_2include_2_g_l_s_l_2_ogre_g_l_s_l_program_8h}\index{Ogre\+G\+L\+S\+L\+Program.\+h@{Ogre\+G\+L\+S\+L\+Program.\+h}}
{\ttfamily \#include \char`\"{}Ogre\+G\+L3\+Plus\+Prerequisites.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+Gpu\+Program.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+Hardware\+Vertex\+Buffer.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+G\+L3\+Plus\+Hardware\+Uniform\+Buffer.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+G\+L3\+Plus\+Hardware\+Shader\+Storage\+Buffer.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+G\+L3\+Plus\+Hardware\+Counter\+Buffer.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+G\+L\+S\+L\+Program\+Common.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}Ogre\+G\+L\+S\+L\+Shader.\+h\char`\"{}}\newline
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_ogre_1_1_g_l_atomic_counter_reference}{Ogre\+::\+G\+L\+Atomic\+Counter\+Reference}
\begin{DoxyCompactList}\small\item\em Structure used to keep track of named atomic counter uniforms in the linked program object. \end{DoxyCompactList}\item 
class \hyperlink{class_ogre_1_1_g_l_s_l_program}{Ogre\+::\+G\+L\+S\+L\+Program}
\begin{DoxyCompactList}\small\item\em C++ encapsulation of \hyperlink{namespace_ogre_1_1_g_l_s_l}{G\+L\+SL} program object. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Namespaces}
\begin{DoxyCompactItemize}
\item 
 \hyperlink{namespace_ogre}{Ogre}
\begin{DoxyCompactList}\small\item\em 

 This source file is part of O\+G\+RE (Object-\/oriented Graphics Rendering Engine) For the latest info, see \href{http://www.ogre3d.org/}{\tt http\+://www.\+ogre3d.\+org/} \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef G\+L\+Atomic\+Counter\+Reference\+List\+::iterator \hyperlink{namespace_ogre_a18d652b12e7ee21d78b03644d631a64d}{Ogre\+::\+G\+L\+Atomic\+Counter\+Reference\+Iterator}
\item 
typedef std\+::vector$<$ G\+L\+Atomic\+Counter\+Reference $>$ \hyperlink{namespace_ogre_adb9443f0308cf797d752d4aad47d40f7}{Ogre\+::\+G\+L\+Atomic\+Counter\+Reference\+List}
\item 
typedef G\+L\+Counter\+Buffer\+List\+::iterator \hyperlink{namespace_ogre_a4ece5a41ae9fcdcd950e49f46e3ff3be}{Ogre\+::\+G\+L\+Counter\+Buffer\+Iterator}
\item 
typedef std\+::vector$<$ Hardware\+Counter\+Buffer\+Shared\+Ptr $>$ \hyperlink{namespace_ogre_a1bd5e7fa02cc0018b170acf18fc7739f}{Ogre\+::\+G\+L\+Counter\+Buffer\+List}
\item 
typedef std\+::map$<$ Gpu\+Shared\+Parameters\+Ptr, Hardware\+Uniform\+Buffer\+Shared\+Ptr $>$ \hyperlink{namespace_ogre_a0013629ba7e62b9f0ffb427b0db06059}{Ogre\+::\+Shared\+Params\+Buffer\+Map}
\end{DoxyCompactItemize}
