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

Side by Side Diff: chrome/browser/media/router/presentation_media_sinks_observer.h

Issue 1784533004: [Media Router] Add origins to sink query results. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix test Created 4 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 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_ 5 #ifndef CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_
6 #define CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_ 6 #define CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/scoped_ptr.h"
10 #include "chrome/browser/media/router/media_sinks_observer.h" 10 #include "chrome/browser/media/router/media_sinks_observer.h"
11 #include "content/public/browser/presentation_service_delegate.h" 11 #include "content/public/browser/presentation_service_delegate.h"
12 12
13 namespace content { 13 namespace content {
14 class PresentationScreenAvailabilityListener; 14 class PresentationScreenAvailabilityListener;
15 } 15 }
16 16
17 namespace media_router { 17 namespace media_router {
18 18
19 class MediaRouter; 19 class MediaRouter;
20 class MediaSource; 20 class MediaSource;
21 21
22 // Receives SinkQueryResults for |source| from |router| and propagates results 22 // Receives SinkQueryResults for |source| from |router| and propagates results
23 // to |listener|. |listener| is notified only when availability status has 23 // to |listener|. |listener| is notified only when availability status has
24 // changed, i.e. sinks have become available or sinks are no longer available. 24 // changed, i.e. sinks have become available or sinks are no longer available.
25 class PresentationMediaSinksObserver : public MediaSinksObserver { 25 class PresentationMediaSinksObserver : public MediaSinksObserver {
26 public: 26 public:
27 // |router|: Media router that publishes sink query results. 27 // |router|: Media router that publishes sink query results.
28 // |listener|: Notified when sinks availability changes. 28 // |listener|: Notified when sinks availability changes.
29 // |source|: Filters available sink. 29 // |source|: Filters available sink.
30 // |origin|: Origin of request.
30 // Does not take ownership of |listener| or |router|. 31 // Does not take ownership of |listener| or |router|.
31 PresentationMediaSinksObserver( 32 PresentationMediaSinksObserver(
32 MediaRouter* router, 33 MediaRouter* router,
33 content::PresentationScreenAvailabilityListener* listener, 34 content::PresentationScreenAvailabilityListener* listener,
34 const MediaSource& source); 35 const MediaSource& source,
36 const GURL& origin);
35 ~PresentationMediaSinksObserver() override; 37 ~PresentationMediaSinksObserver() override;
36 38
37 // MediaSinksObserver implementation. 39 // MediaSinksObserver implementation.
38 void OnSinksReceived(const std::vector<MediaSink>& result) override; 40 void OnSinksReceived(const std::vector<MediaSink>& result) override;
39 41
40 content::PresentationScreenAvailabilityListener* listener() const { 42 content::PresentationScreenAvailabilityListener* listener() const {
41 return listener_; 43 return listener_;
42 } 44 }
43 45
44 private: 46 private:
45 enum Availability { UNKNOWN, AVAILABLE, UNAVAILABLE }; 47 enum Availability { UNKNOWN, AVAILABLE, UNAVAILABLE };
46 48
47 content::PresentationScreenAvailabilityListener* listener_; 49 content::PresentationScreenAvailabilityListener* listener_;
48 Availability previous_availablity_; 50 Availability previous_availablity_;
49 51
50 DISALLOW_COPY_AND_ASSIGN(PresentationMediaSinksObserver); 52 DISALLOW_COPY_AND_ASSIGN(PresentationMediaSinksObserver);
51 }; 53 };
52 54
53 } // namespace media_router 55 } // namespace media_router
54 56
55 #endif // CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_ 57 #endif // CHROME_BROWSER_MEDIA_ROUTER_PRESENTATION_MEDIA_SINKS_OBSERVER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698