#include "rsScriptGroup2.h"
#include "rsContext.h"
namespace android {
namespace renderscript {
ScriptGroup2::~ScriptGroup2() {
if (mRSC->mHal.funcs.scriptgroup.destroy) {
mRSC->mHal.funcs.scriptgroup.destroy(mRSC, this);
}
}
void ScriptGroup2::execute(Context* rsc) {
if (rsc->mHal.funcs.scriptgroup.execute) {
rsc->mHal.funcs.scriptgroup.execute(rsc, this);
}
}
RsScriptGroup2 rsi_ScriptGroup2Create(Context* rsc, const char* name,
size_t nameLength,
const char* cacheDir,
size_t cacheDirLength,
RsClosure* closures, size_t numClosures) {
ScriptGroup2* group = new ScriptGroup2(rsc, name, cacheDir,
(Closure**)closures, numClosures);
// Create a device-specific implementation by calling the device driver
if (rsc->mHal.funcs.scriptgroup.init) {
rsc->mHal.funcs.scriptgroup.init(rsc, group);
}
group->incUserRef();
return group;
}
} // namespace renderscript
} // namespace android