Abstract away access to audio streams HAL in AudioFlinger
In this CL all direct access to audio_stream_t, audio_stream_out_t, and
audio_stream_in_t their functions is encapsulated within the new
hierarchy of Stream[In|Out]HalLocal classes. AudioFlinger uses
interface classes Stream[In|Out]HalInterface to access these functions.
Note that NBAIO still receives raw HAL stream handles and needs to be
converted separately.
Bug: 30222631
Test: manual with Loopback app
Change-Id: I6388cfa2006791c9c0aa7bb186719209726a2d48
diff --git a/services/audioflinger/EffectsFactoryHalInterface.h b/services/audioflinger/EffectsFactoryHalInterface.h
index a865dd1..9a08f68 100644
--- a/services/audioflinger/EffectsFactoryHalInterface.h
+++ b/services/audioflinger/EffectsFactoryHalInterface.h
@@ -28,8 +28,6 @@
class EffectsFactoryHalInterface : public RefBase
{
public:
- virtual ~EffectsFactoryHalInterface() {}
-
// Returns the number of different effects in all loaded libraries.
virtual status_t queryNumberEffects(uint32_t *pNumEffects) = 0;
@@ -57,6 +55,8 @@
protected:
// Subclasses can not be constructed directly by clients.
EffectsFactoryHalInterface() {}
+
+ virtual ~EffectsFactoryHalInterface() {}
};
} // namespace android