1// Copyright 2013 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 CC_LAYERS_LAYER_POSITION_CONSTRAINT_H_
6#define CC_LAYERS_LAYER_POSITION_CONSTRAINT_H_
7
8#include "cc/base/cc_export.h"
9
10namespace cc {
11
12class CC_EXPORT LayerPositionConstraint {
13 public:
14  LayerPositionConstraint();
15
16  void set_is_fixed_position(bool fixed) { is_fixed_position_ = fixed; }
17  bool is_fixed_position() const { return is_fixed_position_; }
18  void set_is_fixed_to_right_edge(bool fixed) {
19    is_fixed_to_right_edge_ = fixed;
20  }
21  bool is_fixed_to_right_edge() const { return is_fixed_to_right_edge_; }
22  void set_is_fixed_to_bottom_edge(bool fixed) {
23    is_fixed_to_bottom_edge_ = fixed;
24  }
25  bool is_fixed_to_bottom_edge() const { return is_fixed_to_bottom_edge_; }
26
27  bool operator==(const LayerPositionConstraint&) const;
28  bool operator!=(const LayerPositionConstraint&) const;
29
30 private:
31  bool is_fixed_position_       : 1;
32  bool is_fixed_to_right_edge_  : 1;
33  bool is_fixed_to_bottom_edge_ : 1;
34};
35
36}  // namespace cc
37
38#endif  // CC_LAYERS_LAYER_POSITION_CONSTRAINT_H_
39