fixup! Reset dump values when pause function is called
[platform/core/api/audio-io.git] / include / CAudioOutput.h
index 6adb991..8b9b0bc 100644 (file)
@@ -32,45 +32,44 @@ namespace tizen_media_audio {
     class CAudioOutput : public CAudioIO {
     public:
         /* Constructor & Destructor */
-        CAudioOutput(CAudioInfo& info);
-        CAudioOutput(
-                    unsigned int            smapleRate,
-                    CAudioInfo::EChannel    channel,
-                    CAudioInfo::ESampleType sampleType,
-                    CAudioInfo::EAudioType  type);
-        ~CAudioOutput();
+        explicit CAudioOutput(CAudioInfo& info);
+        ~CAudioOutput() = default;
 
         /* Overridden Handler */
-        virtual void onStream(CPulseAudioClient* pClient, size_t length);
-        virtual void onInterrupt(CAudioSessionHandler* pHandler, int id, mm_sound_focus_type_e focus_type, mm_sound_focus_state_e state, const char *reason_for_change, const char *additional_info);
-        virtual void onSignal(CAudioSessionHandler* pHandler, mm_sound_signal_name_t signal, int value);
+        void onStream(CPulseAudioClient* pClient, size_t length) override;
+        void onCorked(CPulseAudioClient* pClient, bool corked) override;
 
         /* Implemented Methods */
-        virtual void initialize() throw (CAudioError);
-        virtual void finalize();
+        void initialize() override;
+        void finalize() override;
 
-        virtual void prepare() throw (CAudioError);
-        virtual void unprepare() throw (CAudioError);
+        void prepare() override;
+        void unprepare() override;
 
-        virtual void pause() throw (CAudioError);
-        virtual void resume() throw (CAudioError);
+        void pause() override;
+        void resume() override;
 
-        virtual void drain() throw (CAudioError);
-        virtual void flush() throw (CAudioError);
+        void drain();
+        void flush() override;
 
-        virtual int  getBufferSize() throw (CAudioError);
+        int getBufferSize() override;
 
         /* Methods */
-        size_t write(const void* buffer, size_t length) throw (CAudioError);
+        size_t write(const void* buffer, size_t length);
 
     private:
         /* Private Methods */
-        void __setInit(bool flag);
-        bool __IsInit();
-        bool __IsReady();
+        void __setInit(bool flag) noexcept;
+        bool __IsInit() noexcept;
+        bool __IsReady() noexcept;
+        void __dumpStat() noexcept;
+        void __dumpStat(size_t length) noexcept;
 
-        bool __mIsUsedSyncWrite;
-        bool __mIsInit;
+        bool __mIsUsedSyncWrite {};
+        bool __mIsInit {};
+
+        std::atomic<uint64_t> __mTotalWrittenCount {};
+        std::atomic<uint64_t> __mTotalWrittenBytes {};
     };