UniShader  1.0.0a
Interface for GPGPU and working with shader programs
 All Classes Functions Typedefs Enumerations Enumerator
D:/Visual Studio 2010/Projects/Unishader project/Unishader/include/UniShader/UniShader.h
00001 #pragma once
00002 #ifndef UNISHADER_H
00003 #define UNISHADER_H
00004 
00005 //Include whole API
00006 #include <UniShader/Config.h>
00007 #include <UniShader/Utility.h>
00008 #include <UniShader/ShaderObject.h>
00009 #include <UniShader/ShaderProgram.h>
00010 #include <UniShader/Buffer.h>
00011 #include <UniShader/Attribute.h>
00012 #include <UniShader/Uniform.h>
00013 #include <UniShader/Varying.h>
00014 #include <UniShader/TextureBuffer.h>
00015 #include <UniShader/PrimitiveType.h>
00016 
00017 #include <string>
00018 
00019 UNISHADER_BEGIN
00020 
00022 
00027 class UniShader_API UniShader{
00028 public:
00029         UniShader();
00030         ~UniShader();
00031 
00033 
00036         void connectProgram(ShaderProgram::Ptr& program);
00037 
00039         void disconnectProgram();
00040 
00042 
00049         void render(PrimitiveType primitiveType, unsigned int primitiveCount, unsigned int offset = 0, bool wait = false);
00050 private:
00051         ShaderProgram::Ptr m_program;
00052 };
00053 
00054 UNISHADER_END
00055 
00056 #endif