1// Copyright 2013 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_FLAGS_STORAGE_H_ 6#define CHROME_BROWSER_FLAGS_STORAGE_H_ 7 8#include <set> 9#include <string> 10 11namespace about_flags { 12 13// Base class for flags storage implementations. Enables the about_flags 14// functions to store and retrieve data from various sources like PrefService 15// and CrosSettings. 16class FlagsStorage { 17 public: 18 virtual ~FlagsStorage() {} 19 20 // Retrieves the flags as a set of strings. 21 virtual std::set<std::string> GetFlags() = 0; 22 // Stores the |flags| and returns true on success. 23 virtual bool SetFlags(const std::set<std::string>& flags) = 0; 24}; 25 26} // namespace about_flags 27 28#endif // CHROME_BROWSER_FLAGS_STORAGE_H_ 29