1 // Copyright 2014 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.
5 #include "mojo/services/surfaces/surfaces_service_impl.h"
9 SurfacesServiceImpl::SurfacesServiceImpl(cc::SurfaceManager* manager,
10 uint32_t* next_id_namespace,
11 SurfacesImpl::Client* client)
13 next_id_namespace_(next_id_namespace),
16 SurfacesServiceImpl::~SurfacesServiceImpl() {
19 void SurfacesServiceImpl::CreateSurfaceConnection(
20 const Callback<void(SurfacePtr, uint32_t)>& callback) {
21 uint32_t id_namespace = (*next_id_namespace_)++;
23 BindToProxy(new SurfacesImpl(manager_, id_namespace, client_), &surface);
24 callback.Run(surface.Pass(), id_namespace);