goldfish-camera: inline some Scene methods

getPixelElectrons and setReadoutPixel are
in the inner loop of capture functions, make them
inline.

20-30% improvement

BUG: 134165719
Change-Id: If1cec9a7212fcae4e55cefad1839769de6aa8538
Merged-In: If1cec9a7212fcae4e55cefad1839769de6aa8538
diff --git a/camera/fake-pipeline2/Scene.cpp b/camera/fake-pipeline2/Scene.cpp
index 0fea38e..4f5962b 100644
--- a/camera/fake-pipeline2/Scene.cpp
+++ b/camera/fake-pipeline2/Scene.cpp
@@ -339,35 +339,6 @@
     setReadoutPixel(0,0);
 }
 
-void Scene::setReadoutPixel(int x, int y) {
-    mCurrentX = x;
-    mCurrentY = y;
-    mSubX = (x + mOffsetX + mHandshakeX) % mMapDiv;
-    mSubY = (y + mOffsetY + mHandshakeY) % mMapDiv;
-    mSceneX = (x + mOffsetX + mHandshakeX) / mMapDiv;
-    mSceneY = (y + mOffsetY + mHandshakeY) / mMapDiv;
-    mSceneIdx = mSceneY * kSceneWidth + mSceneX;
-    mCurrentSceneMaterial = &(mCurrentColors[kScene[mSceneIdx]]);
-}
-
-const uint32_t* Scene::getPixelElectrons() {
-    const uint32_t *pixel = mCurrentSceneMaterial;
-    mCurrentX++;
-    mSubX++;
-    if (mCurrentX >= mSensorWidth) {
-        mCurrentX = 0;
-        mCurrentY++;
-        if (mCurrentY >= mSensorHeight) mCurrentY = 0;
-        setReadoutPixel(mCurrentX, mCurrentY);
-    } else if (mSubX > mMapDiv) {
-        mSceneIdx++;
-        mSceneX++;
-        mCurrentSceneMaterial = &(mCurrentColors[kScene[mSceneIdx]]);
-        mSubX = 0;
-    }
-    return pixel;
-}
-
 // Handshake model constants.
 // Frequencies measured in a nanosecond timebase
 const float Scene::kHorizShakeFreq1 = 2 * M_PI * 2  / 1e9; // 2 Hz
diff --git a/camera/fake-pipeline2/Scene.h b/camera/fake-pipeline2/Scene.h
index 3a7a001..df02691 100644
--- a/camera/fake-pipeline2/Scene.h
+++ b/camera/fake-pipeline2/Scene.h
@@ -64,13 +64,38 @@
     void calculateScene(nsecs_t time);
 
     // Set sensor pixel readout location.
-    void setReadoutPixel(int x, int y);
+    inline void setReadoutPixel(int x, int y) {
+        mCurrentX = x;
+        mCurrentY = y;
+        mSubX = (x + mOffsetX + mHandshakeX) % mMapDiv;
+        mSubY = (y + mOffsetY + mHandshakeY) % mMapDiv;
+        mSceneX = (x + mOffsetX + mHandshakeX) / mMapDiv;
+        mSceneY = (y + mOffsetY + mHandshakeY) / mMapDiv;
+        mSceneIdx = mSceneY * kSceneWidth + mSceneX;
+        mCurrentSceneMaterial = &(mCurrentColors[kScene[mSceneIdx]]);
+    }
 
     // Get sensor response in physical units (electrons) for light hitting the
     // current readout pixel, after passing through color filters. The readout
     // pixel will be auto-incremented. The returned array can be indexed with
     // ColorChannels.
-    const uint32_t* getPixelElectrons();
+    inline const uint32_t* getPixelElectrons() {
+        const uint32_t *pixel = mCurrentSceneMaterial;
+        mCurrentX++;
+        mSubX++;
+        if (mCurrentX >= mSensorWidth) {
+            mCurrentX = 0;
+            mCurrentY++;
+            if (mCurrentY >= mSensorHeight) mCurrentY = 0;
+            setReadoutPixel(mCurrentX, mCurrentY);
+        } else if (mSubX > mMapDiv) {
+            mSceneIdx++;
+            mSceneX++;
+            mCurrentSceneMaterial = &(mCurrentColors[kScene[mSceneIdx]]);
+            mSubX = 0;
+        }
+        return pixel;
+    }
 
     enum ColorChannels {
         R = 0,