cloud_device_list_delegate.h revision cedac228d2dd51db4b79ea1e72c7f249408ee061
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 CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_DEVICE_LIST_DELEGATE_H_
6#define CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_DEVICE_LIST_DELEGATE_H_
7
8#include <string>
9#include <vector>
10
11namespace local_discovery {
12
13class CloudDeviceListDelegate {
14 public:
15  static const char kDeviceTypePrinter[];
16  struct Device {
17    Device();
18    ~Device();
19
20    std::string id;
21    std::string type;
22    std::string display_name;
23    std::string description;
24  };
25
26  typedef std::vector<Device> DeviceList;
27
28  CloudDeviceListDelegate();
29  virtual ~CloudDeviceListDelegate();
30
31  virtual void OnDeviceListReady(const DeviceList& devices) = 0;
32  virtual void OnDeviceListUnavailable() = 0;
33};
34
35}  // namespace local_discovery
36
37#endif  // CHROME_BROWSER_LOCAL_DISCOVERY_CLOUD_DEVICE_LIST_DELEGATE_H_
38