// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.sysmem;

// Describes how a client will access the contents of a buffer.
// TODO(fxbug.dev/32119): change struct to table
@for_deprecated_c_bindings
type BufferUsage = struct {
    none uint32;
    cpu uint32;
    vulkan uint32;
    display uint32;
    video uint32;
};
