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

Side by Side Diff: Source/modules/mediastream/RTCDTMFSender.h

Issue 1149293003: Oilpan: eagerly sweep some mediasource and mediastream objects. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Updated to use EAGERLY_FINALIZE() Created 5 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) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 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 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 61
62 DEFINE_ATTRIBUTE_EVENT_LISTENER(tonechange); 62 DEFINE_ATTRIBUTE_EVENT_LISTENER(tonechange);
63 63
64 // EventTarget 64 // EventTarget
65 virtual const AtomicString& interfaceName() const override; 65 virtual const AtomicString& interfaceName() const override;
66 virtual ExecutionContext* executionContext() const override; 66 virtual ExecutionContext* executionContext() const override;
67 67
68 // ActiveDOMObject 68 // ActiveDOMObject
69 virtual void stop() override; 69 virtual void stop() override;
70 70
71 // Oilpan: need to eagerly finalize m_handler
72 EAGERLY_FINALIZE();
71 DECLARE_VIRTUAL_TRACE(); 73 DECLARE_VIRTUAL_TRACE();
72 74
73 private: 75 private:
74 RTCDTMFSender(ExecutionContext*, MediaStreamTrack*, PassOwnPtr<WebRTCDTMFSen derHandler>); 76 RTCDTMFSender(ExecutionContext*, MediaStreamTrack*, PassOwnPtr<WebRTCDTMFSen derHandler>);
75 77
76 void scheduleDispatchEvent(PassRefPtrWillBeRawPtr<Event>); 78 void scheduleDispatchEvent(PassRefPtrWillBeRawPtr<Event>);
77 void scheduledEventTimerFired(Timer<RTCDTMFSender>*); 79 void scheduledEventTimerFired(Timer<RTCDTMFSender>*);
78 80
79 // WebRTCDTMFSenderHandlerClient 81 // WebRTCDTMFSenderHandlerClient
80 virtual void didPlayTone(const WebString&) override; 82 virtual void didPlayTone(const WebString&) override;
81 83
82 Member<MediaStreamTrack> m_track; 84 Member<MediaStreamTrack> m_track;
83 int m_duration; 85 int m_duration;
84 int m_interToneGap; 86 int m_interToneGap;
85 87
86 OwnPtr<WebRTCDTMFSenderHandler> m_handler; 88 OwnPtr<WebRTCDTMFSenderHandler> m_handler;
87 89
88 bool m_stopped; 90 bool m_stopped;
89 91
90 Timer<RTCDTMFSender> m_scheduledEventTimer; 92 Timer<RTCDTMFSender> m_scheduledEventTimer;
91 WillBeHeapVector<RefPtrWillBeMember<Event>> m_scheduledEvents; 93 WillBeHeapVector<RefPtrWillBeMember<Event>> m_scheduledEvents;
92 }; 94 };
93 95
94 } // namespace blink 96 } // namespace blink
95 97
96 #endif // RTCDTMFSender_h 98 #endif // RTCDTMFSender_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698