2019-03-22 13:40:41 +01:00
|
|
|
/*
|
2024-06-24 10:12:04 +00:00
|
|
|
* Copyright (C) 2019-2024 Intel Corporation
|
2019-03-22 13:40:41 +01:00
|
|
|
*
|
|
|
|
|
* SPDX-License-Identifier: MIT
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
|
2021-04-23 16:43:48 +00:00
|
|
|
#pragma once
|
2023-01-12 17:05:31 +00:00
|
|
|
#include "shared/source/utilities/stackvec.h"
|
|
|
|
|
|
2021-04-23 16:43:48 +00:00
|
|
|
#include "opencl/extensions/public/cl_ext_private.h"
|
|
|
|
|
#include "opencl/source/memory_manager/resource_surface.h"
|
|
|
|
|
|
2019-03-22 13:40:41 +01:00
|
|
|
namespace NEO {
|
2021-04-23 16:43:48 +00:00
|
|
|
class CommandQueue;
|
|
|
|
|
class BarrierCommand {
|
|
|
|
|
public:
|
|
|
|
|
BarrierCommand(CommandQueue *commandQueue, const cl_resource_barrier_descriptor_intel *descriptors, uint32_t numDescriptors);
|
|
|
|
|
~BarrierCommand() {}
|
2024-06-24 10:12:04 +00:00
|
|
|
BarrierCommand(BarrierCommand &&other) noexcept = delete;
|
|
|
|
|
BarrierCommand(const BarrierCommand &other) = delete;
|
|
|
|
|
BarrierCommand &operator=(BarrierCommand &&other) noexcept = delete;
|
|
|
|
|
BarrierCommand &operator=(const BarrierCommand &other) = delete;
|
2021-04-23 16:43:48 +00:00
|
|
|
uint32_t numSurfaces = 0;
|
|
|
|
|
StackVec<ResourceSurface, 32> surfaces;
|
|
|
|
|
StackVec<Surface *, 32> surfacePtrs;
|
|
|
|
|
};
|
|
|
|
|
} // namespace NEO
|