yum-mirror/VkFFT
git clone https://git.yummers.dev/yum-mirror/VkFFT
ba7001c
master
1//------------------------------------------------------------------------------------------------------------------------------------------------------------- 2// 3// Metal/MTLCommandQueue.hpp 4// 5// Copyright 2020-2021 Apple Inc. 6// 7// Licensed under the Apache License, Version 2.0 (the "License"); 8// you may not use this file except in compliance with the License. 9// You may obtain a copy of the License at 10// 11// http://www.apache.org/licenses/LICENSE-2.0 12// 13// Unless required by applicable law or agreed to in writing, software 14// distributed under the License is distributed on an "AS IS" BASIS, 15// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16// See the License for the specific language governing permissions and 17// limitations under the License. 18// 19//------------------------------------------------------------------------------------------------------------------------------------------------------------- 20 21#pragma once 22 23#include "MTLDefines.hpp" 24#include "MTLHeaderBridge.hpp" 25#include "MTLPrivate.hpp" 26 27#include <Foundation/Foundation.hpp> 28 29namespace MTL 30{ 31class CommandQueue :public NS ::Referencing < CommandQueue > 32{ 33public : 34NS ::String * label ()const ; 35void setLabel (const NS ::String * label ); 36 37class Device * device ()const ; 38 39class CommandBuffer * commandBuffer (); 40 41class CommandBuffer * commandBuffer (const class CommandBufferDescriptor * descriptor ); 42 43class CommandBuffer * commandBufferWithUnretainedReferences (); 44 45void insertDebugCaptureBoundary (); 46}; 47 48} 49 50// property: label 51_MTL_INLINE NS ::String * MTL ::CommandQueue ::label ()const 52{ 53return Object ::sendMessage < NS ::String *> (this ,_MTL_PRIVATE_SEL (label )); 54} 55 56_MTL_INLINE voidMTL ::CommandQueue ::setLabel (const NS ::String * label ) 57{ 58Object ::sendMessage < void > (this ,_MTL_PRIVATE_SEL (setLabel_ ),label ); 59} 60 61// property: device 62_MTL_INLINE MTL ::Device * MTL ::CommandQueue ::device ()const 63{ 64return Object ::sendMessage < MTL ::Device *> (this ,_MTL_PRIVATE_SEL (device )); 65} 66 67// method: commandBuffer 68_MTL_INLINE MTL ::CommandBuffer * MTL ::CommandQueue ::commandBuffer () 69{ 70return Object ::sendMessage < MTL ::CommandBuffer *> (this ,_MTL_PRIVATE_SEL (commandBuffer )); 71} 72 73// method: commandBufferWithDescriptor: 74_MTL_INLINE MTL ::CommandBuffer * MTL ::CommandQueue ::commandBuffer (const MTL ::CommandBufferDescriptor * descriptor ) 75{ 76return Object ::sendMessage < MTL ::CommandBuffer *> (this ,_MTL_PRIVATE_SEL (commandBufferWithDescriptor_ ),descriptor ); 77} 78 79// method: commandBufferWithUnretainedReferences 80_MTL_INLINE MTL ::CommandBuffer * MTL ::CommandQueue ::commandBufferWithUnretainedReferences () 81{ 82return Object ::sendMessage < MTL ::CommandBuffer *> (this ,_MTL_PRIVATE_SEL (commandBufferWithUnretainedReferences )); 83} 84 85// method: insertDebugCaptureBoundary 86_MTL_INLINE voidMTL ::CommandQueue ::insertDebugCaptureBoundary () 87{ 88Object ::sendMessage < void > (this ,_MTL_PRIVATE_SEL (insertDebugCaptureBoundary )); 89}