Home | History | Annotate | Download | only in prefs
      1 // Copyright (c) 2012 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 BASE_PREFS_PREF_REGISTRY_SIMPLE_H_
      6 #define BASE_PREFS_PREF_REGISTRY_SIMPLE_H_
      7 
      8 #include <string>
      9 
     10 #include "base/prefs/base_prefs_export.h"
     11 #include "base/prefs/pref_registry.h"
     12 
     13 namespace base {
     14 class DictionaryValue;
     15 class FilePath;
     16 class ListValue;
     17 }
     18 
     19 // A simple implementation of PrefRegistry.
     20 class BASE_PREFS_EXPORT PrefRegistrySimple : public PrefRegistry {
     21  public:
     22   PrefRegistrySimple();
     23 
     24   void RegisterBooleanPref(const char* path, bool default_value);
     25   void RegisterIntegerPref(const char* path, int default_value);
     26   void RegisterDoublePref(const char* path, double default_value);
     27   void RegisterStringPref(const char* path, const std::string& default_value);
     28   void RegisterFilePathPref(const char* path,
     29                             const base::FilePath& default_value);
     30   void RegisterListPref(const char* path);
     31   void RegisterDictionaryPref(const char* path);
     32   void RegisterListPref(const char* path, base::ListValue* default_value);
     33   void RegisterDictionaryPref(const char* path,
     34                               base::DictionaryValue* default_value);
     35   void RegisterInt64Pref(const char* path,
     36                          int64 default_value);
     37 
     38  private:
     39   virtual ~PrefRegistrySimple();
     40 
     41   DISALLOW_COPY_AND_ASSIGN(PrefRegistrySimple);
     42 };
     43 
     44 #endif  // BASE_PREFS_PREF_REGISTRY_SIMPLE_H_
     45