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

Side by Side Diff: third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.h

Issue 2757673005: Image Capture: MediaStreamTrack::applyConstraints() (Closed)
Patch Set: guidou@ and reillyg@ comments Created 3 years, 9 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * Copyright (C) 2011 Ericsson AB. All rights reserved. 3 * Copyright (C) 2011 Ericsson AB. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the 11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution. 12 * documentation and/or other materials provided with the distribution.
13 * 13 *
14 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND 14 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND
15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 15 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
16 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 16 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR 17 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR
18 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 20 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 21 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 22 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 23 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */ 24 */
25 25
26 #ifndef MediaStreamTrack_h 26 #ifndef MediaStreamTrack_h
27 #define MediaStreamTrack_h 27 #define MediaStreamTrack_h
28 28
29 #include <memory>
29 #include "bindings/core/v8/ActiveScriptWrappable.h" 30 #include "bindings/core/v8/ActiveScriptWrappable.h"
31 #include "bindings/core/v8/ScriptPromise.h"
30 #include "core/dom/ContextLifecycleObserver.h" 32 #include "core/dom/ContextLifecycleObserver.h"
31 #include "modules/EventTargetModules.h" 33 #include "modules/EventTargetModules.h"
32 #include "modules/ModulesExport.h" 34 #include "modules/ModulesExport.h"
33 #include "platform/mediastream/MediaStreamDescriptor.h" 35 #include "platform/mediastream/MediaStreamDescriptor.h"
34 #include "platform/mediastream/MediaStreamSource.h" 36 #include "platform/mediastream/MediaStreamSource.h"
35 #include "public/platform/WebMediaConstraints.h" 37 #include "public/platform/WebMediaConstraints.h"
36 #include "wtf/Forward.h" 38 #include "wtf/Forward.h"
37 #include <memory>
38 39
39 namespace blink { 40 namespace blink {
40 41
41 class AudioSourceProvider; 42 class AudioSourceProvider;
42 class ExceptionState; 43 class ExceptionState;
43 class ImageCapture; 44 class ImageCapture;
44 class MediaTrackCapabilities; 45 class MediaTrackCapabilities;
45 class MediaTrackConstraints; 46 class MediaTrackConstraints;
46 class MediaStream; 47 class MediaStream;
47 class MediaTrackSettings; 48 class MediaTrackSettings;
(...skipping 21 matching lines...) Expand all
69 bool muted() const; 70 bool muted() const;
70 71
71 String contentHint() const; 72 String contentHint() const;
72 void setContentHint(const String&); 73 void setContentHint(const String&);
73 74
74 String readyState() const; 75 String readyState() const;
75 76
76 void stopTrack(ExceptionState&); 77 void stopTrack(ExceptionState&);
77 virtual MediaStreamTrack* clone(ScriptState*); 78 virtual MediaStreamTrack* clone(ScriptState*);
78 79
79 void getConstraints(MediaTrackConstraints&);
80
81 // This function is called when constrains have been successfully applied. 80 // This function is called when constrains have been successfully applied.
82 // Called from UserMediaRequest when it succeeds. It is not IDL-exposed. 81 // Called from UserMediaRequest when it succeeds. It is not IDL-exposed.
83 void setConstraints(const WebMediaConstraints&); 82 void setConstraints(const WebMediaConstraints&);
84 83
85 void getCapabilities(MediaTrackCapabilities&); 84 void getCapabilities(MediaTrackCapabilities&);
85 void getConstraints(MediaTrackConstraints&);
86 void getSettings(MediaTrackSettings&); 86 void getSettings(MediaTrackSettings&);
87 ScriptPromise applyConstraints(ScriptState*, const MediaTrackConstraints&);
87 88
88 DEFINE_ATTRIBUTE_EVENT_LISTENER(mute); 89 DEFINE_ATTRIBUTE_EVENT_LISTENER(mute);
89 DEFINE_ATTRIBUTE_EVENT_LISTENER(unmute); 90 DEFINE_ATTRIBUTE_EVENT_LISTENER(unmute);
90 DEFINE_ATTRIBUTE_EVENT_LISTENER(ended); 91 DEFINE_ATTRIBUTE_EVENT_LISTENER(ended);
91 92
92 MediaStreamComponent* component() { return m_component; } 93 MediaStreamComponent* component() { return m_component; }
93 bool ended() const; 94 bool ended() const;
94 95
95 void registerMediaStream(MediaStream*); 96 void registerMediaStream(MediaStream*);
96 void unregisterMediaStream(MediaStream*); 97 void unregisterMediaStream(MediaStream*);
(...skipping 29 matching lines...) Expand all
126 Member<MediaStreamComponent> m_component; 127 Member<MediaStreamComponent> m_component;
127 WebMediaConstraints m_constraints; 128 WebMediaConstraints m_constraints;
128 Member<ImageCapture> m_imageCapture; 129 Member<ImageCapture> m_imageCapture;
129 }; 130 };
130 131
131 typedef HeapVector<Member<MediaStreamTrack>> MediaStreamTrackVector; 132 typedef HeapVector<Member<MediaStreamTrack>> MediaStreamTrackVector;
132 133
133 } // namespace blink 134 } // namespace blink
134 135
135 #endif // MediaStreamTrack_h 136 #endif // MediaStreamTrack_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698