/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"
#include "nsITVService.idl"

interface mozIDOMWindow;

%{C++
#define TV_SIMULATOR_SERVICE_CONTRACTID\
  "@mozilla.org/tv/simulatorservice;1"
%}

[scriptable, uuid(3f670994-5915-415a-b906-7ead54bb3be1)]
interface nsITVSimulatorService : nsITVService
{
  /*
   * Get the URL of simulated video blob.
   *
   * @param tunerId       The ID of the tuner.
   * @param sourceType    The source type to be used.
   * @param channelNumber The LCN (Logical Channel Number) of the channel.
   * @param window        The window object of content.
   * @return blobUrl      The URL of created blob from local video file.
   */
  void getSimulatorVideoBlobURL(in DOMString tunerId,
                                in DOMString sourceType,
                                in DOMString channelNumber,
                                in mozIDOMWindow window,
                                [retval] out DOMString blobUrl);
};
