diff options
Diffstat (limited to 'libs/rs/rsProgramFragment.cpp')
-rw-r--r-- | libs/rs/rsProgramFragment.cpp | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/libs/rs/rsProgramFragment.cpp b/libs/rs/rsProgramFragment.cpp index c17b94c..cbe33c7 100644 --- a/libs/rs/rsProgramFragment.cpp +++ b/libs/rs/rsProgramFragment.cpp @@ -14,13 +14,19 @@ * limitations under the License. */ +#ifndef ANDROID_RS_BUILD_FOR_HOST #include "rsContext.h" -#include "rsProgramFragment.h" - #include <GLES/gl.h> #include <GLES/glext.h> #include <GLES2/gl2.h> #include <GLES2/gl2ext.h> +#else +#include "rsContextHostStub.h" +#include <OpenGL/gl.h> +#include <OpenGL/glext.h> +#endif //ANDROID_RS_BUILD_FOR_HOST + +#include "rsProgramFragment.h" using namespace android; using namespace android::renderscript; @@ -83,12 +89,15 @@ void ProgramFragment::setupGL(const Context *rsc, ProgramFragmentState *state) glEnable(GL_TEXTURE_2D); if (rsc->checkVersion1_1()) { +#ifndef ANDROID_RS_BUILD_FOR_HOST // These are GLES only if (mPointSpriteEnable) { glEnable(GL_POINT_SPRITE_OES); } else { glDisable(GL_POINT_SPRITE_OES); } glTexEnvi(GL_POINT_SPRITE_OES, GL_COORD_REPLACE_OES, mPointSpriteEnable); +#endif //ANDROID_RS_BUILD_FOR_HOST + } mTextures[ct]->uploadCheck(rsc); glBindTexture(GL_TEXTURE_2D, mTextures[ct]->getTextureID()); @@ -144,7 +153,7 @@ void ProgramFragment::setupGL2(const Context *rsc, ProgramFragmentState *state, //LOGE("sgl2 frag1 %x", glGetError()); if ((state->mLast.get() == this) && !mDirty) { - //return; + return; } state->mLast.set(this); @@ -289,6 +298,16 @@ void ProgramFragment::init(Context *rsc) createShader(); } +void ProgramFragment::serialize(OStream *stream) const +{ + +} + +ProgramFragment *ProgramFragment::createFromStream(Context *rsc, IStream *stream) +{ + return NULL; +} + ProgramFragmentState::ProgramFragmentState() { mPF = NULL; @@ -300,7 +319,7 @@ ProgramFragmentState::~ProgramFragmentState() } -void ProgramFragmentState::init(Context *rsc, int32_t w, int32_t h) +void ProgramFragmentState::init(Context *rsc) { uint32_t tmp[5] = { RS_TEX_ENV_MODE_NONE, 0, @@ -328,6 +347,7 @@ RsProgramFragment rsi_ProgramFragmentCreate(Context *rsc, { ProgramFragment *pf = new ProgramFragment(rsc, params, paramLength); pf->incUserRef(); + //LOGE("rsi_ProgramFragmentCreate %p", pf); return pf; } @@ -337,6 +357,7 @@ RsProgramFragment rsi_ProgramFragmentCreate2(Context *rsc, const char * shaderTe { ProgramFragment *pf = new ProgramFragment(rsc, shaderText, shaderLength, params, paramLength); pf->incUserRef(); + //LOGE("rsi_ProgramFragmentCreate2 %p", pf); return pf; } |