Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Металлическая ссылка платформы ссылка класса MTLArgument

Опции
Развертывание Target:

На этой странице
Язык:

MTLArgument

Наследование


Соответствует


Оператор импорта


Swift

import Metal

Objective C

@import Metal;

Доступность


Доступный в iOS 8.0 и позже.

A MTLArgument объект описывает отдельный аргумент к Металлической функции. Ваше приложение использует MTLArgument свойства для чтения подробных данных об аргументе функции, поскольку это было определено на Металлическом Языке Штриховки. Можно определить тип данных параметра, ограничения доступа и его связанный тип ресурса. Для буфера, текстуры и threadgroup параметров памяти, дополнительные свойства могут быть считаны для определения большего количества подробных данных о параметре.

Ваше приложение не создает a MTLArgument возразите непосредственно. Создание a MTLRenderPipelineState или MTLComputePipelineState объект может генерировать отражательный объект (MTLRenderPipelineReflection или MTLComputePipelineReflection) это содержит MTLArgument объекты.

  • name Свойство

    Имя аргумента функции. (только для чтения)

    Объявление

    Swift

    var name: String { get }

    Objective C

    @property(readonly) NSString *name

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • access Свойство

    Доступ для чтения функции и/или доступ для записи к параметру. (только для чтения)

    Объявление

    Swift

    var access: MTLArgumentAccess { get }

    Objective C

    @property(readonly) MTLArgumentAccess access

    Обсуждение

    Это свойство указывает тип спецификаторов доступа (только для чтения, только для записи, или чтение-запись) используемый в Металлическом коде языка штриховки. Для получения информации о возможных значениях посмотрите MTLArgumentAccess.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • active Свойство

    Если YEStrue, этот параметр используется в Металлической функции языка штриховки и был установлен в индекс в таблице параметра. Если NOfalse, этот параметр не используется в Металлической функции языка штриховки и может быть проигнорирован. (только для чтения)

    Объявление

    Swift

    var active: Bool { get }

    Objective C

    @property(readonly, getter=isActive) BOOL active

    Обсуждение

    Для параметра, чтобы быть активным, код языка штриховки должен использовать параметр в функции и код платформы (MTLComputeCommandEncoder или MTLRenderCommandEncoder) должен указать индекс для аргумента функции в соответствующей таблице параметра. Например, для удовлетворения требования кода платформы приложение может вызвать setVertexBuffer:offset:atIndex: метод MTLRenderCommandEncoder указать индекс в буферной таблице параметра для a MTLBuffer объект, использующийся в качестве параметра функции вершины.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • index Свойство

    Индекс в таблице параметра, соответствующей аргументу функции. (только для чтения)

    Объявление

    Swift

    var index: Int { get }

    Objective C

    @property(readonly) NSUInteger index

    Обсуждение

    Кодер команды (MTLComputeCommandEncoder или MTLRenderCommandEncoder) указывает индекс в соответствующей таблице параметра. Например, приложение может вызвать setTexture:atIndex: метод MTLComputeCommandEncoder указать индекс в таблице параметра текстуры для a MTLTexture объект, использующийся в качестве параметра вычислить функции.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • type Свойство

    Тип ресурса параметра. (только для чтения)

    Объявление

    Swift

    var type: MTLArgumentType { get }

    Objective C

    @property(readonly) MTLArgumentType type

    Обсуждение

    Это свойство указывает, какой тип ресурса используется (буфер, текстура, сэмплер или threadgroup память) в коде языка штриховки. Для получения информации о возможных значениях посмотрите MTLArgumentType.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • bufferAlignment Свойство

    Требуемое выравнивание байта в памяти для буферных данных в аргументе функции. (только для чтения)

    Объявление

    Swift

    var bufferAlignment: Int { get }

    Objective C

    @property(readonly) NSUInteger bufferAlignment

    Обсуждение

    Если параметром не является буфер, запрашивать это свойство является фатальной ошибкой.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • bufferDataSize Свойство

    Размер, в байтах, буферных данных в аргументе функции. (только для чтения)

    Объявление

    Swift

    var bufferDataSize: Int { get }

    Objective C

    @property(readonly) NSUInteger bufferDataSize

    Обсуждение

    Если параметром не является буфер, запрашивать это свойство является фатальной ошибкой.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • bufferDataType Свойство

    Тип данных буферных данных в аргументе функции. (только для чтения)

    Объявление

    Swift

    var bufferDataType: MTLDataType { get }

    Objective C

    @property(readonly) MTLDataType bufferDataType

    Обсуждение

    Если параметром не является буфер, запрашивать это свойство является фатальной ошибкой.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • bufferStructType Свойство

    Возвращает описание данных структуры, содержавшихся в буферном параметре. (только для чтения)

    Объявление

    Swift

    var bufferStructType: MTLStructType? { get }

    Objective C

    @property(readonly) MTLStructType *bufferStructType

    Обсуждение

    Для получения информации о возможных возвращенных значениях посмотрите MTLStructType. Если параметром не является буфер, запрашивать это свойство является фатальной ошибкой. Если параметром является буфер, но тип данных буфера не является структурой, значение этого свойства nil.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • textureDataType Свойство

    Тип данных параметра текстуры. (только для чтения)

    Объявление

    Swift

    var textureDataType: MTLDataType { get }

    Objective C

    @property(readonly) MTLDataType textureDataType

    Обсуждение

    Для получения информации о возможных значениях посмотрите MTLDataType. Если параметром не является текстура, запрашивать это свойство является фатальной ошибкой.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • textureType Свойство

    Тип текстуры параметра текстуры. (только для чтения)

    Объявление

    Swift

    var textureType: MTLTextureType { get }

    Objective C

    @property(readonly) MTLTextureType textureType

    Обсуждение

    Для получения информации о возможных значениях посмотрите MTLTextureType. Если параметром не является текстура, запрашивать это свойство является фатальной ошибкой.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • threadgroupMemoryAlignment Свойство

    Требуемое выравнивание байта в памяти для threadgroup данных в параметре вычислить функции. (только для чтения)

    Объявление

    Swift

    var threadgroupMemoryAlignment: Int { get }

    Objective C

    @property(readonly) NSUInteger threadgroupMemoryAlignment

    Обсуждение

    Если параметром не является threadgroup, запрашивать это свойство является фатальной ошибкой. Металлическая реализация определяет это значение.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • threadgroupMemoryDataSize Свойство

    Размер, в байтах, threadgroup данных в параметре вычислить функции. (только для чтения)

    Объявление

    Swift

    var threadgroupMemoryDataSize: Int { get }

    Objective C

    @property(readonly) NSUInteger threadgroupMemoryDataSize

    Обсуждение

    Если параметром не является threadgroup, запрашивать это свойство является фатальной ошибкой. Металлическая реализация определяет это значение.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • Функциональные ограничения доступа к данным параметра в коде языка штриховки.

    Объявление

    Swift

    enum MTLArgumentAccess : UInt { case ReadOnly case ReadWrite case WriteOnly }

    Objective C

    typedef enum : NSUInteger { MTLArgumentAccessReadOnly = 0, MTLArgumentAccessReadWrite = 1, MTLArgumentAccessWriteOnly = 2 } MTLArgumentAccess;

    Константы

    • ReadOnly

      MTLArgumentAccessReadOnly

      Функция может только считать свои данные параметра.

      Доступный в iOS 8.0 и позже.

    • ReadWrite

      MTLArgumentAccessReadWrite

      Функция может или считать или записать свои данные параметра.

      Доступный в iOS 8.0 и позже.

    • WriteOnly

      MTLArgumentAccessWriteOnly

      Функция может только записать свои данные параметра.

      Доступный в iOS 8.0 и позже.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • Тип ресурса связался с параметром функции.

    Объявление

    Swift

    enum MTLArgumentType : UInt { case Buffer case ThreadgroupMemory case Texture case Sampler }

    Objective C

    typedef enum : NSUInteger { MTLArgumentTypeBuffer = 0, MTLArgumentTypeThreadgroupMemory = 1, MTLArgumentTypeTexture = 2, MTLArgumentTypeSampler = 3 } MTLArgumentType;

    Константы

    • Buffer

      MTLArgumentTypeBuffer

      Этим параметром является буфер.

      Доступный в iOS 8.0 и позже.

    • ThreadgroupMemory

      MTLArgumentTypeThreadgroupMemory

      Этим параметром является указатель на threadgroup память.

      Доступный в iOS 8.0 и позже.

    • Texture

      MTLArgumentTypeTexture

      Этим параметром является текстура.

      Доступный в iOS 8.0 и позже.

    • Sampler

      MTLArgumentTypeSampler

      Этим параметром является сэмплер.

      Доступный в iOS 8.0 и позже.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.

  • Тип данных аргумента функции, как это объявляется в коде языка штриховки.

    Объявление

    Swift

    enum MTLDataType : UInt { case None case Struct case Array case Float case Float2 case Float3 case Float4 case Float2x2 case Float2x3 case Float2x4 case Float3x2 case Float3x3 case Float3x4 case Float4x2 case Float4x3 case Float4x4 case Half case Half2 case Half3 case Half4 case Half2x2 case Half2x3 case Half2x4 case Half3x2 case Half3x3 case Half3x4 case Half4x2 case Half4x3 case Half4x4 case Int case Int2 case Int3 case Int4 case UInt case UInt2 case UInt3 case UInt4 case Short case Short2 case Short3 case Short4 case UShort case UShort2 case UShort3 case UShort4 case Char case Char2 case Char3 case Char4 case UChar case UChar2 case UChar3 case UChar4 case Bool case Bool2 case Bool3 case Bool4 }

    Objective C

    typedef enum : NSUInteger { MTLDataTypeNone = 0, MTLDataTypeStruct = 1, MTLDataTypeArray = 2, MTLDataTypeFloat = 3, MTLDataTypeFloat2 = 4, MTLDataTypeFloat3 = 5, MTLDataTypeFloat4 = 6, MTLDataTypeFloat2x2 = 7, MTLDataTypeFloat2x3 = 8, MTLDataTypeFloat2x4 = 9, MTLDataTypeFloat3x2 = 10, MTLDataTypeFloat3x3 = 11, MTLDataTypeFloat3x4 = 12, MTLDataTypeFloat4x2 = 13, MTLDataTypeFloat4x3 = 14, MTLDataTypeFloat4x4 = 15, MTLDataTypeHalf = 16, MTLDataTypeHalf2 = 17, MTLDataTypeHalf3 = 18, MTLDataTypeHalf4 = 19, MTLDataTypeHalf2x2 = 20, MTLDataTypeHalf2x3 = 21, MTLDataTypeHalf2x4 = 22, MTLDataTypeHalf3x2 = 23, MTLDataTypeHalf3x3 = 24, MTLDataTypeHalf3x4 = 25, MTLDataTypeHalf4x2 = 26, MTLDataTypeHalf4x3 = 27, MTLDataTypeHalf4x4 = 28, MTLDataTypeInt = 29, MTLDataTypeInt2 = 30, MTLDataTypeInt3 = 31, MTLDataTypeInt4 = 32, MTLDataTypeUInt = 33, MTLDataTypeUInt2 = 34, MTLDataTypeUInt3 = 35, MTLDataTypeUInt4 = 36, MTLDataTypeShort = 37, MTLDataTypeShort2 = 38, MTLDataTypeShort3 = 39, MTLDataTypeShort4 = 40, MTLDataTypeUShort = 41, MTLDataTypeUShort2 = 42, MTLDataTypeUShort3 = 43, MTLDataTypeUShort4 = 44, MTLDataTypeChar = 45, MTLDataTypeChar2 = 46, MTLDataTypeChar3 = 47, MTLDataTypeChar4 = 48, MTLDataTypeUChar = 49, MTLDataTypeUChar2 = 50, MTLDataTypeUChar3 = 51, MTLDataTypeUChar4 = 52, MTLDataTypeBool = 53, MTLDataTypeBool2 = 54, MTLDataTypeBool3 = 55, MTLDataTypeBool4 = 56 } MTLDataType;

    Константы

    • None

      MTLDataTypeNone

      Параметр не соответствует никакому типу данных. Если параметр не имеет никакого допустимого типа данных, это только возвращается.

      Доступный в iOS 8.0 и позже.

    • Struct

      MTLDataTypeStruct

      Структура.

      Доступный в iOS 8.0 и позже.

    • Array

      MTLDataTypeArray

      Массив.

      Доступный в iOS 8.0 и позже.

    • Float

      MTLDataTypeFloat

      32-разрядное значение с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float2

      MTLDataTypeFloat2

      Вектор с 2 компонентами с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float3

      MTLDataTypeFloat3

      Вектор с 3 компонентами с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float4

      MTLDataTypeFloat4

      Вектор с 4 компонентами с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float2x2

      MTLDataTypeFloat2x2

      2x2 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float2x3

      MTLDataTypeFloat2x3

      2x3 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float2x4

      MTLDataTypeFloat2x4

      2x4 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float3x2

      MTLDataTypeFloat3x2

      3x2 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float3x3

      MTLDataTypeFloat3x3

      3x3 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float3x4

      MTLDataTypeFloat3x4

      3x4 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float4x2

      MTLDataTypeFloat4x2

      4x2 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float4x3

      MTLDataTypeFloat4x3

      4x3 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Float4x4

      MTLDataTypeFloat4x4

      4x4 матрица компонента с 32-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half

      MTLDataTypeHalf

      16-разрядное значение с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half2

      MTLDataTypeHalf2

      Вектор с 2 компонентами с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half3

      MTLDataTypeHalf3

      Вектор с 3 компонентами с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half4

      MTLDataTypeHalf4

      Вектор с 4 компонентами с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half2x2

      MTLDataTypeHalf2x2

      2x2 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half2x3

      MTLDataTypeHalf2x3

      2x3 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half2x4

      MTLDataTypeHalf2x4

      2x4 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half3x2

      MTLDataTypeHalf3x2

      3x2 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half3x3

      MTLDataTypeHalf3x3

      3x3 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half3x4

      MTLDataTypeHalf3x4

      3x4 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half4x2

      MTLDataTypeHalf4x2

      4x2 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half4x3

      MTLDataTypeHalf4x3

      4x3 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Half4x4

      MTLDataTypeHalf4x4

      4x4 матрица компонента с 16-разрядными значениями с плавающей точкой.

      Доступный в iOS 8.0 и позже.

    • Int

      MTLDataTypeInt

      32-разрядное целочисленное значение со знаком.

      Доступный в iOS 8.0 и позже.

    • Int2

      MTLDataTypeInt2

      Вектор с 2 компонентами с 32-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Int3

      MTLDataTypeInt3

      Вектор с 3 компонентами с 32-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Int4

      MTLDataTypeInt4

      Вектор с 4 компонентами с 32-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • UInt

      MTLDataTypeUInt

      32-разрядное целочисленное значение без знака.

      Доступный в iOS 8.0 и позже.

    • UInt2

      MTLDataTypeUInt2

      Вектор с 2 компонентами с 32-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UInt3

      MTLDataTypeUInt3

      Вектор с 3 компонентами с 32-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UInt4

      MTLDataTypeUInt4

      Вектор с 4 компонентами с 32-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • Short

      MTLDataTypeShort

      16-разрядное целочисленное значение со знаком.

      Доступный в iOS 8.0 и позже.

    • Short2

      MTLDataTypeShort2

      Вектор с 2 компонентами с 16-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Short3

      MTLDataTypeShort3

      Вектор с 3 компонентами с 16-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Short4

      MTLDataTypeShort4

      Вектор с 4 компонентами с 16-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • UShort

      MTLDataTypeUShort

      16-разрядное целочисленное значение без знака.

      Доступный в iOS 8.0 и позже.

    • UShort2

      MTLDataTypeUShort2

      Вектор с 2 компонентами с 16-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UShort3

      MTLDataTypeUShort3

      Вектор с 3 компонентами с 16-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UShort4

      MTLDataTypeUShort4

      Вектор с 4 компонентами с 16-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • Char

      MTLDataTypeChar

      8-разрядное целочисленное значение со знаком.

      Доступный в iOS 8.0 и позже.

    • Char2

      MTLDataTypeChar2

      Вектор с 2 компонентами с 8-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Char3

      MTLDataTypeChar3

      Вектор с 3 компонентами с 8-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • Char4

      MTLDataTypeChar4

      Вектор с 4 компонентами с 8-разрядными целочисленными значениями со знаком.

      Доступный в iOS 8.0 и позже.

    • UChar

      MTLDataTypeUChar

      8-разрядное целочисленное значение без знака.

      Доступный в iOS 8.0 и позже.

    • UChar2

      MTLDataTypeUChar2

      Вектор с 2 компонентами с 8-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UChar3

      MTLDataTypeUChar3

      Вектор с 3 компонентами с 8-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • UChar4

      MTLDataTypeUChar4

      Вектор с 4 компонентами с 8-разрядными целочисленными значениями без знака.

      Доступный в iOS 8.0 и позже.

    • Bool

      MTLDataTypeBool

      Булево значение.

      Доступный в iOS 8.0 и позже.

    • Bool2

      MTLDataTypeBool2

      Вектор с 2 компонентами с булевыми значениями.

      Доступный в iOS 8.0 и позже.

    • Bool3

      MTLDataTypeBool3

      Вектор с 3 компонентами с булевыми значениями.

      Доступный в iOS 8.0 и позже.

    • Bool4

      MTLDataTypeBool4

      Вектор с 4 компонентами с булевыми значениями.

      Доступный в iOS 8.0 и позже.

    Оператор импорта

    Objective C

    @import Metal;

    Swift

    import Metal

    Доступность

    Доступный в iOS 8.0 и позже.