Move C++ API over to function tables rather than linking libRS directly.

Change-Id: I7841df768d5bd10fa941b3655673fd73496a8137
diff --git a/cpp/Element.cpp b/cpp/Element.cpp
index 51a96cd..7c58516 100644
--- a/cpp/Element.cpp
+++ b/cpp/Element.cpp
@@ -250,7 +250,7 @@
 }
 
 sp<const Element> Element::createUser(sp<RS> rs, RsDataType dt) {
-    void * id = rsElementCreate(rs->getContext(), dt, RS_KIND_USER, false, 1);
+    void * id = RS::dispatch->ElementCreate(rs->getContext(), dt, RS_KIND_USER, false, 1);
     return new Element(id, rs, dt, RS_KIND_USER, false, 1);
 }
 
@@ -258,7 +258,7 @@
     if (size < 2 || size > 4) {
         rs->throwError("Vector size out of range 2-4.");
     }
-    void *id = rsElementCreate(rs->getContext(), dt, RS_KIND_USER, false, size);
+    void *id = RS::dispatch->ElementCreate(rs->getContext(), dt, RS_KIND_USER, false, size);
     return new Element(id, rs, dt, RS_KIND_USER, false, size);
 }
 
@@ -309,7 +309,7 @@
         break;
     }
 
-    void * id = rsElementCreate(rs->getContext(), dt, dk, true, size);
+    void * id = RS::dispatch->ElementCreate(rs->getContext(), dt, dk, true, size);
     return new Element(id, rs, dt, dk, true, size);
 }
 
@@ -371,7 +371,7 @@
         sizeArray[ct] = mElementNames[ct].length();
     }
 
-    void *id = rsElementCreate2(mRS->getContext(),
+    void *id = RS::dispatch->ElementCreate2(mRS->getContext(),
                                 (RsElement *)elementArray, fieldCount,
                                 nameArray, fieldCount * sizeof(size_t),  sizeArray,
                                 (const uint32_t *)mArraySizes.array(), fieldCount);