MTLLibrary
Наследование
Не применимый
Оператор импорта
Swift
import Metal
Objective C
@import Metal;
Доступность
Доступный в iOS 8.0 и позже.
MTLLibrary протокол определяет интерфейс для объекта, представляющего библиотеку Металлических функций программы построения теней. A MTLLibrary объект может содержать Металлический код языка штриховки, компилирующийся во время процесса сборки приложения или во время выполнения от текстовой строки, содержащей Металлический исходный код языка штриховки. Ваше приложение не определяет классы, реализующие этот протокол.
Используйте a MTLDevice метод (не стандартное выделение и методы инициализации) для создания a MTLLibrary объект. Создать a MTLLibrary объект от двоичного файла библиотеки Metal, вызовите один из них MTLDevice методы:
Создать a MTLLibrary объект путем компиляции исходного кода, вызовите один из них MTLDevice методы:
newFunctionWithName: метод используется для выборки функций от библиотеки, делающей тот код доступным как программа построения теней для любого a MTLRenderPipelineState объект для кодера команды рендеринга или для a MTLComputePipelineState для вычислить кодера команды.
-
Возвращает функциональный объект, представляющий точку входа в библиотеке. (требуемый)
Объявление
Swift
func newFunctionWithName(_functionName: String!) -> MTLFunction?Objective C
- (id<MTLFunction>)newFunctionWithName:(NSString *)functionNameПараметры
functionNameИмя точки входа.
Возвращаемое значение
Функциональный объект для именованной точки входа, или
nilесли именованная функция не найдена в библиотеке.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
functionNamesСвойствоСписок всех точек входа в библиотеке. (требуемый) (только для чтения)
Объявление
Swift
var functionNames: [AnyObject]! { get }Objective C
@property(readonly) NSArray *functionNamesОбсуждение
Значение является массивом
NSStringобъекты и каждая строка являются именем точки входа.Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
deviceСвойствоУстройство, из которого создавалась эта библиотека. (требуемый) (только для чтения)
Объявление
Swift
var device: MTLDevice! { get }Objective C
@property(readonly) id< MTLDevice > deviceОбсуждение
Этой библиотекой можно только пользоваться с этим устройством.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
Состояния ошибки, которые могут следовать из создания a
MTLLibraryилиMTLFunctionобъект.Объявление
Swift
enum MTLLibraryError : UInt { case Unsupported case Internal case CompileFailure case CompileWarning }Objective C
typedef enum : NSUInteger { MTLLibraryErrorUnsupported = 1, MTLLibraryErrorInternal = 2, MTLLibraryErrorCompileFailure = 3, MTLLibraryErrorCompileWarning = 4 } MTLLibraryError;Константы
-
UnsupportedMTLLibraryErrorUnsupportedДействие не поддерживается. Например, требуемый файл библиотеки имеет неподходящее форматирование, или требуемая библиотека не доступна.
Доступный в iOS 8.0 и позже.
-
InternalMTLLibraryErrorInternalДействие вызывает внутреннюю ошибку.
Доступный в iOS 8.0 и позже.
-
CompileFailureMTLLibraryErrorCompileFailureСбои компиляции.
Доступный в iOS 8.0 и позже.
-
CompileWarningMTLLibraryErrorCompileWarningКомпиляция успешно выполняется (никакая ошибка), но существуют предупреждения компилятора.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
-
Состояния ошибки, которые могут следовать из создания a
MTLRenderPipelineStateобъект.Объявление
Swift
enum MTLRenderPipelineError : UInt { case Internal case Unsupported case InvalidInput }Objective C
typedef enum : NSUInteger { MTLRenderPipelineErrorInternal = 1, MTLRenderPipelineErrorUnsupported = 2, MTLRenderPipelineErrorInvalidInput = 3 } MTLRenderPipelineError;Константы
-
InternalMTLRenderPipelineErrorInternalДействие вызывает внутреннюю ошибку.
Доступный в iOS 8.0 и позже.
-
UnsupportedMTLRenderPipelineErrorUnsupportedДействие не поддерживается.
Доступный в iOS 8.0 и позже.
-
InvalidInputMTLRenderPipelineErrorInvalidInputВходные значения недопустимы.
Доступный в iOS 8.0 и позже.
Оператор импорта
Objective C
@import Metal;Swift
import MetalДоступность
Доступный в iOS 8.0 и позже.
-
