Home | History | Annotate | Download | only in types
      1 // Copyright 2014 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 UI_DISPLAY_TYPES_DISPLAY_MODE_H_
      6 #define UI_DISPLAY_TYPES_DISPLAY_MODE_H_
      7 
      8 #include <string>
      9 
     10 #include "base/macros.h"
     11 #include "ui/display/types/display_types_export.h"
     12 #include "ui/gfx/geometry/size.h"
     13 
     14 namespace ui {
     15 
     16 // This class represents the basic information for a native mode. Platforms will
     17 // extend this class to add platform specific information about the mode.
     18 class DISPLAY_TYPES_EXPORT DisplayMode {
     19  public:
     20   DisplayMode(const gfx::Size& size, bool interlaced, float refresh_rate);
     21   virtual ~DisplayMode();
     22 
     23   const gfx::Size& size() const { return size_; }
     24   bool is_interlaced() const { return is_interlaced_; }
     25   float refresh_rate() const { return refresh_rate_; }
     26 
     27   virtual std::string ToString() const;
     28 
     29  private:
     30   gfx::Size size_;
     31   bool is_interlaced_;
     32   float refresh_rate_;
     33 
     34   DISALLOW_COPY_AND_ASSIGN(DisplayMode);
     35 };
     36 
     37 }  // namespace ui
     38 
     39 #endif  // UI_DISPLAY_TYPES_DISPLAY_MODE_H_
     40