webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
WebCore::AudioDestinationNode Class Referenceabstract

#include <AudioDestinationNode.h>

Inheritance diagram for WebCore::AudioDestinationNode:
WebCore::AudioNode WebCore::AudioIOCallback WebCore::EventTargetWithInlineData WebCore::EventTarget WebCore::EventTarget WebCore::ScriptWrappable WebCore::ScriptWrappable WebCore::ScriptWrappable WebCore::ScriptWrappable WebCore::DefaultAudioDestinationNode WebCore::OfflineAudioDestinationNode

Public Member Functions

 AudioDestinationNode (AudioContext &, float sampleRate)
 
virtual ~AudioDestinationNode ()
 
void process (size_t) override
 
void reset () override
 
void render (AudioBus *sourceBus, AudioBus *destinationBus, size_t numberOfFrames) override
 
size_t currentSampleFrame () const
 
double currentTime () const
 
virtual unsigned maxChannelCount () const
 
virtual void enableInput (const String &inputDeviceId)=0
 
virtual void startRendering ()=0
 
virtual void resume (WTF::Function< void()> &&)
 
virtual void suspend (WTF::Function< void()> &&)
 
virtual void close (WTF::Function< void()> &&)
 
virtual bool isPlaying ()
 
void isPlayingDidChange () override
 
bool isPlayingAudio () const
 
void setMuted (bool muted)
 
- Public Member Functions inherited from WebCore::AudioNode
 AudioNode (AudioContext &, float sampleRate)
 
virtual ~AudioNode ()
 
AudioContext & context ()
 
const AudioContext & context () const
 
NodeType nodeType () const
 
void setNodeType (NodeType)
 
void ref (RefType refType=RefTypeNormal)
 
void deref (RefType refType=RefTypeNormal)
 
void finishDeref (RefType refType)
 
virtual void initialize ()
 
virtual void uninitialize ()
 
bool isInitialized () const
 
void lazyInitialize ()
 
unsigned numberOfInputs () const
 
unsigned numberOfOutputs () const
 
AudioNodeInput * input (unsigned)
 
AudioNodeOutput * output (unsigned)
 
virtual ExceptionOr< void > connect (AudioNode &, unsigned outputIndex, unsigned inputIndex)
 
ExceptionOr< void > connect (AudioParam &, unsigned outputIndex)
 
virtual ExceptionOr< void > disconnect (unsigned outputIndex)
 
virtual float sampleRate () const
 
void processIfNecessary (size_t framesToProcess)
 
virtual void checkNumberOfChannelsForInput (AudioNodeInput *)
 
bool isMarkedForDeletion () const
 
virtual bool propagatesSilence () const
 
bool inputsAreSilent ()
 
void silenceOutputs ()
 
void unsilenceOutputs ()
 
void enableOutputsIfNecessary ()
 
void disableOutputsIfNecessary ()
 
unsigned channelCount ()
 
virtual ExceptionOr< void > setChannelCount (unsigned)
 
String channelCountMode ()
 
ExceptionOr< void > setChannelCountMode (const String &)
 
String channelInterpretation ()
 
ExceptionOr< void > setChannelInterpretation (const String &)
 
ChannelCountMode internalChannelCountMode () const
 
AudioBus::ChannelInterpretation internalChannelInterpretation () const
 
EventTargetInterface eventTargetInterface () const override
 
ScriptExecutionContext * scriptExecutionContext () const final
 
- Public Member Functions inherited from WebCore::EventTarget
void ref ()
 
void deref ()
 
virtual Node * toNode ()
 
virtual DOMWindow * toDOMWindow ()
 
virtual bool isMessagePort () const
 
WEBCORE_EXPORT void addEventListenerForBindings (const AtomicString &eventType, RefPtr< EventListener > &&, AddEventListenerOptionsOrBoolean &&)
 
WEBCORE_EXPORT void removeEventListenerForBindings (const AtomicString &eventType, RefPtr< EventListener > &&, ListenerOptionsOrBoolean &&)
 
WEBCORE_EXPORT ExceptionOr< bool > dispatchEventForBindings (Event &)
 
virtual bool addEventListener (const AtomicString &eventType, Ref< EventListener > &&, const AddEventListenerOptions &={ })
 
virtual bool removeEventListener (const AtomicString &eventType, EventListener &, const ListenerOptions &)
 
virtual void removeAllEventListeners ()
 
virtual bool dispatchEvent (Event &)
 
virtual void uncaughtExceptionInEventHandler ()
 
bool setAttributeEventListener (const AtomicString &eventType, RefPtr< EventListener > &&)
 
EventListener * attributeEventListener (const AtomicString &eventType)
 
bool hasEventListeners () const
 
