diff options
author | Yang Ni <yangni@google.com> | 2015-01-07 09:16:40 -0800 |
---|---|---|
committer | Yang Ni <yangni@google.com> | 2015-01-07 09:16:40 -0800 |
commit | 1ffd86b448d78366190c540f98f8b6d641cdb6cf (patch) | |
tree | 65dc9b2f0c6d53ce4858ae990ab82f34cc26fd06 /cpu_ref/rsd_cpu.h | |
parent | 82f515b5a40d030f88bf622b8c05a03ec80083ee (diff) | |
download | rs-1ffd86b448d78366190c540f98f8b6d641cdb6cf.tar.gz |
New Script Group API: runtime and cpu driver support.
Change-Id: I9c612cf8874aabaf0ca7d1640567464c71ed3070
Diffstat (limited to 'cpu_ref/rsd_cpu.h')
-rw-r--r-- | cpu_ref/rsd_cpu.h | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/cpu_ref/rsd_cpu.h b/cpu_ref/rsd_cpu.h index b0e924e3..d886cef0 100644 --- a/cpu_ref/rsd_cpu.h +++ b/cpu_ref/rsd_cpu.h @@ -45,7 +45,7 @@ namespace renderscript { class ScriptC; class Script; -class ScriptGroup; +class ScriptGroupBase; class ScriptKernelID; @@ -97,7 +97,13 @@ public: }; typedef CpuScript * (* script_lookup_t)(Context *, const Script *s); - class CpuScriptGroup { + class CpuScriptGroupBase { + public: + virtual void execute() = 0; + virtual ~CpuScriptGroupBase() {} + }; + + class CpuScriptGroup : public CpuScriptGroupBase { public: virtual void setInput(const ScriptKernelID *kid, Allocation *) = 0; virtual void setOutput(const ScriptKernelID *kid, Allocation *) = 0; @@ -105,6 +111,12 @@ public: virtual ~CpuScriptGroup() {}; }; + class CpuScriptGroup2 : public CpuScriptGroupBase { + public: + virtual void execute() = 0; + virtual ~CpuScriptGroup2() {} + }; + static Context * getTlsContext(); static const Script * getTlsScript(); static pthread_key_t getThreadTLSKey(); @@ -124,7 +136,7 @@ public: uint8_t const *bitcode, size_t bitcodeSize, uint32_t flags) = 0; virtual CpuScript * createIntrinsic(const Script *s, RsScriptIntrinsicID iid, Element *e) = 0; - virtual CpuScriptGroup * createScriptGroup(const ScriptGroup *sg) = 0; + virtual void* createScriptGroup(const ScriptGroupBase *sg) = 0; virtual bool getInForEach() = 0; #ifndef RS_COMPATIBILITY_LIB |