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 COMPONENTS_PROXIMITY_AUTH_PROXIMITY_AUTH_SYSTEM_H
6#define COMPONENTS_PROXIMITY_AUTH_PROXIMITY_AUTH_SYSTEM_H
7
8#include "base/macros.h"
9#include "components/proximity_auth/remote_device.h"
10
11namespace proximity_auth {
12
13// This is the main entry point to start Proximity Auth, the underlying system
14// for the Easy Unlock and Easy Sign-in features. Given a list of registered
15// remote devices (i.e. phones), this object will handle the connection,
16// authentication, and protocol for all the devices.
17class ProximityAuthSystem {
18 public:
19  ProximityAuthSystem(const std::vector<RemoteDevice>& remote_devices);
20  virtual ~ProximityAuthSystem();
21
22  const std::vector<RemoteDevice>& GetRemoteDevices();
23
24 private:
25  std::vector<RemoteDevice> remote_devices_;
26
27  DISALLOW_COPY_AND_ASSIGN(ProximityAuthSystem);
28};
29
30}  // namespace proximity_auth
31
32#endif  // COMPONENTS_PROXIMITY_AUTH_PROXIMITY_AUTH_SYSTEM_H
33