2
3
4
5
6
7
8
9
10
11
12
13
14
15
17#ifndef MIR_GEOMETRY_RECTANGLES_H_
18#define MIR_GEOMETRY_RECTANGLES_H_
20#include "mir/geometry/point.h"
21#include "mir/geometry/rectangle.h"
24#include <initializer_list>
36 Rectangles(std::initializer_list<Rectangle>
const& rects);
39 void add(Rectangle
const& rect);
46 typedef std::vector<Rectangle>::const_iterator const_iterator;
47 typedef std::vector<Rectangle>::size_type size_type;
49 const_iterator
end()
const;
56 std::vector<Rectangle> rectangles;
60std::ostream& operator<<(std::ostream& out,
Rectangles const& value);
A collection of rectangles (with possible duplicates).
Definition: rectangles.h:33
void confine(Point &point) const
void remove(Rectangle const &rect)
removes at most one matching rectangle
bool operator==(Rectangles const &rect) const
Rectangles(std::initializer_list< Rectangle > const &rects)
void add(Rectangle const &rect)
bool operator!=(Rectangles const &rect) const
const_iterator begin() const
Rectangle bounding_rectangle() const
const_iterator end() const
Basic geometry types. Types for dimensions, displacements, etc. and the operations that they support.
Definition: size.h:27