• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_EXTENSIONS_API_BLUETOOTH_LOW_ENERGY_UTILS_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_BLUETOOTH_LOW_ENERGY_UTILS_H_
7 
8 #include "base/memory/scoped_ptr.h"
9 #include "base/values.h"
10 #include "chrome/common/extensions/api/bluetooth_low_energy.h"
11 
12 namespace extensions {
13 namespace api {
14 namespace bluetooth_low_energy {
15 
16 // TODO(armansito): Remove these functions once the described bug is fixed.
17 // (See crbug.com/368368)
18 
19 // Converts a Characteristic to a base::Value. This function is necessary as
20 // json_schema_compiler::util::AddItemToList has no template specialization for
21 // user defined enums, which get treated as integers. This is because
22 // Characteristic contains a list of enum CharacteristicProperty.
23 scoped_ptr<base::DictionaryValue> CharacteristicToValue(Characteristic* from);
24 
25 // Converts a Descriptor to a base::Value. This function is necessary as a
26 // Descriptor embeds a Characteristic and that needs special handling as
27 // described above.
28 scoped_ptr<base::DictionaryValue> DescriptorToValue(Descriptor* from);
29 
30 }  // namespace bluetooth_low_energy
31 }  // namespace api
32 }  // namespace extensions
33 
34 #endif  // CHROME_BROWSER_EXTENSIONS_API_BLUETOOTH_LOW_ENERGY_UTILS_H_
35