diff --git a/src/osgWrappers/osg/Program.cpp b/src/osgWrappers/osg/Program.cpp index 2fb1b3d17..cb146eb7e 100644 --- a/src/osgWrappers/osg/Program.cpp +++ b/src/osgWrappers/osg/Program.cpp @@ -17,130 +17,6 @@ #include #include -BEGIN_OBJECT_REFLECTOR(osg::GL2Extensions) - BaseType(osg::Referenced); - Constructor1(IN, unsigned int, contextID); - Constructor1(IN, const osg::GL2Extensions &, rhs); - Method1(void, lowestCommonDenominator, IN, const osg::GL2Extensions &, rhs); - Method1(void, setupGL2Extensions, IN, unsigned int, contextID); - Method0(bool, isGlslSupported); - Method0(float, getGlVersion); - Method0(float, getLanguageVersion); - Method1(void, setShaderObjectsSupported, IN, bool, flag); - Method0(bool, isShaderObjectsSupported); - Method1(void, setVertexShaderSupported, IN, bool, flag); - Method0(bool, isVertexShaderSupported); - Method1(void, setFragmentShaderSupported, IN, bool, flag); - Method0(bool, isFragmentShaderSupported); - Method1(void, setLanguage100Supported, IN, bool, flag); - Method0(bool, isLanguage100Supported); - Method2(void, glBlendEquationSeparate, IN, GLenum, modeRGB, IN, GLenum, modeAlpha); - Method2(void, glDrawBuffers, IN, GLsizei, n, IN, const GLenum *, bufs); - Method4(void, glStencilOpSeparate, IN, GLenum, face, IN, GLenum, sfail, IN, GLenum, dpfail, IN, GLenum, dppass); - Method4(void, glStencilFuncSeparate, IN, GLenum, frontfunc, IN, GLenum, backfunc, IN, GLint, ref, IN, GLuint, mask); - Method2(void, glStencilMaskSeparate, IN, GLenum, face, IN, GLuint, mask); - Method2(void, glAttachShader, IN, GLuint, program, IN, GLuint, shader); - Method3(void, glBindAttribLocation, IN, GLuint, program, IN, GLuint, index, IN, const GLchar *, name); - Method1(void, glCompileShader, IN, GLuint, shader); - Method0(GLuint, glCreateProgram); - Method1(GLuint, glCreateShader, IN, GLenum, type); - Method1(void, glDeleteProgram, IN, GLuint, program); - Method1(void, glDeleteShader, IN, GLuint, shader); - Method2(void, glDetachShader, IN, GLuint, program, IN, GLuint, shader); - Method1(void, glDisableVertexAttribArray, IN, GLuint, index); - Method1(void, glEnableVertexAttribArray, IN, GLuint, index); - Method7(void, glGetActiveAttrib, IN, GLuint, program, IN, GLuint, index, IN, GLsizei, bufSize, IN, GLsizei *, length, IN, GLint *, size, IN, GLenum *, type, IN, GLchar *, name); - Method7(void, glGetActiveUniform, IN, GLuint, program, IN, GLuint, index, IN, GLsizei, bufSize, IN, GLsizei *, length, IN, GLint *, size, IN, GLenum *, type, IN, GLchar *, name); - Method4(void, glGetAttachedShaders, IN, GLuint, program, IN, GLsizei, maxCount, IN, GLsizei *, count, IN, GLuint *, obj); - Method2(GLint, glGetAttribLocation, IN, GLuint, program, IN, const GLchar *, name); - Method3(void, glGetProgramiv, IN, GLuint, program, IN, GLenum, pname, IN, GLint *, params); - Method4(void, glGetProgramInfoLog, IN, GLuint, program, IN, GLsizei, bufSize, IN, GLsizei *, length, IN, GLchar *, infoLog); - Method3(void, glGetShaderiv, IN, GLuint, shader, IN, GLenum, pname, IN, GLint *, params); - Method4(void, glGetShaderInfoLog, IN, GLuint, shader, IN, GLsizei, bufSize, IN, GLsizei *, length, IN, GLchar *, infoLog); - Method4(void, glGetShaderSource, IN, GLuint, shader, IN, GLsizei, bufSize, IN, GLsizei *, length, IN, GLchar *, source); - Method2(GLint, glGetUniformLocation, IN, GLuint, program, IN, const GLchar *, name); - Method3(void, glGetUniformfv, IN, GLuint, program, IN, GLint, location, IN, GLfloat *, params); - Method3(void, glGetUniformiv, IN, GLuint, program, IN, GLint, location, IN, GLint *, params); - Method3(void, glGetVertexAttribdv, IN, GLuint, index, IN, GLenum, pname, IN, GLdouble *, params); - Method3(void, glGetVertexAttribfv, IN, GLuint, index, IN, GLenum, pname, IN, GLfloat *, params); - Method3(void, glGetVertexAttribiv, IN, GLuint, index, IN, GLenum, pname, IN, GLint *, params); - Method3(void, glGetVertexAttribPointerv, IN, GLuint, index, IN, GLenum, pname, IN, GLvoid **, pointer); - Method1(GLboolean, glIsProgram, IN, GLuint, program); - Method1(GLboolean, glIsShader, IN, GLuint, shader); - Method1(void, glLinkProgram, IN, GLuint, program); - Method4(void, glShaderSource, IN, GLuint, shader, IN, GLsizei, count, IN, const GLchar **, string, IN, const GLint *, length); - Method1(void, glUseProgram, IN, GLuint, program); - Method2(void, glUniform1f, IN, GLint, location, IN, GLfloat, v0); - Method3(void, glUniform2f, IN, GLint, location, IN, GLfloat, v0, IN, GLfloat, v1); - Method4(void, glUniform3f, IN, GLint, location, IN, GLfloat, v0, IN, GLfloat, v1, IN, GLfloat, v2); - Method5(void, glUniform4f, IN, GLint, location, IN, GLfloat, v0, IN, GLfloat, v1, IN, GLfloat, v2, IN, GLfloat, v3); - Method2(void, glUniform1i, IN, GLint, location, IN, GLint, v0); - Method3(void, glUniform2i, IN, GLint, location, IN, GLint, v0, IN, GLint, v1); - Method4(void, glUniform3i, IN, GLint, location, IN, GLint, v0, IN, GLint, v1, IN, GLint, v2); - Method5(void, glUniform4i, IN, GLint, location, IN, GLint, v0, IN, GLint, v1, IN, GLint, v2, IN, GLint, v3); - Method3(void, glUniform1fv, IN, GLint, location, IN, GLsizei, count, IN, const GLfloat *, value); - Method3(void, glUniform2fv, IN, GLint, location, IN, GLsizei, count, IN, const GLfloat *, value); - Method3(void, glUniform3fv, IN, GLint, location, IN, GLsizei, count, IN, const GLfloat *, value); - Method3(void, glUniform4fv, IN, GLint, location, IN, GLsizei, count, IN, const GLfloat *, value); - Method3(void, glUniform1iv, IN, GLint, location, IN, GLsizei, count, IN, const GLint *, value); - Method3(void, glUniform2iv, IN, GLint, location, IN, GLsizei, count, IN, const GLint *, value); - Method3(void, glUniform3iv, IN, GLint, location, IN, GLsizei, count, IN, const GLint *, value); - Method3(void, glUniform4iv, IN, GLint, location, IN, GLsizei, count, IN, const GLint *, value); - Method4(void, glUniformMatrix2fv, IN, GLint, location, IN, GLsizei, count, IN, GLboolean, transpose, IN, const GLfloat *, value); - Method4(void, glUniformMatrix3fv, IN, GLint, location, IN, GLsizei, count, IN, GLboolean, transpose, IN, const GLfloat *, value); - Method4(void, glUniformMatrix4fv, IN, GLint, location, IN, GLsizei, count, IN, GLboolean, transpose, IN, const GLfloat *, value); - Method1(void, glValidateProgram, IN, GLuint, program); - Method2(void, glVertexAttrib1d, IN, GLuint, index, IN, GLdouble, x); - Method2(void, glVertexAttrib1dv, IN, GLuint, index, IN, const GLdouble *, v); - Method2(void, glVertexAttrib1f, IN, GLuint, index, IN, GLfloat, x); - Method2(void, glVertexAttrib1fv, IN, GLuint, index, IN, const GLfloat *, v); - Method2(void, glVertexAttrib1s, IN, GLuint, index, IN, GLshort, x); - Method2(void, glVertexAttrib1sv, IN, GLuint, index, IN, const GLshort *, v); - Method3(void, glVertexAttrib2d, IN, GLuint, index, IN, GLdouble, x, IN, GLdouble, y); - Method2(void, glVertexAttrib2dv, IN, GLuint, index, IN, const GLdouble *, v); - Method3(void, glVertexAttrib2f, IN, GLuint, index, IN, GLfloat, x, IN, GLfloat, y); - Method2(void, glVertexAttrib2fv, IN, GLuint, index, IN, const GLfloat *, v); - Method3(void, glVertexAttrib2s, IN, GLuint, index, IN, GLshort, x, IN, GLshort, y); - Method2(void, glVertexAttrib2sv, IN, GLuint, index, IN, const GLshort *, v); - Method4(void, glVertexAttrib3d, IN, GLuint, index, IN, GLdouble, x, IN, GLdouble, y, IN, GLdouble, z); - Method2(void, glVertexAttrib3dv, IN, GLuint, index, IN, const GLdouble *, v); - Method4(void, glVertexAttrib3f, IN, GLuint, index, IN, GLfloat, x, IN, GLfloat, y, IN, GLfloat, z); - Method2(void, glVertexAttrib3fv, IN, GLuint, index, IN, const GLfloat *, v); - Method4(void, glVertexAttrib3s, IN, GLuint, index, IN, GLshort, x, IN, GLshort, y, IN, GLshort, z); - Method2(void, glVertexAttrib3sv, IN, GLuint, index, IN, const GLshort *, v); - Method2(void, glVertexAttrib4Nbv, IN, GLuint, index, IN, const GLbyte *, v); - Method2(void, glVertexAttrib4Niv, IN, GLuint, index, IN, const GLint *, v); - Method2(void, glVertexAttrib4Nsv, IN, GLuint, index, IN, const GLshort *, v); - Method5(void, glVertexAttrib4Nub, IN, GLuint, index, IN, GLubyte, x, IN, GLubyte, y, IN, GLubyte, z, IN, GLubyte, w); - Method2(void, glVertexAttrib4Nubv, IN, GLuint, index, IN, const GLubyte *, v); - Method2(void, glVertexAttrib4Nuiv, IN, GLuint, index, IN, const GLuint *, v); - Method2(void, glVertexAttrib4Nusv, IN, GLuint, index, IN, const GLushort *, v); - Method2(void, glVertexAttrib4bv, IN, GLuint, index, IN, const GLbyte *, v); - Method5(void, glVertexAttrib4d, IN, GLuint, index, IN, GLdouble, x, IN, GLdouble, y, IN, GLdouble, z, IN, GLdouble, w); - Method2(void, glVertexAttrib4dv, IN, GLuint, index, IN, const GLdouble *, v); - Method5(void, glVertexAttrib4f, IN, GLuint, index, IN, GLfloat, x, IN, GLfloat, y, IN, GLfloat, z, IN, GLfloat, w); - Method2(void, glVertexAttrib4fv, IN, GLuint, index, IN, const GLfloat *, v); - Method2(void, glVertexAttrib4iv, IN, GLuint, index, IN, const GLint *, v); - Method5(void, glVertexAttrib4s, IN, GLuint, index, IN, GLshort, x, IN, GLshort, y, IN, GLshort, z, IN, GLshort, w); - Method2(void, glVertexAttrib4sv, IN, GLuint, index, IN, const GLshort *, v); - Method2(void, glVertexAttrib4ubv, IN, GLuint, index, IN, const GLubyte *, v); - Method2(void, glVertexAttrib4uiv, IN, GLuint, index, IN, const GLuint *, v); - Method2(void, glVertexAttrib4usv, IN, GLuint, index, IN, const GLushort *, v); - Method6(void, glVertexAttribPointer, IN, GLuint, index, IN, GLint, size, IN, GLenum, type, IN, GLboolean, normalized, IN, GLsizei, stride, IN, const GLvoid *, pointer); - Method0(GLuint, getCurrentProgram); - Method2(bool, getProgramInfoLog, IN, GLuint, program, IN, std::string &, result); - Method2(bool, getShaderInfoLog, IN, GLuint, shader, IN, std::string &, result); - Method2(bool, getAttribLocation, IN, const char *, attribName, IN, GLuint &, slot); - ReadOnlyProperty(GLuint, CurrentProgram); - WriteOnlyProperty(bool, FragmentShaderSupported); - ReadOnlyProperty(float, GlVersion); - WriteOnlyProperty(bool, Language100Supported); - ReadOnlyProperty(float, LanguageVersion); - WriteOnlyProperty(bool, ShaderObjectsSupported); - WriteOnlyProperty(bool, VertexShaderSupported); - WriteOnlyProperty(unsigned int, upGL2Extensions); -END_REFLECTOR - TYPE_NAME_ALIAS(std::map< std::string COMMA GLuint >, osg::Program::AttribBindingList); TYPE_NAME_ALIAS(std::map< std::string COMMA std::pair< GLint COMMA GLenum > >, osg::Program::NameInfoMap); @@ -165,7 +41,8 @@ BEGIN_OBJECT_REFLECTOR(osg::Program) Method1(osg::Shader *, getShader, IN, unsigned int, i); Method1(const osg::Shader *, getShader, IN, unsigned int, i); Method1(bool, removeShader, IN, osg::Shader *, shader); - Method2(void, bindAttribLocation, IN, GLuint, index, IN, const char *, name); + Method2(void, addBindAttribLocation, IN, const std::string &, name, IN, GLuint, index); + Method1(void, removeBindAttribLocation, IN, const std::string &, name); Method0(const osg::Program::AttribBindingList &, getAttribBindingList); Method0(bool, isFixedFunction); Method2(bool, getGlProgramInfoLog, IN, unsigned int, contextID, IN, std::string &, log); diff --git a/src/osgWrappers/osg/Shader.cpp b/src/osgWrappers/osg/Shader.cpp index ed4c97686..12610234f 100644 --- a/src/osgWrappers/osg/Shader.cpp +++ b/src/osgWrappers/osg/Shader.cpp @@ -9,8 +9,8 @@ #include #include +#include #include -#include #include BEGIN_ENUM_REFLECTOR(osg::Shader::Type) @@ -19,16 +19,12 @@ BEGIN_ENUM_REFLECTOR(osg::Shader::Type) EnumLabel(osg::Shader::UNDEFINED); END_REFLECTOR -BEGIN_OBJECT_REFLECTOR(osg::Shader) +BEGIN_ABSTRACT_OBJECT_REFLECTOR(osg::Shader) BaseType(osg::Object); ConstructorWithDefaults1(IN, osg::Shader::Type, type, osg::Shader::UNDEFINED); Constructor2(IN, osg::Shader::Type, type, IN, const std::string &, source); ConstructorWithDefaults2(IN, const osg::Shader &, rhs, , IN, const osg::CopyOp &, copyop, osg::CopyOp::SHALLOW_COPY); - Method0(osg::Object *, cloneType); - Method1(osg::Object *, clone, IN, const osg::CopyOp &, copyop); - Method1(bool, isSameKindAs, IN, const osg::Object *, obj); - Method0(const char *, libraryName); - Method0(const char *, className); + Method2(, META_Object, IN, osg, x, IN, osg::Shader, x); Method1(int, compare, IN, const osg::Shader &, rhs); Method1(bool, setType, IN, osg::Shader::Type, t); Method1(void, setShaderSource, IN, const std::string &, sourceText); diff --git a/src/osgWrappers/osg/Uniform.cpp b/src/osgWrappers/osg/Uniform.cpp index 78c049349..27773b89a 100644 --- a/src/osgWrappers/osg/Uniform.cpp +++ b/src/osgWrappers/osg/Uniform.cpp @@ -10,10 +10,11 @@ #include #include -#include +#include +#include +#include #include #include -#include #include #include #include @@ -67,7 +68,8 @@ BEGIN_OBJECT_REFLECTOR(osg::Uniform) Constructor2(IN, const char *, name, IN, const osg::Vec2 &, v2); Constructor2(IN, const char *, name, IN, const osg::Vec3 &, v3); Constructor2(IN, const char *, name, IN, const osg::Vec4 &, v4); - Constructor2(IN, const char *, name, IN, const osg::Matrix &, m4); + Constructor2(IN, const char *, name, IN, const osg::Matrixf &, m4); + Constructor2(IN, const char *, name, IN, const osg::Matrixd &, m4); Constructor3(IN, const char *, name, IN, int, i0, IN, int, i1); Constructor4(IN, const char *, name, IN, int, i0, IN, int, i1, IN, int, i2); Constructor5(IN, const char *, name, IN, int, i0, IN, int, i1, IN, int, i2, IN, int, i3); @@ -88,7 +90,8 @@ BEGIN_OBJECT_REFLECTOR(osg::Uniform) Method1(bool, set, IN, const osg::Vec2 &, v2); Method1(bool, set, IN, const osg::Vec3 &, v3); Method1(bool, set, IN, const osg::Vec4 &, v4); - Method1(bool, set, IN, const osg::Matrix &, m4); + Method1(bool, set, IN, const osg::Matrixf &, m4); + Method1(bool, set, IN, const osg::Matrixd &, m4); Method2(bool, set, IN, int, i0, IN, int, i1); Method3(bool, set, IN, int, i0, IN, int, i1, IN, int, i2); Method4(bool, set, IN, int, i0, IN, int, i1, IN, int, i2, IN, int, i3); @@ -101,7 +104,8 @@ BEGIN_OBJECT_REFLECTOR(osg::Uniform) Method1(bool, get, IN, osg::Vec2 &, v2); Method1(bool, get, IN, osg::Vec3 &, v3); Method1(bool, get, IN, osg::Vec4 &, v4); - Method1(bool, get, IN, osg::Matrix &, m4); + Method1(bool, get, IN, osg::Matrixf &, m4); + Method1(bool, get, IN, osg::Matrixd &, m4); Method2(bool, get, IN, int &, i0, IN, int &, i1); Method3(bool, get, IN, int &, i0, IN, int &, i1, IN, int &, i2); Method4(bool, get, IN, int &, i0, IN, int &, i1, IN, int &, i2, IN, int &, i3); diff --git a/src/osgWrappers/osgParticle/ParticleEffect.cpp b/src/osgWrappers/osgParticle/ParticleEffect.cpp index 4ab2ed407..791a573fe 100644 --- a/src/osgWrappers/osgParticle/ParticleEffect.cpp +++ b/src/osgWrappers/osgParticle/ParticleEffect.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -28,6 +29,10 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osgParticle::ParticleEffect) Method1(void, accept, IN, osg::NodeVisitor &, nv); Method1(void, setUseLocalParticleSystem, IN, bool, local); Method0(bool, getUseLocalParticleSystem); + Method1(void, setTextureFileName, IN, const std::string &, filename); + Method0(const std::string &, getTextureFileName); + Method1(void, setDefaultParticleTemplate, IN, const osgParticle::Particle &, p); + Method0(const osgParticle::Particle &, getDefaultParticleTemplate); Method1(void, setPosition, IN, const osg::Vec3 &, position); Method0(const osg::Vec3 &, getPosition); Method1(void, setScale, IN, float, scale); @@ -53,6 +58,7 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osgParticle::ParticleEffect) Method0(void, setDefaults); Method0(void, setUpEmitterAndProgram); Method0(void, buildEffect); + Property(const osgParticle::Particle &, DefaultParticleTemplate); ReadOnlyProperty(osgParticle::Emitter *, Emitter); Property(double, EmitterDuration); Property(float, Intensity); @@ -62,6 +68,7 @@ BEGIN_ABSTRACT_OBJECT_REFLECTOR(osgParticle::ParticleEffect) ReadOnlyProperty(osgParticle::Program *, Program); Property(float, Scale); Property(double, StartTime); + Property(const std::string &, TextureFileName); Property(bool, UseLocalParticleSystem); Property(const osg::Vec3 &, Wind); END_REFLECTOR diff --git a/src/osgWrappers/osgUtil/Optimizer.cpp b/src/osgWrappers/osgUtil/Optimizer.cpp index 58d9a753b..9849d192e 100644 --- a/src/osgWrappers/osgUtil/Optimizer.cpp +++ b/src/osgWrappers/osgUtil/Optimizer.cpp @@ -110,6 +110,7 @@ BEGIN_VALUE_REFLECTOR(osgUtil::Optimizer::FlattenStaticTransformsVisitor) Method1(void, apply, IN, osg::Node &, geode); Method1(void, apply, IN, osg::Geode &, geode); Method1(void, apply, IN, osg::Billboard &, geode); + Method1(void, apply, IN, osg::ProxyNode &, node); Method1(void, apply, IN, osg::Transform &, transform); Method1(bool, removeTransforms, IN, osg::Node *, nodeWeCannotRemove); END_REFLECTOR