Chromium Code Reviews| Index: chrome/browser/media/router/media_router.h |
| diff --git a/chrome/browser/media/router/media_router.h b/chrome/browser/media/router/media_router.h |
| index 570a439b523d3df6c8319b54e55059f5a16934a8..92b6ebcbcbbd8c3c776bd3ae1d78fbe2e01187a2 100644 |
| --- a/chrome/browser/media/router/media_router.h |
| +++ b/chrome/browser/media/router/media_router.h |
| @@ -33,6 +33,7 @@ class Origin; |
| namespace media_router { |
| class IssuesObserver; |
| +class MediaRouteController; |
| class MediaRoutesObserver; |
| class MediaSinksObserver; |
| class PresentationConnectionStateObserver; |
| @@ -196,9 +197,15 @@ class MediaRouter : public KeyedService { |
| // there is a change to the media routes, subclass MediaRoutesObserver. |
| virtual std::vector<MediaRoute> GetCurrentRoutes() const = 0; |
| + // Returns a controller for sending media commands to a route. Returns a |
| + // nullptr if no MediaRoute exists for the given |route_id|. |
| + virtual scoped_refptr<MediaRouteController> GetRouteController( |
| + const MediaRoute::Id& route_id) = 0; |
| + |
| private: |
| friend class IssuesObserver; |
| friend class MediaSinksObserver; |
| + friend class MediaRouteController; |
| friend class MediaRoutesObserver; |
| friend class PresentationConnectionStateObserver; |
| friend class RouteMessageObserver; |
| @@ -254,6 +261,11 @@ class MediaRouter : public KeyedService { |
| // stop receiving further updates. |
| virtual void UnregisterRouteMessageObserver( |
| RouteMessageObserver* observer) = 0; |
| + |
| + // Removes the MediaRouteController for |route_id| from the list of |
|
mark a. foltz
2017/04/11 19:43:19
Please add a comment explaining who calls this. I
takumif
2017/04/12 23:11:36
Done. Right, it's called just by MediaRouteControl
|
| + // controllers held by |this|. |
| + virtual void DetachRouteController(const MediaRoute::Id& route_id, |
| + MediaRouteController* controller) = 0; |
| }; |
| } // namespace media_router |