| Index: chromeos/accelerometer/accelerometer_reader.h
|
| diff --git a/chromeos/accelerometer/accelerometer_reader.h b/chromeos/accelerometer/accelerometer_reader.h
|
| index 3cf473f72cf44346c83714a3a9f2fdea6f0e4861..ff1e5adc1b556cd540d8b7e6ddd70f129b6aa4d4 100644
|
| --- a/chromeos/accelerometer/accelerometer_reader.h
|
| +++ b/chromeos/accelerometer/accelerometer_reader.h
|
| @@ -45,18 +45,24 @@ class CHROMEOS_EXPORT AccelerometerReader {
|
| typedef base::RefCountedData<char[12]> Reading;
|
|
|
| // An interface to receive data from the AccelerometerReader.
|
| - class Delegate {
|
| + class Observer {
|
| public:
|
| - virtual ~Delegate() {}
|
| -
|
| - virtual void HandleAccelerometerUpdate(
|
| + virtual void OnAccelerometerUpdated(
|
| const ui::AccelerometerUpdate& update) = 0;
|
| +
|
| + protected:
|
| + virtual ~Observer() {}
|
| };
|
|
|
| - AccelerometerReader(scoped_refptr<base::TaskRunner> blocking_task_runner,
|
| - Delegate* delegate);
|
| + AccelerometerReader();
|
| ~AccelerometerReader();
|
|
|
| + void Initialize(scoped_refptr<base::TaskRunner> blocking_task_runner);
|
| +
|
| + // Add/Remove observers.
|
| + void AddObserver(Observer* observer);
|
| + void RemoveObserver(Observer* observer);
|
| +
|
| private:
|
| // Dispatched when initialization is complete. If |success|, |configuration|
|
| // provides the details of the detected accelerometer.
|
| @@ -74,15 +80,14 @@ class CHROMEOS_EXPORT AccelerometerReader {
|
| // The task runner to use for blocking tasks.
|
| scoped_refptr<base::TaskRunner> task_runner_;
|
|
|
| - // A weak pointer to the delegate to send accelerometer readings to.
|
| - Delegate* delegate_;
|
| -
|
| // The last seen accelerometer data.
|
| ui::AccelerometerUpdate update_;
|
|
|
| // The accelerometer configuration.
|
| scoped_refptr<Configuration> configuration_;
|
|
|
| + ObserverList<Observer, true> observers_;
|
| +
|
| base::WeakPtrFactory<AccelerometerReader> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(AccelerometerReader);
|
|
|