// Copyright 2016 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 video_capture.mojom;

import "services/video_capture/public/interfaces/device_factory.mojom";

// Entry point to the Video Capture Service API.
// The factory provides access to the capture devices connected to the system.
// By using command-line switches, it is possible to replace this with a "fake"
// factory, which provides access to fake devices that generates test frames.
interface DeviceFactoryProvider  {
  ConnectToDeviceFactory(DeviceFactory& request);

  // The service shuts down after a certain delay when no client is connected.
  // This method allows clients to customize this delay.
  // An example use case for a custom delay is integration tests that want to
  // minimize wait time.
  // The default value is found in constants.mojom.
  SetShutdownDelayInSeconds(float seconds);
};
