// 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. #include "mojo/services/surfaces/surfaces_service_impl.h" namespace mojo { SurfacesServiceImpl::SurfacesServiceImpl(cc::SurfaceManager* manager, uint32_t* next_id_namespace, SurfacesImpl::Client* client) : manager_(manager), next_id_namespace_(next_id_namespace), client_(client) { } SurfacesServiceImpl::~SurfacesServiceImpl() { } void SurfacesServiceImpl::CreateSurfaceConnection( const Callback<void(SurfacePtr, uint32_t)>& callback) { uint32_t id_namespace = (*next_id_namespace_)++; SurfacePtr surface; BindToProxy(new SurfacesImpl(manager_, id_namespace, client_), &surface); callback.Run(surface.Pass(), id_namespace); } } // namespace mojo