blob: 1cc2001d0ce88fb75ce9557e31d75e34896f9766 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module mirroring.mojom;
import "components/mirroring/mojom/cast_message_channel.mojom";
import "components/mirroring/mojom/session_observer.mojom";
import "components/mirroring/mojom/session_parameters.mojom";
// This interface is used to start a mirroring session through the Mirroring
// Service.
interface MirroringServiceHost {
// Starts a mirroring session through the Mirroring Service. |observer| gets
// notifications about lifecycle events. |outbound_channel| is provided to
// handle the messages to the mirroring receiver. |inbound_channel| receives
// the messages from the mirroring receiver to the Mirroring Service.
// To stop the session, just close the message pipe.
Start(SessionParameters params,
pending_remote<SessionObserver> observer,
pending_remote<CastMessageChannel> outbound_channel,
pending_receiver<CastMessageChannel> inbound_channel);
// TODO(crbug.com/1015461): Add interfaces to get the streaming events/stats
// and mirroring logs.
};