10namespace cv {
class Range; }
17 Range() : start(0), end(0) {}
18 Range(int32_t _start, int32_t _end) : start(_start), end(_end) {}
19 Range(
const cv::Range& r);
20 Range(
const Range& r) =
default;
21 Range(Range&& r)
noexcept {
28 Range& operator = (
const Range& r) =
default;
29 Range& operator = (
const cv::Range& r);
30 Range& operator = (Range&& r)
noexcept {
40 operator cv::Range()
const;
42 int32_t size()
const {
51 return Range(INT_MIN, INT_MAX);
54 bool operator == (
const Range& other)
const {
55 return start == other.start && end == other.end;
58 bool operator != (
const Range& other)
const {
59 return !(*
this == other);
62 friend Range operator & (
const Range& r1,
const Range& r2) {
63 Range r(std::max(r1.start, r2.start), std::min(r1.end, r2.end));
64 r.end = std::max(r.end, r.start);
68 Range& operator &= (
const Range& r) {
73 friend Range operator + (
const Range& r, int32_t delta) {
74 return Range(r.start + delta, r.end + delta);
77 friend Range operator + (int32_t delta,
const Range& r) {
78 return Range(r.start + delta, r.end + delta);
81 friend Range operator - (
const Range& r, int32_t delta) {
85 friend std::ostream& operator<<(std::ostream& os,
const Range& range) {
86 os <<
"Range (start: " << range.start <<
", end: " << range.end <<
")";
95#if defined(SLIDEIO_INTERNAL_HEADER)
Definition: exceptions.hpp:15