#include "video/video_source_sink_controller.h"
#include <algorithm>
#include <limits>
#include <utility>
#include "rtc_base/logging.h"
#include "rtc_base/numerics/safe_conversions.h"
#include "rtc_base/strings/string_builder.h"
namespace webrtc {
VideoSourceSinkController::VideoSourceSinkController(
rtc::VideoSinkInterface<VideoFrame>* sink,
rtc::VideoSourceInterface<VideoFrame>* source)
: … { … }
VideoSourceSinkController::~VideoSourceSinkController() { … }
void VideoSourceSinkController::SetSource(
rtc::VideoSourceInterface<VideoFrame>* source) { … }
bool VideoSourceSinkController::HasSource() const { … }
void VideoSourceSinkController::RequestRefreshFrame() { … }
void VideoSourceSinkController::PushSourceSinkSettings() { … }
VideoSourceRestrictions VideoSourceSinkController::restrictions() const { … }
absl::optional<size_t> VideoSourceSinkController::pixels_per_frame_upper_limit()
const { … }
absl::optional<double> VideoSourceSinkController::frame_rate_upper_limit()
const { … }
bool VideoSourceSinkController::rotation_applied() const { … }
int VideoSourceSinkController::resolution_alignment() const { … }
const std::vector<rtc::VideoSinkWants::FrameSize>&
VideoSourceSinkController::resolutions() const { … }
bool VideoSourceSinkController::active() const { … }
absl::optional<rtc::VideoSinkWants::FrameSize>
VideoSourceSinkController::requested_resolution() const { … }
void VideoSourceSinkController::SetRestrictions(
VideoSourceRestrictions restrictions) { … }
void VideoSourceSinkController::SetPixelsPerFrameUpperLimit(
absl::optional<size_t> pixels_per_frame_upper_limit) { … }
void VideoSourceSinkController::SetFrameRateUpperLimit(
absl::optional<double> frame_rate_upper_limit) { … }
void VideoSourceSinkController::SetRotationApplied(bool rotation_applied) { … }
void VideoSourceSinkController::SetResolutionAlignment(
int resolution_alignment) { … }
void VideoSourceSinkController::SetResolutions(
std::vector<rtc::VideoSinkWants::FrameSize> resolutions) { … }
void VideoSourceSinkController::SetActive(bool active) { … }
void VideoSourceSinkController::SetRequestedResolution(
absl::optional<rtc::VideoSinkWants::FrameSize> requested_resolution) { … }
rtc::VideoSinkWants VideoSourceSinkController::CurrentSettingsToSinkWants()
const { … }
}