Upload upstream chromium 73.0.3683.0
[platform/framework/web/chromium-efl.git] / printing / page_range.h
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef PRINTING_PAGE_RANGE_H_
6 #define PRINTING_PAGE_RANGE_H_
7
8 #include <vector>
9
10 #include "printing/printing_export.h"
11
12 namespace printing {
13
14 struct PageRange;
15
16 using PageRanges = std::vector<PageRange>;
17
18 // Print range is inclusive. To select one page, set from == to.
19 struct PRINTING_EXPORT PageRange {
20   int from;
21   int to;
22
23   bool operator==(const PageRange& rhs) const {
24     return from == rhs.from && to == rhs.to;
25   }
26
27   // Retrieves the sorted list of unique pages in the page ranges.
28   static std::vector<int> GetPages(const PageRanges& ranges);
29 };
30
31 }  // namespace printing
32
33 #endif  // PRINTING_PAGE_RANGE_H_