FGS Metrics Hooks for Microphone

Adding in hooks for microphone subsystem

Test: manual testing on device
Bug: b/263304156
Change-Id: I9e7b6bdc2095bf36aa13a91a90c42e589d15803b
diff --git a/services/audioflinger/TrackMetrics.h b/services/audioflinger/TrackMetrics.h
index a1a0cfe..96a3309 100644
--- a/services/audioflinger/TrackMetrics.h
+++ b/services/audioflinger/TrackMetrics.h
@@ -72,9 +72,15 @@
         ++mIntervalCount;
         const auto& mActivityManager = getActivityManager();
         if (mActivityManager) {
-            mActivityManager->logFgsApiBegin(AUDIO_API,
-                mUid,
-                IPCThreadState::self() -> getCallingPid());
+            if (mIsOut) {
+                mActivityManager->logFgsApiBegin(AUDIO_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            } else {
+                mActivityManager->logFgsApiBegin(MICROPHONE_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            }
         }
     }
 
@@ -107,9 +113,15 @@
         }
         const auto& mActivityManager = getActivityManager();
         if (mActivityManager) {
-            mActivityManager->logFgsApiEnd(AUDIO_API,
-                mUid,
-                IPCThreadState::self() -> getCallingPid());
+            if (mIsOut) {
+                mActivityManager->logFgsApiEnd(AUDIO_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            } else {
+                mActivityManager->logFgsApiEnd(MICROPHONE_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            }
         }
     }
 
@@ -255,6 +267,7 @@
     const bool        mIsOut;  // if true, than a playback track, otherwise used for record.
 
     static constexpr int AUDIO_API = 5;
+    static constexpr int MICROPHONE_API = 6;
     const int         mUid;
 
     mutable           std::mutex mLock;