summaryrefslogtreecommitdiff
path: root/athena/home/public/app_model_builder.h
diff options
context:
space:
mode:
Diffstat (limited to 'athena/home/public/app_model_builder.h')
-rw-r--r--athena/home/public/app_model_builder.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/athena/home/public/app_model_builder.h b/athena/home/public/app_model_builder.h
new file mode 100644
index 0000000000..5cfa8902c1
--- /dev/null
+++ b/athena/home/public/app_model_builder.h
@@ -0,0 +1,29 @@
+// Copyright 2014 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 ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_
+#define ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_
+
+#include "athena/athena_export.h"
+
+namespace app_list {
+class AppListModel;
+} // namespace app_list
+
+namespace athena {
+
+// An interface to fill the list of apps in the home card.
+// TODO(mukai): integrate the interface with chrome/browser/ui/app_list/
+// extension_app_model_builder.
+class ATHENA_EXPORT AppModelBuilder {
+ public:
+ virtual ~AppModelBuilder() {}
+
+ // Fills |model| with the currently available app_list::AppListItems.
+ virtual void PopulateApps(app_list::AppListModel* model) = 0;
+};
+
+} // namespace athena
+
+#endif // ATHENA_HOME_PUBLIC_APP_MODEL_BUILDER_H_