/* 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"
#include "nsIDOMWindow.idl"

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

[scriptable, uuid(8ecae67d-a959-4f8a-a786-14dc12bd8d3c)]
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 nsIDOMWindow window,
                                [retval] out DOMString blobUrl);
};
