Classes | |
class | Application |
Represent application. More... | |
class | Bindable |
Abstract class for bindable objects, such as Shader, Texture, FrameBuffer. More... | |
class | Communicator |
class | Data |
Class representing external (CPU-side) data. More... | |
class | Exception |
When thrown, provides information about an error that has occurred inside the library. More... | |
class | ExceptionFactory |
Class implementing dispatch methods in order to construct by-value exceptions of a derived type based just on an exception code. More... | |
class | FileNotFoundException |
class | FrameBuffer |
FrameBuffer gives a mechanism to get rendered data from GPU side to CPU side. More... | |
class | GLCgShader |
class | GLCgShaderSystem |
class | GLCgShaderSystemPlugin |
class | GLCgUniform |
Declaration of class GLCgUniform. More... | |
class | GLFrameBuffer |
class | GLGLSLShader |
class | GLGLSLShaderSystem |
class | GLGLSLShaderSystemPlugin |
class | GLGLSLUniform |
class | GLGraphicCore |
Declaration of OpenGL GraphicCore. More... | |
class | GLGraphicCorePlugin |
This class represents Plugin for GLGraphicCore. More... | |
class | GLTexture |
class | GPUResource |
class | GraphicCore |
Abstract class representing graphical core. More... | |
class | InputArgParser |
class | InputArguments |
struct | Int2Type |
Template struct which creates a distinct type for each exception code. More... | |
class | InternalErrorException |
class | InvalidParametersException |
class | InvalidStateException |
class | IOException |
class | ItemIdentityException |
class | Iterator |
class | Kernel |
This class representing kernel - a computation unit. More... | |
class | Library |
This class represnt dynamically loaded libraries (DLLs). More... | |
class | Log |
Class provides writing information to log file and standart error output. More... | |
class | LogListener |
Pure abstract class, derive this class and register to the Log to listen to log messages. More... | |
class | LogManager |
This class provides logging. More... | |
class | Object |
Base class in our class ierarchy. More... | |
class | Plugin |
Plugin abstract class. More... | |
class | Profiler |
class | RenderingAPIException |
class | RuntimeAssertionException |
class | Shader |
Class representing abstract shader - program for GPU. More... | |
class | ShaderSystem |
Class representing storage for our shader objects. More... | |
class | SharedPtr |
class | SimpleTask |
Simple task. More... | |
class | SimpleTaskManager |
class | Singleton |
Singleton class. More... | |
class | SourceCompilationException |
class | Task |
Main class for our computation. More... | |
class | TaskManager |
This class is a storage for all tasks. More... | |
class | Texture |
This class represent data on GPU side. More... | |
class | Timer |
This class represent timer in Unix-like OSes. More... | |
class | Uniform |
Class, representing abstract uniform variable. More... | |
class | UnimplementedException |
class | ValueNotDeletedException |
Namespaces | |
namespace | _workaround |
Very dirty hack for win32 project. | |
namespace | auxillary |
Auxillary namespace in our library. | |
namespace | debugger |
Typedefs | |
typedef void(* | DLL_START_PLUGIN )() |
typedef void(* | DLL_STOP_PLUGIN )() |
typedef std::vector< std::string > | StringList |
typedef std::map< std::string, std::string > | StringMap |
Enumerations | |
enum | ArrayDataType { NOTArray = 0, Array1D = 1, Array2D, Array3D } |
Represent type of storage of our array data in GPU side. More... | |
enum | ElementDataType { NOTElement = 0, ElementNumber = 1 } |
Represent type of storage of our element data in GPU side. More... | |
enum | ExceptionCodes { ERR_CANNOT_WRITE_TO_FILE, ERR_INVALID_STATE, ERR_INVALIDPARAMS, ERR_RENDERINGAPI_ERROR, ERR_DUPLICATE_ITEM, ERR_ITEM_NOT_FOUND, ERR_FILE_NOT_FOUND, ERR_INTERNAL_ERROR, ERR_RT_ASSERTION_FAILED, ERR_SOURCE_COMPILATION_ERROR, ERR_VALUE_NOT_DELETED_ERROR, ERR_NOT_IMPLEMENTED } |
enum | LoggingLevel { LL_Low = 1, LL_Normal = 2, LL_Verbose = 3 } |
The level of detail to which the log will go into. More... | |
enum | LogMessageLevel { LML_Trivial = 1, LML_Normal = 2, LML_Critical = 3 } |
The importance of a logged message. More... | |
enum | TextureUsage { TU_Static = 0, TU_Render = 1 } |
This enumeration defines usage of Texture object. More... | |
enum | ValueType { NOTType = 0, FloatType = 1, DoubleType, IntType, UnsignedIntType, CharType, UnsignedCharType } |
Type of element in our data. More... | |
enum | Vendor { DEFAULT = 0, NVIDIA = 1, MESA = 2, GDI = 3, ATI = 4 } |
Defines vendor of GPU. More... | |
Functions | |
template<typename T, typename Y> | |
bool | addToContainer (const T &what, const Y &where, std::map< Y, T > &Container) |
template<typename T> | |
bool | addToContainer (const T &what, std::vector< T > &Container) |
template<typename T> | |
bool | addToContainer (const T &what, std::list< T > &Container) |
void | cgErrorCallBackFunction () |
template<typename T, typename Y> | |
void | clearContainer (std::map< Y, T > &Container) |
template<typename T> | |
void | clearContainer (std::vector< T > &Container) |
template<typename T> | |
void | clearContainer (std::list< T > &Container) |
void _GpuCalcGLCgExport | dllStartPlugin () throw () |
void _GpuCalcGLCgExport | dllStopPlugin () |
template<ExceptionCodes Value> | |
void | Except (const Object &obj, const std::string &Description, const std::string &Source, const std::string &File, int Line) |
template<ExceptionCodes Value> | |
void | Except (const Object *obj, const std::string &Description, const std::string &Source, const std::string &File, int Line) |
Throw exception. | |
template<class T, class U> | |
bool | operator!= (SharedPtr< T > const &a, SharedPtr< U > const &b) |
template<class T, class U> | |
bool | operator< (SharedPtr< T > const &a, SharedPtr< U > const &b) |
template<class T, class U> | |
bool | operator== (SharedPtr< T > const &a, SharedPtr< U > const &b) |
template<typename T, typename Y> | |
bool | removeFromContainer (const Y &where, std::map< Y, T > &Container) |
template<typename T> | |
bool | removeFromContainer (const T &what, std::vector< T > &Container) |
template<typename T> | |
bool | removeFromContainer (const T &what, std::list< T > &Container) |
template<ExceptionCodes Value> | |
void | Warning (const Object &obj, const std::string &Description, const std::string &Source, const std::string &File, int Line) |
template<ExceptionCodes Value> | |
void | Warning (const Object *obj, const std::string &Description, const std::string &Source, const std::string &File, int Line) |
Variables | |
const char | _ApplicationClassName [] = "Application" |
const char | _CommunicatorClassName [] = "Communicator" |
const char | _DataClassName [] = "Data" |
const char | _GLCgShaderClassName [] = "GLCgShader" |
const char | _GLCgShaderSystemObjectName [] = "GLCgShaderSystem" |
const char | _GLCgShaderSystemPluginObjectName [] = "GLCgShaderSystemPlugin" |
const char | _GLCgUniformClassName [] = "GLCgUniform" |
const char | _GLFrameBufferClassName [] = "GLFrameBuffer" |
const char | _GLGLSLShaderClassName [] = "GLGLSLShader" |
const char | _GLGLSLShaderSystemObjectName [] = "GLGLSLShaderSystem" |
const char | _GLGLSLShaderSystemPluginObjectName [] = "GLGLSLShaderSystemPlugin" |
const char | _GLGLSLUniformClassName [] = "GLGLSLUniform" |
const char | _GLGraphicCoreObjectName [] = "GLGraphicCore" |
const char | _GLGraphicCorePluginObjectName [] = "GLGraphicCorePlugin" |
const char | _GLTextureClassName [] = "GLTexture" |
const char | _GraphicCoreClassName [] = "GraphicCore" |
static GLGraphicCorePlugin * | _GraphicCorePlugin |
const char | _KernelClassName [] = "Kernel" |
const char | _LibraryClassName [] = "Library" |
const char | _LogClassName [] = "Log" |
const char | _LogListenerClassName [] = "LogListener" |
const char | _LogManagerObjectName [] = "LogManager" |
const char | _PluginClassName [] = "Plugin" |
const char | _ProfilerName [] = "Profiler" |
const char | _ShaderSystemClassName [] = "ShaderSystem" |
const char | _SimpleTaskClassName [] = "SimpleTask" |
const char | _SimpleTaskManagerName [] = "SimpleTaskManager" |
const char | _SingletonClassName [] = "Singleton" |
const char | _TaskManagerClassName [] = "TaskManager" |
const char | _TextureClassName [] = "Texture" |
const char | _UnixTimerName [] = "UnixTimer" |
const char | _Win32TimerName [] = "Win32Timer" |
const char | gpucalc_name [] = "is there anybody out there" |
Defines current name of our gpucalc library. | |
const char | gpucalc_version [] = "0.9.1" |
Defines version of our gpucalc library. | |
CGcontext | LocalCGContext |
const int | Log_Threshold = 4 |
Threshold for logging. | |
static GLCgShaderSystemPlugin * | ShaderSystemPlugin |
All classes, definitions, enumerations and all other entities are located in this namespace.
In user application, programmer can use this namespace: using namespace gpucalc;
typedef void(* gpucalc::DLL_START_PLUGIN)() |
Definition at line 40 of file application.cpp.
typedef void(* gpucalc::DLL_STOP_PLUGIN)() |
Definition at line 41 of file application.cpp.
typedef std::vector<std::string> gpucalc::StringList |
Definition at line 44 of file string_util.h.
typedef std::map<std::string, std::string> gpucalc::StringMap |
Definition at line 45 of file string_util.h.
Represent type of storage of our array data in GPU side.
Data in GPU side can be represented as textures
NOTArray | Cpecial constant, representing, that our data is not array. |
Array1D |
Treated as one dimensional sampler in Shader.
In shader code we must work with this variable as with one dimensional texture sampler, and must use corresponding "get" methods |
Array2D |
Treated as two dimensional sampler in Shader.
In shader code we must work with this variable as with two dimensional texture sampler, and must use corresponding "get" methods |
Array3D |
Treated as three dimensional sampler in Shader.
In shader code we must work with this variable as with three dimensional texture sampler and must use corresponding "get" methods |
Definition at line 89 of file data.h.
00090 { 00094 NOTArray = 0, 00095 00102 Array1D = 1, 00103 00110 Array2D, 00111 00118 Array3D 00119 };
Represent type of storage of our element data in GPU side.
Data in GPU can be represented as uniform variables.
Definition at line 126 of file data.h.
00127 { 00131 NOTElement = 0, 00132 00133 00134 ElementNumber = 1 00135 };
Static definitions of error codes.
Definition at line 54 of file exception.h.
00055 { 00056 ERR_CANNOT_WRITE_TO_FILE, 00057 ERR_INVALID_STATE, 00058 ERR_INVALIDPARAMS, 00059 ERR_RENDERINGAPI_ERROR, 00060 ERR_DUPLICATE_ITEM, 00061 ERR_ITEM_NOT_FOUND, 00062 ERR_FILE_NOT_FOUND, 00063 ERR_INTERNAL_ERROR, 00064 ERR_RT_ASSERTION_FAILED, 00065 ERR_SOURCE_COMPILATION_ERROR, 00066 ERR_VALUE_NOT_DELETED_ERROR, 00067 ERR_NOT_IMPLEMENTED 00068 };
The level of detail to which the log will go into.
Definition at line 54 of file log.h.
00055 { 00056 LL_Low = 1, 00057 LL_Normal = 2, 00058 LL_Verbose = 3 00059 };
The importance of a logged message.
Definition at line 65 of file log.h.
00066 { 00067 LML_Trivial = 1, 00068 LML_Normal = 2, 00069 LML_Critical = 3 00070 };
This enumeration defines usage of Texture object.
TU_Static | Defines usage of texture as static texture. |
TU_Render | Defines usage of texture as render texture. |
Definition at line 57 of file graphic_core.h.
enum gpucalc::ValueType |
Type of element in our data.
Data can be of different types: floating point values, integer and so on.
Definition at line 46 of file data.h.
00047 { 00051 NOTType = 0, 00052 00056 FloatType = 1, 00057 00061 DoubleType, 00062 00066 IntType, 00067 00071 UnsignedIntType, 00072 00076 CharType, 00077 00081 UnsignedCharType 00082 };
enum gpucalc::Vendor |
bool gpucalc::addToContainer | ( | const T & | what, | |
const Y & | where, | |||
std::map< Y, T > & | Container | |||
) | [inline] |
Definition at line 212 of file std_headers.h.
00213 { 00214 typename std::map<Y, T>::iterator i = Container.find(where); 00215 if (i != Container.end()) 00216 { 00217 return false; 00218 } 00219 else 00220 { 00221 Container.insert(std::make_pair(where, what)); 00222 return true; 00223 } 00224 }
bool gpucalc::addToContainer | ( | const T & | what, | |
std::vector< T > & | Container | |||
) | [inline] |
Definition at line 172 of file std_headers.h.
00173 { 00174 typename std::vector<T>::iterator i = std::find(Container.begin(), Container.end(), what); 00175 if (i != Container.end()) 00176 { 00177 return false; 00178 } 00179 else 00180 { 00181 Container.push_back(what); 00182 return true; 00183 } 00184 }
bool gpucalc::addToContainer | ( | const T & | what, | |
std::list< T > & | Container | |||
) | [inline] |
Definition at line 132 of file std_headers.h.
00133 { 00134 typename std::list<T>::iterator i = std::find(Container.begin(), Container.end(), what); 00135 if (i != Container.end()) 00136 { 00137 return false; 00138 } 00139 else 00140 { 00141 Container.push_back(what); 00142 return true; 00143 } 00144 }
void gpucalc::cgErrorCallBackFunction | ( | ) |
Definition at line 256 of file gl_Cg_shader_system.cpp.
00257 { 00258 CGerror LastError = cgGetError(); 00259 if (LastError != CG_NO_ERROR) 00260 { 00261 Except<ERR_RENDERINGAPI_ERROR>(Object(_ShaderSystemClassName, _GLCgShaderSystemObjectName), 00262 std::string(cgGetErrorString(LastError)) + cgGetLastListing(LocalCGContext), "somewhere...", __FILE__, __LINE__); 00263 } 00264 }
void gpucalc::clearContainer | ( | std::map< Y, T > & | Container | ) | [inline] |
Definition at line 242 of file std_headers.h.
00243 { 00244 for (typename std::map<Y, T>::iterator i = Container.begin(); i != Container.end(); ++i) 00245 { 00246 delete (i->second); 00247 } 00248 Container.clear(); 00249 }
void gpucalc::clearContainer | ( | std::vector< T > & | Container | ) | [inline] |
Definition at line 202 of file std_headers.h.
00203 { 00204 for (typename std::vector<T>::iterator i = Container.begin(); i != Container.end(); ++i) 00205 { 00206 delete (*i); 00207 } 00208 Container.clear(); 00209 }
void gpucalc::clearContainer | ( | std::list< T > & | Container | ) | [inline] |
Definition at line 162 of file std_headers.h.
00163 { 00164 for (typename std::list<T>::iterator i = Container.begin(); i != Container.end(); ++i) 00165 { 00166 delete (*i); 00167 } 00168 Container.clear(); 00169 }
void _GpuCalcGLExport gpucalc::dllStartPlugin | ( | ) | throw () |
Definition at line 42 of file gl_Cg_shader_system_plugin_dll.cpp.
00043 { 00044 ShaderSystemPlugin = new GLCgShaderSystemPlugin(); 00045 Application::getSingleton().installPlugin(ShaderSystemPlugin); 00046 }
void _GpuCalcGLExport gpucalc::dllStopPlugin | ( | ) |
Definition at line 49 of file gl_Cg_shader_system_plugin_dll.cpp.
00050 { 00051 Application::getSingleton().uninstallPlugin(ShaderSystemPlugin); 00052 delete ShaderSystemPlugin; 00053 }
void gpucalc::Except | ( | const Object & | obj, | |
const std::string & | Description, | |||
const std::string & | Source, | |||
const std::string & | File, | |||
int | Line | |||
) | [inline] |
void gpucalc::Except | ( | const Object * | obj, | |
const std::string & | Description, | |||
const std::string & | Source, | |||
const std::string & | File, | |||
int | Line | |||
) | [inline] |
Throw exception.
This define eases throwing exception.
obj | - Object, who throws exception. | |
Description | - short description of exception. | |
Source | - where this exception thrown. | |
File | - name of file in which exception is thrown. | |
Line | - line in file where exception is thrown. |
Definition at line 526 of file exception.h.
00528 { 00529 throw ExceptionFactory::create(Int2Type<Value>(), obj, Description, Source, File.c_str(), Line); 00530 }
bool gpucalc::operator!= | ( | SharedPtr< T > const & | a, | |
SharedPtr< U > const & | b | |||
) | [inline] |
bool gpucalc::operator< | ( | SharedPtr< T > const & | a, | |
SharedPtr< U > const & | b | |||
) | [inline] |
bool gpucalc::operator== | ( | SharedPtr< T > const & | a, | |
SharedPtr< U > const & | b | |||
) | [inline] |
bool gpucalc::removeFromContainer | ( | const Y & | where, | |
std::map< Y, T > & | Container | |||
) | [inline] |
Definition at line 227 of file std_headers.h.
00228 { 00229 typename std::map<Y, T>::iterator i = Container.find(where); 00230 if (i != Container.end()) 00231 { 00232 Container.erase(i); 00233 return true; 00234 } 00235 else 00236 { 00237 return false; 00238 } 00239 }
bool gpucalc::removeFromContainer | ( | const T & | what, | |
std::vector< T > & | Container | |||
) | [inline] |
Definition at line 187 of file std_headers.h.
00188 { 00189 typename std::vector<T>::iterator i = std::find(Container.begin(), Container.end(), what); 00190 if (i != Container.end()) 00191 { 00192 Container.erase(i); 00193 return true; 00194 } 00195 else 00196 { 00197 return false; 00198 } 00199 }
bool gpucalc::removeFromContainer | ( | const T & | what, | |
std::list< T > & | Container | |||
) | [inline] |
Definition at line 147 of file std_headers.h.
00148 { 00149 typename std::list<T>::iterator i = std::find(Container.begin(), Container.end(), what); 00150 if (i != Container.end()) 00151 { 00152 Container.erase(i); 00153 return true; 00154 } 00155 else 00156 { 00157 return false; 00158 } 00159 }
void gpucalc::Warning | ( | const Object & | obj, | |
const std::string & | Description, | |||
const std::string & | Source, | |||
const std::string & | File, | |||
int | Line | |||
) | [inline] |
void gpucalc::Warning | ( | const Object * | obj, | |
const std::string & | Description, | |||
const std::string & | Source, | |||
const std::string & | File, | |||
int | Line | |||
) | [inline] |
const char gpucalc::_ApplicationClassName[] = "Application" |
Definition at line 45 of file application.h.
const char gpucalc::_CommunicatorClassName[] = "Communicator" |
Definition at line 45 of file communicator.h.
const char gpucalc::_DataClassName[] = "Data" |
const char gpucalc::_GLCgShaderClassName[] = "GLCgShader" |
Definition at line 43 of file gl_Cg_shader.h.
const char gpucalc::_GLCgShaderSystemObjectName[] = "GLCgShaderSystem" |
Definition at line 43 of file gl_Cg_shader_system.h.
const char gpucalc::_GLCgShaderSystemPluginObjectName[] = "GLCgShaderSystemPlugin" |
Definition at line 43 of file gl_Cg_shader_system_plugin.h.
const char gpucalc::_GLCgUniformClassName[] = "GLCgUniform" |
Definition at line 42 of file gl_Cg_uniform.h.
const char gpucalc::_GLFrameBufferClassName[] = "GLFrameBuffer" |
Definition at line 109 of file gl_framebuffer.h.
const char gpucalc::_GLGLSLShaderClassName[] = "GLGLSLShader" |
Definition at line 43 of file gl_glsl_shader.h.
const char gpucalc::_GLGLSLShaderSystemObjectName[] = "GLGLSLShaderSystem" |
Definition at line 43 of file gl_glsl_shader_system.h.
const char gpucalc::_GLGLSLShaderSystemPluginObjectName[] = "GLGLSLShaderSystemPlugin" |
Definition at line 43 of file gl_glsl_shader_system_plugin.h.
const char gpucalc::_GLGLSLUniformClassName[] = "GLGLSLUniform" |
Definition at line 47 of file gl_glsl_uniform.h.
const char gpucalc::_GLGraphicCoreObjectName[] = "GLGraphicCore" |
Definition at line 65 of file gl_graphic_core.h.
const char gpucalc::_GLGraphicCorePluginObjectName[] = "GLGraphicCorePlugin" |
Definition at line 42 of file gl_graphic_core_plugin.h.
const char gpucalc::_GLTextureClassName[] = "GLTexture" |
Definition at line 46 of file gl_texture.h.
const char gpucalc::_GraphicCoreClassName[] = "GraphicCore" |
Definition at line 71 of file graphic_core.h.
Definition at line 40 of file gl_graphic_core_plugin_dll.cpp.
const char gpucalc::_KernelClassName[] = "Kernel" |
const char gpucalc::_LibraryClassName[] = "Library" |
const char gpucalc::_LogClassName[] = "Log" |
const char gpucalc::_LogListenerClassName[] = "LogListener" |
const char gpucalc::_LogManagerObjectName[] = "LogManager" |
Definition at line 41 of file log_manager.h.
const char gpucalc::_PluginClassName[] = "Plugin" |
const char gpucalc::_ProfilerName[] = "Profiler" |
Definition at line 43 of file profiler.h.
const char gpucalc::_ShaderSystemClassName[] = "ShaderSystem" |
Definition at line 42 of file shader_system.h.
const char gpucalc::_SimpleTaskClassName[] = "SimpleTask" |
Definition at line 42 of file simple_task.h.
const char gpucalc::_SimpleTaskManagerName[] = "SimpleTaskManager" |
Definition at line 42 of file simple_task_manager.h.
const char gpucalc::_SingletonClassName[] = "Singleton" |
Definition at line 41 of file singleton.h.
const char gpucalc::_TaskManagerClassName[] = "TaskManager" |
Definition at line 40 of file task_manager.h.
const char gpucalc::_TextureClassName[] = "Texture" |
const char gpucalc::_UnixTimerName[] = "UnixTimer" |
Definition at line 40 of file unix_timer_impl.h.
const char gpucalc::_Win32TimerName[] = "Win32Timer" |
Definition at line 41 of file win32_timer_impl.h.
const char gpucalc::gpucalc_name[] = "is there anybody out there" |
const char gpucalc::gpucalc_version[] = "0.9.1" |
CGcontext gpucalc::LocalCGContext |
Definition at line 253 of file gl_Cg_shader_system.cpp.
const int gpucalc::Log_Threshold = 4 |
static GLGLSLShaderSystemPlugin * gpucalc::ShaderSystemPlugin [static] |
Definition at line 39 of file gl_Cg_shader_system_plugin_dll.cpp.