Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(124)

Side by Side Diff: Source/modules/webaudio/AudioContext.h

Issue 307433003: Oilpan: Allocate all EventTarget derived types on the manged heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: rebase Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010, Google Inc. All rights reserved. 2 * Copyright (C) 2010, Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 class PannerNode; 69 class PannerNode;
70 class PeriodicWave; 70 class PeriodicWave;
71 class ScriptProcessorNode; 71 class ScriptProcessorNode;
72 class WaveShaperNode; 72 class WaveShaperNode;
73 73
74 // AudioContext is the cornerstone of the web audio API and all AudioNodes are c reated from it. 74 // AudioContext is the cornerstone of the web audio API and all AudioNodes are c reated from it.
75 // For thread safety between the audio thread and the main thread, it has a rend ering graph locking mechanism. 75 // For thread safety between the audio thread and the main thread, it has a rend ering graph locking mechanism.
76 76
77 class AudioContext : public ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbag eCollected<AudioContext>, public ActiveDOMObject, public ScriptWrappable, public EventTargetWithInlineData { 77 class AudioContext : public ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbag eCollected<AudioContext>, public ActiveDOMObject, public ScriptWrappable, public EventTargetWithInlineData {
78 DEFINE_EVENT_TARGET_REFCOUNTING(ThreadSafeRefCountedWillBeThreadSafeRefCount edGarbageCollected<AudioContext>); 78 DEFINE_EVENT_TARGET_REFCOUNTING(ThreadSafeRefCountedWillBeThreadSafeRefCount edGarbageCollected<AudioContext>);
79 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(AudioContext);
79 public: 80 public:
80 // Create an AudioContext for rendering to the audio hardware. 81 // Create an AudioContext for rendering to the audio hardware.
81 static PassRefPtrWillBeRawPtr<AudioContext> create(Document&, ExceptionState &); 82 static PassRefPtrWillBeRawPtr<AudioContext> create(Document&, ExceptionState &);
82 83
83 virtual ~AudioContext(); 84 virtual ~AudioContext();
84 85
85 virtual void trace(Visitor*); 86 virtual void trace(Visitor*) OVERRIDE;
86 87
87 bool isInitialized() const; 88 bool isInitialized() const;
88 // The constructor of an AudioNode must call this to initialize the context. 89 // The constructor of an AudioNode must call this to initialize the context.
89 void lazyInitialize(); 90 void lazyInitialize();
90 91
91 bool isOfflineContext() { return m_isOfflineContext; } 92 bool isOfflineContext() { return m_isOfflineContext; }
92 93
93 // Document notification 94 // Document notification
94 virtual void stop() OVERRIDE FINAL; 95 virtual void stop() OVERRIDE FINAL;
95 virtual bool hasPendingActivity() const OVERRIDE; 96 virtual bool hasPendingActivity() const OVERRIDE;
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 AsyncAudioDecoder m_audioDecoder; 322 AsyncAudioDecoder m_audioDecoder;
322 323
323 // This is considering 32 is large enough for multiple channels audio. 324 // This is considering 32 is large enough for multiple channels audio.
324 // It is somewhat arbitrary and could be increased if necessary. 325 // It is somewhat arbitrary and could be increased if necessary.
325 enum { MaxNumberOfChannels = 32 }; 326 enum { MaxNumberOfChannels = 32 };
326 }; 327 };
327 328
328 } // WebCore 329 } // WebCore
329 330
330 #endif // AudioContext_h 331 #endif // AudioContext_h
OLDNEW
« no previous file with comments | « Source/modules/speech/SpeechSynthesisUtterance.cpp ('k') | Source/modules/webaudio/AudioContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698