summaryrefslogtreecommitdiff
path: root/Source/WebCore/Modules/webaudio/AnalyserNode.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/Modules/webaudio/AnalyserNode.h')
-rw-r--r--Source/WebCore/Modules/webaudio/AnalyserNode.h40
1 files changed, 17 insertions, 23 deletions
diff --git a/Source/WebCore/Modules/webaudio/AnalyserNode.h b/Source/WebCore/Modules/webaudio/AnalyserNode.h
index 290c67aa9..8bc63b442 100644
--- a/Source/WebCore/Modules/webaudio/AnalyserNode.h
+++ b/Source/WebCore/Modules/webaudio/AnalyserNode.h
@@ -22,56 +22,50 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef AnalyserNode_h
-#define AnalyserNode_h
+#pragma once
#include "AudioBasicInspectorNode.h"
#include "RealtimeAnalyser.h"
-#include <wtf/Forward.h>
namespace WebCore {
-class AnalyserNode : public AudioBasicInspectorNode {
+class AnalyserNode final : public AudioBasicInspectorNode {
public:
- static PassRefPtr<AnalyserNode> create(AudioContext* context, float sampleRate)
+ static Ref<AnalyserNode> create(AudioContext& context, float sampleRate)
{
- return adoptRef(new AnalyserNode(context, sampleRate));
+ return adoptRef(*new AnalyserNode(context, sampleRate));
}
virtual ~AnalyserNode();
-
- // AudioNode
- virtual void process(size_t framesToProcess) override;
- virtual void reset() override;
- // Javascript bindings
unsigned fftSize() const { return m_analyser.fftSize(); }
- void setFftSize(unsigned size, ExceptionCode&);
+ ExceptionOr<void> setFftSize(unsigned);
unsigned frequencyBinCount() const { return m_analyser.frequencyBinCount(); }
- void setMinDecibels(double k, ExceptionCode&);
+ ExceptionOr<void> setMinDecibels(double);
double minDecibels() const { return m_analyser.minDecibels(); }
- void setMaxDecibels(double k, ExceptionCode&);
+ ExceptionOr<void> setMaxDecibels(double);
double maxDecibels() const { return m_analyser.maxDecibels(); }
- void setSmoothingTimeConstant(double k, ExceptionCode&);
+ ExceptionOr<void> setSmoothingTimeConstant(double);
double smoothingTimeConstant() const { return m_analyser.smoothingTimeConstant(); }
- void getFloatFrequencyData(JSC::Float32Array* array) { m_analyser.getFloatFrequencyData(array); }
- void getByteFrequencyData(JSC::Uint8Array* array) { m_analyser.getByteFrequencyData(array); }
- void getByteTimeDomainData(JSC::Uint8Array* array) { m_analyser.getByteTimeDomainData(array); }
+ void getFloatFrequencyData(const RefPtr<JSC::Float32Array>& array) { m_analyser.getFloatFrequencyData(array.get()); }
+ void getByteFrequencyData(const RefPtr<JSC::Uint8Array>& array) { m_analyser.getByteFrequencyData(array.get()); }
+ void getByteTimeDomainData(const RefPtr<JSC::Uint8Array>& array) { m_analyser.getByteTimeDomainData(array.get()); }
private:
- virtual double tailTime() const override { return 0; }
- virtual double latencyTime() const override { return 0; }
+ AnalyserNode(AudioContext&, float sampleRate);
- AnalyserNode(AudioContext*, float sampleRate);
+ void process(size_t framesToProcess) final;
+ void reset() final;
+
+ double tailTime() const final { return 0; }
+ double latencyTime() const final { return 0; }
RealtimeAnalyser m_analyser;
};
} // namespace WebCore
-
-#endif // AnalyserNode_h