blob: 8ec2c45574163181fdec4483baff0ad0738f0661 [file] [log] [blame]
Paul Stewart0153cf02014-06-02 11:53:36 -07001// Copyright (c) 2014 The Chromium OS 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
Ben Chanc45688b2014-07-02 23:50:45 -07005#ifndef SHILL_PROPERTY_OBSERVER_INTERFACE_H_
6#define SHILL_PROPERTY_OBSERVER_INTERFACE_H_
Paul Stewart0153cf02014-06-02 11:53:36 -07007
Ben Chancc67c522014-09-03 07:19:18 -07008#include <base/macros.h>
Paul Stewart0153cf02014-06-02 11:53:36 -07009
10namespace shill {
11
12// An abstract interface for objects that retain a saved copy of
13// a property accessor and can report whether that value has changed.
14class PropertyObserverInterface {
15 public:
16 PropertyObserverInterface() {}
17 virtual ~PropertyObserverInterface() {}
18
19 // Update the saved value used for comparison.
20 virtual void Update() = 0;
21
22 private:
23 DISALLOW_COPY_AND_ASSIGN(PropertyObserverInterface);
24};
25
26} // namespace shill
27
Ben Chanc45688b2014-07-02 23:50:45 -070028#endif // SHILL_PROPERTY_OBSERVER_INTERFACE_H_