blob: 5cc23e0d5684c2c5182de4eb61d2607629bc1cdc [file] [log] [blame]
// 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.
#ifndef THIRD_PARTY_BLINK_RENDERER_MODULES_IMAGECAPTURE_MEDIA_SETTINGS_RANGE_H_
#define THIRD_PARTY_BLINK_RENDERER_MODULES_IMAGECAPTURE_MEDIA_SETTINGS_RANGE_H_
#include "media/capture/mojom/image_capture.mojom-blink.h"
#include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
namespace blink {
class MediaSettingsRange final : public ScriptWrappable {
DEFINE_WRAPPERTYPEINFO();
public:
static MediaSettingsRange* Create(double max, double min, double step) {
return MakeGarbageCollected<MediaSettingsRange>(max, min, step);
}
static MediaSettingsRange* Create(media::mojom::blink::RangePtr range) {
return MediaSettingsRange::Create(*range);
}
static MediaSettingsRange* Create(const media::mojom::blink::Range& range) {
return MediaSettingsRange::Create(range.max, range.min, range.step);
}
MediaSettingsRange(double max, double min, double step)
: max_(max), min_(min), step_(step) {}
double max() const { return max_; }
double min() const { return min_; }
double step() const { return step_; }
private:
double max_;
double min_;
double step_;
};
} // namespace blink
#endif // THIRD_PARTY_BLINK_RENDERER_MODULES_IMAGECAPTURE_MEDIA_SETTINGS_RANGE_H_