summaryrefslogtreecommitdiff
path: root/rs_hal.h
diff options
context:
space:
mode:
authorAlex Sakhartchouk <alexst@google.com>2011-04-29 16:49:08 -0700
committerAlex Sakhartchouk <alexst@google.com>2011-04-29 16:49:08 -0700
commita04e30dbb5ab11592b03666bb3d102070759c58e (patch)
tree7db6cf06de3d034d8bc8b8f7f7e4a2ed212556e4 /rs_hal.h
parent609201dadcf408cf6246f48a752b8ffbb49d41c3 (diff)
downloadrs-a04e30dbb5ab11592b03666bb3d102070759c58e.tar.gz
Moving renderscript GL code into the HAL
This change affects - shaders - meshes - fonts - quad rendering Change-Id: I2a53acb4cd1fa8f4c6e67668f6ee969f3d7f7aa1
Diffstat (limited to 'rs_hal.h')
-rw-r--r--rs_hal.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/rs_hal.h b/rs_hal.h
index 4283d4a6..d2f273bc 100644
--- a/rs_hal.h
+++ b/rs_hal.h
@@ -32,6 +32,9 @@ class Script;
class ScriptC;
class ProgramStore;
class ProgramRaster;
+class ProgramVertex;
+class ProgramFragment;
+class Mesh;
typedef void *(*RsHalSymbolLookupFunc)(void *usrptr, char const *symbolName);
@@ -98,6 +101,25 @@ typedef struct {
void (*destroy)(const Context *rsc, const ProgramRaster *ps);
} raster;
+ struct {
+ bool (*init)(const Context *rsc, const ProgramVertex *pv,
+ const char* shader, uint32_t shaderLen);
+ void (*setActive)(const Context *rsc, const ProgramVertex *pv);
+ void (*destroy)(const Context *rsc, const ProgramVertex *pv);
+ } vertex;
+
+ struct {
+ bool (*init)(const Context *rsc, const ProgramFragment *pf,
+ const char* shader, uint32_t shaderLen);
+ void (*setActive)(const Context *rsc, const ProgramFragment *pf);
+ void (*destroy)(const Context *rsc, const ProgramFragment *pf);
+ } fragment;
+
+ struct {
+ bool (*init)(const Context *rsc, const Mesh *m);
+ void (*draw)(const Context *rsc, const Mesh *m, uint32_t primIndex, uint32_t start, uint32_t len);
+ void (*destroy)(const Context *rsc, const Mesh *m);
+ } mesh;
} RsdHalFunctions;