// Copyright 2017 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.

#ifndef CHROMECAST_MEDIA_BASE_VIDEO_MODE_SWITCHER_H_
#define CHROMECAST_MEDIA_BASE_VIDEO_MODE_SWITCHER_H_

#include <string>
#include <vector>

#include "base/callback_forward.h"

namespace media {
class VideoDecoderConfig;
}  // namespace media

namespace chromecast {
namespace media {

// Interface that implements video mode switching for CastRenderer.
class VideoModeSwitcher {
 public:
  virtual ~VideoModeSwitcher();

  // Input parameter is true if mode switch succeeded (or wasn't needed) and
  // playback should proceed. False indicates failed mode switch.
  using CompletionCB = base::OnceCallback<void(bool)>;

  // The |video_configs| describe input streams (potentially multiple streams in
  // case of dual layer content). The |mode_switch_completion_cb| will be
  // invoked to notify the caller about mode switch result.
  virtual void SwitchMode(
      const std::vector<::media::VideoDecoderConfig>& video_configs,
      CompletionCB mode_switch_completion_cb) = 0;
};

}  // namespace media
}  // namespace chromecast

#endif  // CHROMECAST_MEDIA_BASE_VIDEO_MODE_SWITCHER_H_
