summaryrefslogtreecommitdiffstats
path: root/sync/util/experiments.h
diff options
context:
space:
mode:
Diffstat (limited to 'sync/util/experiments.h')
-rw-r--r--sync/util/experiments.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/sync/util/experiments.h b/sync/util/experiments.h
new file mode 100644
index 0000000..7cd77af
--- /dev/null
+++ b/sync/util/experiments.h
@@ -0,0 +1,32 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef SYNC_UTIL_EXPERIMENTS_
+#define SYNC_UTIL_EXPERIMENTS_
+#pragma once
+
+#include "sync/syncable/model_type.h"
+
+namespace browser_sync {
+
+// A structure to hold the enable status of experimental sync features.
+struct Experiments {
+ Experiments() : sync_tabs(false), sync_tab_favicons(false) {}
+
+ bool Matches(const Experiments& rhs) {
+ return (sync_tabs == rhs.sync_tabs) &&
+ (sync_tab_favicons == rhs.sync_tab_favicons);
+ }
+
+ // Enable the tab sync (SESSIONS) datatype.
+ bool sync_tabs;
+
+ // Enable syncing of favicons within tab sync (only has an effect if tab sync
+ // is already enabled). This takes effect on the next restart.
+ bool sync_tab_favicons;
+};
+
+}
+
+#endif // SYNC_UTIL_EXPERIMENTS_