/* * Copyright (C) 2025 Intel Corporation * * SPDX-License-Identifier: MIT * */ #pragma once #include "shared/source/utilities/arrayref.h" #include #include namespace NEO { struct KernelInfo; struct MetadataGeneration { void callPopulateZebinExtendedArgsMetadataOnce(const ArrayRef refBin, size_t kernelMiscInfoOffset, std::vector &kernelInfos); void callGenerateDefaultExtendedArgsMetadataOnce(std::vector &kernelInfos); private: std::once_flag extractAndDecodeMetadataOnceFlag; std::once_flag generateDefaultMetadataOnceFlag; }; } // namespace NEO