bool hasEventListeners (const AtomicString &eventType) const
 
bool hasCapturingEventListeners (const AtomicString &eventType)
 
bool hasActiveEventListeners (const AtomicString &eventType) const
 
const EventListenerVector & eventListeners (const AtomicString &eventType)
 
bool fireEventListeners (Event &)
 
bool isFiringEventListeners () const
 
void visitJSEventListeners (JSC::SlotVisitor &)
 
void invalidateJSEventListeners (JSC::JSObject *)
 
void ref ()
 
void deref ()
 
virtual Node * toNode ()
 
virtual DOMWindow * toDOMWindow ()
 
virtual bool isMessagePort () const
 
WEBCORE_EXPORT void addEventListenerForBindings (const AtomicString &eventType, RefPtr< EventListener > &&, AddEventListenerOptionsOrBoolean &&)
 
WEBCORE_EXPORT void removeEventListenerForBindings (const AtomicString &eventType, RefPtr< EventListener > &&, ListenerOptionsOrBoolean &&)
 
WEBCORE_EXPORT ExceptionOr< bool > dispatchEventForBindings (Event &)
 
virtual bool addEventListener (const AtomicString &eventType, Ref< EventListener > &&, const AddEventListenerOptions &={ })
 
virtual bool removeEventListener (const AtomicString &eventType, EventListener &, const ListenerOptions &)
 
virtual void removeAllEventListeners ()
 
virtual bool dispatchEvent (Event &)
 
virtual void uncaughtExceptionInEventHandler ()
 
bool setAttributeEventListener (const AtomicString &eventType, RefPtr< EventListener > &&)
 
EventListener * attributeEventListener (const AtomicString &eventType)
 
bool hasEventListeners () const
 
bool hasEventListeners (const AtomicString &eventType) const
 
bool hasCapturingEventListeners (const AtomicString &eventType)
 
bool hasActiveEventListeners (const AtomicString &eventType) const
 
const EventListenerVector & eventListeners (const AtomicString &eventType)
 
bool fireEventListeners (Event &)
 
bool isFiringEventListeners () const
 
void visitJSEventListeners (JSC::SlotVisitor &)
 
void invalidateJSEventListeners (JSC::JSObject *)
 
- Public Member Functions inherited from WebCore::ScriptWrappable
JSDOMObject * wrapper () const
 
void setWrapper (JSDOMObject *, JSC::WeakHandleOwner *, void *)
 
void clearWrapper (JSDOMObject *)
 
JSDOMObject * wrapper () const
 
void setWrapper (JSDOMObject *, JSC::WeakHandleOwner *, void *)
 
void clearWrapper (JSDOMObject *)
 
- Public Member Functions inherited from WebCore::AudioIOCallback
virtual ~AudioIOCallback ()
 

Protected Member Functions

double tailTime () const override
 
double latencyTime () const override
 
void setIsSilent (bool)
 
void updateIsEffectivelyPlayingAudio ()
 
- Protected Member Functions inherited from WebCore::AudioNode
void addInput (std::unique_ptr< AudioNodeInput >)
 
void addOutput (std::unique_ptr< AudioNodeOutput >)
 
virtual void pullInputs (size_t framesToProcess)
 
void updateChannelsForInputs ()
 
- Protected Member Functions inherited from WebCore::EventTargetWithInlineData
EventTargetData * eventTargetData () final
 
EventTargetData * eventTargetDataConcurrently () final
 
EventTargetData & ensureEventTargetData () final
 
EventTargetData * eventTargetData () final
 
EventTargetData * eventTargetDataConcurrently () final
 
EventTargetData & ensureEventTargetData () final
 
- Protected Member Functions inherited from WebCore::EventTarget
virtual ~EventTarget ()=default
 
const EventTargetData * eventTargetData () const
 
virtual ~EventTarget ()=default
 
const EventTargetData * eventTargetData () const
 
- Protected Member Functions inherited from WebCore::ScriptWrappable
 ~ScriptWrappable ()
 
 ~ScriptWrappable ()
 

Protected Attributes

size_t m_currentSampleFrame
 
bool m_isSilent
 
bool m_isEffectivelyPlayingAudio
 
bool m_muted
 
- Protected Attributes inherited from WebCore::AudioNode
unsigned m_channelCount
 
ChannelCountMode m_channelCountMode
 
AudioBus::ChannelInterpretation m_channelInterpretation
 

Additional Inherited Members

- Public Types inherited from WebCore::AudioNode
enum  { ProcessingSizeInFrames = 128 }
 
