Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 1 | #include "rsScriptGroup2.h" |
| 2 | |
| 3 | #include "rsContext.h" |
| 4 | |
| 5 | namespace android { |
| 6 | namespace renderscript { |
| 7 | |
Yang Ni | bd0af2d | 2015-03-23 17:14:58 -0700 | [diff] [blame] | 8 | ScriptGroup2::~ScriptGroup2() { |
| 9 | if (mRSC->mHal.funcs.scriptgroup.destroy) { |
| 10 | mRSC->mHal.funcs.scriptgroup.destroy(mRSC, this); |
| 11 | } |
| 12 | } |
| 13 | |
Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 14 | void ScriptGroup2::execute(Context* rsc) { |
Yang Ni | eb9aa67 | 2015-01-27 14:32:25 -0800 | [diff] [blame] | 15 | if (rsc->mHal.funcs.scriptgroup.execute) { |
| 16 | rsc->mHal.funcs.scriptgroup.execute(rsc, this); |
| 17 | } |
Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 18 | } |
| 19 | |
Yang Ni | 8b94222 | 2015-04-02 17:48:28 -0700 | [diff] [blame] | 20 | RsScriptGroup2 rsi_ScriptGroup2Create(Context* rsc, const char* name, |
| 21 | size_t nameLength, |
| 22 | const char* cacheDir, |
Yang Ni | da0f069 | 2015-01-12 13:03:40 -0800 | [diff] [blame] | 23 | size_t cacheDirLength, |
| 24 | RsClosure* closures, size_t numClosures) { |
Yang Ni | 8b94222 | 2015-04-02 17:48:28 -0700 | [diff] [blame] | 25 | ScriptGroup2* group = new ScriptGroup2(rsc, name, cacheDir, |
| 26 | (Closure**)closures, numClosures); |
Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 27 | |
Yang Ni | eb9aa67 | 2015-01-27 14:32:25 -0800 | [diff] [blame] | 28 | // Create a device-specific implementation by calling the device driver |
| 29 | if (rsc->mHal.funcs.scriptgroup.init) { |
| 30 | rsc->mHal.funcs.scriptgroup.init(rsc, group); |
| 31 | } |
Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 32 | |
Yang Ni | bd0af2d | 2015-03-23 17:14:58 -0700 | [diff] [blame] | 33 | group->incUserRef(); |
| 34 | |
Yang Ni | eb9aa67 | 2015-01-27 14:32:25 -0800 | [diff] [blame] | 35 | return group; |
Yang Ni | 1ffd86b | 2015-01-07 09:16:40 -0800 | [diff] [blame] | 36 | } |
| 37 | |
| 38 | } // namespace renderscript |
| 39 | } // namespace android |