chromium/mojo/core/ipcz_driver/base_shared_memory_service.h

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef MOJO_CORE_IPCZ_DRIVER_BASE_SHARED_MEMORY_SERVICE_H_
#define MOJO_CORE_IPCZ_DRIVER_BASE_SHARED_MEMORY_SERVICE_H_

#include "base/memory/writable_shared_memory_region.h"
#include "mojo/core/scoped_ipcz_handle.h"
#include "mojo/core/system_impl_export.h"
#include "third_party/ipcz/include/ipcz/ipcz.h"

namespace mojo::core::ipcz_driver {

// BaseSharedMemoryService exposes service and client implementations for a
// lightweight shared memory allocation service. Every Mojo-invited process gets
// a client connection to a service instance in the process which sent the
// invitation.
//
// In sandboxed child processes on most platforms, base shared memory hooks are
// installed to use this client interface.
class MOJO_SYSTEM_IMPL_EXPORT BaseSharedMemoryService {};

}  // namespace mojo::core::ipcz_driver

#endif  // MOJO_CORE_IPCZ_DRIVER_BASE_SHARED_MEMORY_SERVICE_H_