Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(355)

Unified Diff: services/gfx/compositor/compositor_app.h

Issue 1552963002: Initial checkin of the new Mozart compositor. (Closed) Base URL: git@github.com:domokit/mojo.git@moz-11
Patch Set: Created 4 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: services/gfx/compositor/compositor_app.h
diff --git a/services/gfx/compositor/compositor_app.h b/services/gfx/compositor/compositor_app.h
new file mode 100644
index 0000000000000000000000000000000000000000..c80c5d765eb189d8d2dc03587a35b7512056603b
--- /dev/null
+++ b/services/gfx/compositor/compositor_app.h
@@ -0,0 +1,51 @@
+// Copyright 2015 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 SERVICES_GFX_COMPOSITOR_COMPOSITOR_APP_H_
+#define SERVICES_GFX_COMPOSITOR_COMPOSITOR_APP_H_
+
+#include <memory>
+
+#include "base/macros.h"
+#include "base/memory/scoped_ptr.h"
+#include "mojo/common/strong_binding_set.h"
+#include "mojo/common/tracing_impl.h"
+#include "mojo/public/cpp/application/application_delegate.h"
+#include "mojo/services/gfx/composition/interfaces/compositor.mojom.h"
+#include "services/gfx/compositor/compositor_engine.h"
+
+namespace compositor {
+
+// Compositor application entry point.
+class CompositorApp
+ : public mojo::ApplicationDelegate,
+ public mojo::InterfaceFactory<mojo::gfx::composition::Compositor> {
+ public:
+ CompositorApp();
+ ~CompositorApp() override;
+
+ private:
+ // |ApplicationDelegate|:
+ void Initialize(mojo::ApplicationImpl* app_impl) override;
+ bool ConfigureIncomingConnection(
+ mojo::ApplicationConnection* connection) override;
+
+ // |InterfaceFactory<Compositor>|:
+ void Create(mojo::ApplicationConnection* connection,
+ mojo::InterfaceRequest<mojo::gfx::composition::Compositor>
+ request) override;
+
+ mojo::ApplicationImpl* app_impl_;
mesch 2016/01/29 03:01:16 You can initialize this to nullptr inline if we sp
+ mojo::TracingImpl tracing_;
+
+ mojo::StrongBindingSet<mojo::gfx::composition::Compositor>
+ compositor_bindings_;
+ std::unique_ptr<CompositorEngine> engine_;
+
+ DISALLOW_COPY_AND_ASSIGN(CompositorApp);
+};
+
+} // namespace compositor
+
+#endif // SERVICES_GFX_COMPOSITOR_COMPOSITOR_APP_H_

Powered by Google App Engine
This is Rietveld 408576698