1 #ifndef _VKSSERVICES_HPP 2 #define _VKSSERVICES_HPP 3 4 /*------------------------------------------------------------------------- 5 * Vulkan CTS Framework 6 * -------------------- 7 * 8 * Copyright (c) 2021 The Khronos Group Inc. 9 * 10 * Licensed under the Apache License, Version 2.0 (the "License"); 11 * you may not use this file except in compliance with the License. 12 * You may obtain a copy of the License at 13 * 14 * http://www.apache.org/licenses/LICENSE-2.0 15 * 16 * Unless required by applicable law or agreed to in writing, software 17 * distributed under the License is distributed on an "AS IS" BASIS, 18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 * See the License for the specific language governing permissions and 20 * limitations under the License. 21 * 22 *-------------------------------------------------------------------------*/ 23 24 #include "vksCommon.hpp" 25 #include "vksStructsVKSC.hpp" 26 27 namespace vksc_server 28 { 29 30 bool StoreFile (const string& uniqueFilename, 31 const vector<u8>& content); 32 bool GetFile (const string& path, 33 vector<u8>& content, 34 bool removeAfter); 35 bool AppendFile (const string& path, 36 const vector<u8>& content, 37 bool clear); 38 void CreateVulkanSCCache (const VulkanPipelineCacheInput& input, 39 int caseFraction, 40 vector<u8>& binary, 41 const CmdLineParams& cmdLineParams, 42 const std::string& logFile); 43 bool CompileShader (const SourceVariant& source, 44 const string& commandLine, 45 vector<u8>& binary ); 46 47 } 48 49 #endif // _VKSSERVICES_HPP 50