1// Copyright 2018 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. 4 5module mojo_base.mojom; 6 7struct BigBufferSharedMemoryRegion { 8 handle<shared_buffer> buffer_handle; 9 uint32 size; 10}; 11 12// A helper union to be used when messages want to accept arbitrarily large 13// chunks of byte data. Beyond a certain size threshold, shared memory will be 14// used in lieu of an inline byte array. 15union BigBuffer { 16 array<uint8> bytes; 17 BigBufferSharedMemoryRegion shared_memory; 18}; 19