enum  NodeType {
  NodeTypeUnknown, NodeTypeDestination, NodeTypeOscillator, NodeTypeAudioBufferSource,
  NodeTypeMediaElementAudioSource, NodeTypeMediaStreamAudioDestination, NodeTypeMediaStreamAudioSource, NodeTypeJavaScript,
  NodeTypeBiquadFilter, NodeTypePanner, NodeTypeConvolver, NodeTypeDelay,
  NodeTypeGain, NodeTypeChannelSplitter, NodeTypeChannelMerger, NodeTypeAnalyser,
  NodeTypeDynamicsCompressor, NodeTypeWaveShaper, NodeTypeEnd
}
 
enum  ChannelCountMode { Max, ClampedMax, Explicit }
 
enum  RefType { RefTypeNormal, RefTypeConnection }
 
- Public Types inherited from WebCore::EventTarget
using AddEventListenerOptionsOrBoolean = Variant< AddEventListenerOptions, bool >
 
using ListenerOptionsOrBoolean = Variant< ListenerOptions, bool >
 
using AddEventListenerOptionsOrBoolean = Variant< AddEventListenerOptions, bool >
 
using ListenerOptionsOrBoolean = Variant< ListenerOptions, bool >
 
- Static Public Member Functions inherited from WebCore::ScriptWrappable
template<typename Derived >
static ptrdiff_t offsetOfWrapper ()
 
template<typename Derived >
static ptrdiff_t offsetOfWrapper ()
 

Constructor & Destructor Documentation

◆ AudioDestinationNode()

WebCore::AudioDestinationNode::AudioDestinationNode ( AudioContext &  ,
float  sampleRate 
)

◆ ~AudioDestinationNode()

virtual WebCore::AudioDestinationNode::~AudioDestinationNode ( )
virtual

Member Function Documentation

◆ close()

virtual void WebCore::AudioDestinationNode::close ( WTF::Function< void()> &&  )
inlinevirtual

◆ currentSampleFrame()

size_t WebCore::AudioDestinationNode::currentSampleFrame ( ) const
inline

◆ currentTime()

double WebCore::AudioDestinationNode::currentTime ( ) const
inline

◆ enableInput()

virtual void WebCore::AudioDestinationNode::enableInput ( const String &  inputDeviceId)
pure virtual

◆ isPlaying()

virtual bool WebCore::AudioDestinationNode::isPlaying ( )
inlinevirtual

◆ isPlayingAudio()

bool WebCore::AudioDestinationNode::isPlayingAudio ( ) const
inline

◆ isPlayingDidChange()

void WebCore::AudioDestinationNode::isPlayingDidChange ( )
overridevirtual

◆ latencyTime()

double WebCore::AudioDestinationNode::latencyTime ( ) const
inlineoverrideprotectedvirtual

Implements WebCore::AudioNode.

◆ maxChannelCount()

virtual unsigned WebCore::AudioDestinationNode::maxChannelCount ( ) const
inlinevirtual

◆ process()

void WebCore::AudioDestinationNode::process ( size_t  )
inlineoverridevirtual

Implements WebCore::AudioNode.

◆ render()

void WebCore::AudioDestinationNode::render ( AudioBus *  sourceBus,
AudioBus *  destinationBus,
size_t  numberOfFrames 
)
overridevirtual

◆ reset()

void WebCore::AudioDestinationNode::reset ( )
inlineoverridevirtual

Implements WebCore::AudioNode.

◆ resume()

virtual void WebCore::AudioDestinationNode::resume ( WTF::Function< void()> &&  )
inlinevirtual

◆ setIsSilent()

void WebCore::AudioDestinationNode::setIsSilent ( bool  )
protected

◆ setMuted()

void WebCore::AudioDestinationNode::setMuted ( bool  muted)
inline

◆ startRendering()

virtual void WebCore::AudioDestinationNode::startRendering ( )
pure virtual

◆ suspend()

virtual void WebCore::AudioDestinationNode::suspend ( WTF::Function< void()> &&  )
inlinevirtual

◆ tailTime()

double WebCore::AudioDestinationNode::tailTime ( ) const
inlineoverrideprotectedvirtual

Implements WebCore::AudioNode.

◆ updateIsEffectivelyPlayingAudio()

void WebCore::AudioDestinationNode::updateIsEffectivelyPlayingAudio ( )
protected

Member Data Documentation

◆ m_currentSampleFrame

size_t WebCore::AudioDestinationNode::m_currentSampleFrame
protected

◆ m_isEffectivelyPlayingAudio

bool WebCore::AudioDestinationNode::m_isEffectivelyPlayingAudio
protected

◆ m_isSilent

bool WebCore::AudioDestinationNode::m_isSilent
protected

◆ m_muted

bool WebCore::AudioDestinationNode::m_muted
protected

The documentation for this class was generated from the following file: