#include "modules/webaudio/AudioParam.h"
#include "wtf/OwnPtr.h"
-namespace WebCore {
+namespace blink {
class DynamicsCompressor;
class DynamicsCompressorNode FINAL : public AudioNode {
public:
- static PassRefPtr<DynamicsCompressorNode> create(AudioContext* context, float sampleRate)
+ static PassRefPtrWillBeRawPtr<DynamicsCompressorNode> create(AudioContext* context, float sampleRate)
{
- return adoptRef(new DynamicsCompressorNode(context, sampleRate));
+ return adoptRefWillBeNoop(new DynamicsCompressorNode(context, sampleRate));
}
virtual ~DynamicsCompressorNode();
// AudioNode
+ virtual void dispose() OVERRIDE;
virtual void process(size_t framesToProcess) OVERRIDE;
virtual void initialize() OVERRIDE;
virtual void uninitialize() OVERRIDE;
// Amount by which the compressor is currently compressing the signal in decibels.
AudioParam* reduction() { return m_reduction.get(); }
+ virtual void trace(Visitor*) OVERRIDE;
+
private:
virtual double tailTime() const OVERRIDE;
virtual double latencyTime() const OVERRIDE;
DynamicsCompressorNode(AudioContext*, float sampleRate);
OwnPtr<DynamicsCompressor> m_dynamicsCompressor;
- RefPtr<AudioParam> m_threshold;
- RefPtr<AudioParam> m_knee;
- RefPtr<AudioParam> m_ratio;
- RefPtr<AudioParam> m_reduction;
- RefPtr<AudioParam> m_attack;
- RefPtr<AudioParam> m_release;
+ RefPtrWillBeMember<AudioParam> m_threshold;
+ RefPtrWillBeMember<AudioParam> m_knee;
+ RefPtrWillBeMember<AudioParam> m_ratio;
+ RefPtrWillBeMember<AudioParam> m_reduction;
+ RefPtrWillBeMember<AudioParam> m_attack;
+ RefPtrWillBeMember<AudioParam> m_release;
};
-} // namespace WebCore
+} // namespace blink
#endif // DynamicsCompressorNode_h