• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_export.h"
11  
12  namespace printing {
13  
14  struct PageRange;
15  
16  typedef std::vector<PageRange> PageRanges;
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_
34