Define light position (using new lighting spec) in Java

Also updates the relative shadow strengths.

Change-Id: I6cac7275d38df98aea9f0dda463cd7207102986a
diff --git a/libs/hwui/StatefulBaseRenderer.h b/libs/hwui/StatefulBaseRenderer.h
index 2e7f279..057006b 100644
--- a/libs/hwui/StatefulBaseRenderer.h
+++ b/libs/hwui/StatefulBaseRenderer.h
@@ -48,10 +48,11 @@
     }
 
     /**
-     * Initialize the first snapshot, computing the projection matrix,
-     * and stores the dimensions of the render target.
+     * Initialize the first snapshot, computing the projection matrix, and stores the dimensions of
+     * the render target.
      */
-    void initializeViewport(int width, int height);
+    virtual void setViewport(int width, int height);
+    virtual void initializeLight(const Vector3& lightCenter, float lightRadius);
     void initializeSaveStack(float clipLeft, float clipTop, float clipRight, float clipBottom);
 
     // getters
@@ -124,6 +125,8 @@
      */
     virtual void onSnapshotRestored(const Snapshot& removed, const Snapshot& restored) {};
 
+    virtual void onViewportInitialized() {};
+
     inline const Rect* currentClipRect() const {
         return mSnapshot->clipRect;
     }
@@ -158,6 +161,9 @@
     // TODO: should become private, once hooks needed by OpenGLRenderer are added
     sp<Snapshot> mSnapshot;
 
+    Vector3 mLightCenter;
+    float mLightRadius;
+
 }; // class StatefulBaseRenderer
 
 }; // namespace uirenderer