AudioFlinger: Extract inner Client class

Test: atest audiorecord_tests audiotrack_tests audiorouting_tests trackplayerbase_tests audiosystem_tests
Test: atest AudioTrackTest AudioRecordTest
Test: YouTube and Camera
Bug: 288339104
Bug: 289135349
Merged-In: I5b2973c12b3d36663fadd2e5ed362602785e1447
Change-Id: I5b2973c12b3d36663fadd2e5ed362602785e1447
(cherry picked from commit 59867e43c84de5563c73043594e13941cd016246)
diff --git a/services/audioflinger/Effects.cpp b/services/audioflinger/Effects.cpp
index 35edf3a..1f26cb0 100644
--- a/services/audioflinger/Effects.cpp
+++ b/services/audioflinger/Effects.cpp
@@ -1678,17 +1678,16 @@
 /* static */
 sp<IAfEffectHandle> IAfEffectHandle::create(
         const sp<IAfEffectBase>& effect,
-        const sp<RefBase /*AudioFlinger::Client */>& client, // TODO(b/288339104) update type
+        const sp<Client>& client,
         const sp<media::IEffectClient>& effectClient,
         int32_t priority, bool notifyFramesProcessed)
 {
     return sp<EffectHandle>::make(
-            effect, sp<AudioFlinger::Client>::cast(client),
-            effectClient, priority, notifyFramesProcessed);
+            effect, client, effectClient, priority, notifyFramesProcessed);
 }
 
 EffectHandle::EffectHandle(const sp<IAfEffectBase>& effect,
-                                         const sp<AudioFlinger::Client>& client,
+                                         const sp<Client>& client,
                                          const sp<media::IEffectClient>& effectClient,
                                          int32_t priority, bool notifyFramesProcessed)
     : BnEffect(),