diff options
| author | Jason Sams <rjsams@android.com> | 2010-05-13 18:30:11 -0700 |
|---|---|---|
| committer | Jason Sams <rjsams@android.com> | 2010-05-13 18:35:01 -0700 |
| commit | 54db59c3594e887a412a24713fc3daa1c2404593 (patch) | |
| tree | cd78b514370d0e9b60e3711417395601824e8270 /libs/rs/rsProgramStore.h | |
| parent | f5523645a97643874840e029b4a7e9a4e4220806 (diff) | |
| download | frameworks_base-54db59c3594e887a412a24713fc3daa1c2404593.zip frameworks_base-54db59c3594e887a412a24713fc3daa1c2404593.tar.gz frameworks_base-54db59c3594e887a412a24713fc3daa1c2404593.tar.bz2 | |
Rename ProgramFragmentStore to ProgramStore.
Change-Id: Ia8ad9ac856944838ced38a2f1e8f07387050bdfd
Diffstat (limited to 'libs/rs/rsProgramStore.h')
| -rw-r--r-- | libs/rs/rsProgramStore.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/libs/rs/rsProgramStore.h b/libs/rs/rsProgramStore.h new file mode 100644 index 0000000..1b5543c --- /dev/null +++ b/libs/rs/rsProgramStore.h @@ -0,0 +1,84 @@ +/* + * Copyright (C) 2009 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ANDROID_RS_PROGRAM_FRAGMENT_STORE_H +#define ANDROID_RS_PROGRAM_FRAGMENT_STORE_H + +#include "rsProgram.h" + +// --------------------------------------------------------------------------- +namespace android { +namespace renderscript { + +class ProgramStoreState; + +class ProgramStore : public Program +{ +public: + ProgramStore(Context *); + virtual ~ProgramStore(); + + virtual void setupGL(const Context *, ProgramStoreState *); + virtual void setupGL2(const Context *, ProgramStoreState *); + + void setDepthFunc(RsDepthFunc); + void setDepthMask(bool); + + void setBlendFunc(RsBlendSrcFunc src, RsBlendDstFunc dst); + void setColorMask(bool, bool, bool, bool); + + void setDitherEnable(bool); + +protected: + bool mDitherEnable; + + bool mBlendEnable; + bool mColorRWriteEnable; + bool mColorGWriteEnable; + bool mColorBWriteEnable; + bool mColorAWriteEnable; + int32_t mBlendSrc; + int32_t mBlendDst; + + bool mDepthTestEnable; + bool mDepthWriteEnable; + int32_t mDepthFunc; + + bool mStencilTestEnable; +}; + +class ProgramStoreState +{ +public: + ProgramStoreState(); + ~ProgramStoreState(); + void init(Context *rsc, int32_t w, int32_t h); + void deinit(Context *rsc); + + ObjectBaseRef<ProgramStore> mDefault; + ObjectBaseRef<ProgramStore> mLast; + + + ProgramStore *mPFS; +}; + + +} +} +#endif + + + |
