Use final specifier for all effects implementation classes.

Avoid inherit from effect implementation class, all
implmentations should inherit EffectImpl directly.

Bug: 255361653
Test: atest VtsHalAudioEffectTargetTest
atest VtsHalAudioEffectFactoryTargetTest
atest VtsHalEqualizerTargetTest

Change-Id: I3c3bd990423be21f2c79f0e797d71b2d7f850dca
diff --git a/audio/aidl/default/volume/VolumeSw.h b/audio/aidl/default/volume/VolumeSw.h
index b0d2aa7..e46c864 100644
--- a/audio/aidl/default/volume/VolumeSw.h
+++ b/audio/aidl/default/volume/VolumeSw.h
@@ -26,7 +26,7 @@
 
 namespace aidl::android::hardware::audio::effect {
 
-class VolumeSwContext : public EffectContext {
+class VolumeSwContext final : public EffectContext {
   public:
     VolumeSwContext(int statusDepth, const Parameter::Common& common)
         : EffectContext(statusDepth, common) {
@@ -35,7 +35,7 @@
     // TODO: add specific context here
 };
 
-class VolumeSw : public EffectImpl {
+class VolumeSw final : public EffectImpl {
   public:
     VolumeSw() { LOG(DEBUG) << __func__; }
     ~VolumeSw() {