Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b1631381 authored by Glenn Kasten's avatar Glenn Kasten
Browse files

Use virtual destructors

It turns out to be just a comment, as all except AudioMixer are RefBase.

There are only a few performance-sensitive cases where it's worth thinking
about whether you need a virtual destructor, and the headache usually
outweighs the benefit.

Change-Id: I716292f9556ec17c29ce8c76ac8ae602cb496533
parent f55bc564
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -322,7 +322,7 @@ private:
                                        uint32_t flags,
                                        const sp<IMemory>& sharedBuffer,
                                        int sessionId);
                                ~TrackBase();
            virtual             ~TrackBase();

            virtual status_t    start() = 0;
            virtual void        stop() = 0;
@@ -581,7 +581,7 @@ private:
                                        int frameCount,
                                        const sp<IMemory>& sharedBuffer,
                                        int sessionId);
                                ~Track();
            virtual             ~Track();

                    void        dump(char* buffer, size_t size);
            virtual status_t    start();
@@ -664,7 +664,7 @@ private:
                                        audio_format_t format,
                                        uint32_t channelMask,
                                        int frameCount);
                                ~OutputTrack();
            virtual             ~OutputTrack();

            virtual status_t    start();
            virtual void        stop();
@@ -845,7 +845,7 @@ private:
    public:

        DirectOutputThread (const sp<AudioFlinger>& audioFlinger, AudioStreamOut* output, int id, uint32_t device);
        ~DirectOutputThread();
        virtual                 ~DirectOutputThread();

        // Thread virtuals
        virtual     bool        threadLoop();
@@ -871,7 +871,7 @@ private:
    class DuplicatingThread : public MixerThread {
    public:
        DuplicatingThread (const sp<AudioFlinger>& audioFlinger, MixerThread* mainThread, int id);
        ~DuplicatingThread();
        virtual                 ~DuplicatingThread();

        // Thread virtuals
        virtual     bool        threadLoop();
@@ -946,7 +946,7 @@ private:
                                        int frameCount,
                                        uint32_t flags,
                                        int sessionId);
                                ~RecordTrack();
            virtual             ~RecordTrack();

            virtual status_t    start();
            virtual void        stop();
@@ -975,7 +975,7 @@ private:
                        uint32_t channels,
                        int id,
                        uint32_t device);
                ~RecordThread();
                virtual     ~RecordThread();

        virtual bool        threadLoop();
        virtual status_t    readyToRun();
@@ -1064,7 +1064,7 @@ private:
                        effect_descriptor_t *desc,
                        int id,
                        int sessionId);
        ~EffectModule();
        virtual ~EffectModule();

        enum effect_state {
            IDLE,
@@ -1241,7 +1241,7 @@ mutable Mutex mLock; // mutex for process, commands and handl
    class EffectChain: public RefBase {
    public:
        EffectChain(const wp<ThreadBase>& wThread, int sessionId);
        ~EffectChain();
        virtual ~EffectChain();

        // special key used for an entry in mSuspendedEffects keyed vector
        // corresponding to a suspend all request.
+1 −1
Original line number Diff line number Diff line
@@ -33,7 +33,7 @@ class AudioMixer
public:
                            AudioMixer(size_t frameCount, uint32_t sampleRate);

                            ~AudioMixer();
    /*virtual*/             ~AudioMixer();  // non-virtual saves a v-table, restore if sub-classed

    static const uint32_t MAX_NUM_TRACKS = 32;
    static const uint32_t MAX_NUM_CHANNELS = 2;
+1 −1
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ class AudioResamplerSinc : public AudioResampler {
public:
    AudioResamplerSinc(int bitDepth, int inChannelCount, int32_t sampleRate);

    ~AudioResamplerSinc();
    virtual ~AudioResamplerSinc();

    virtual void resample(int32_t* out, size_t outFrameCount,
            AudioBufferProvider* provider);