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

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

Разработчик

Кварцевая ссылка платформы ссылка на протокол QCPlugInInputImageSource

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

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

QCPlugInInputImageSource

QCPlugInInputImageSource протокол избавляет от необходимости использовать явные типы изображения для входных портов изображения на Вашем пользовательском патче. Не только делает использование протокола, избегают ограничений определенного типа изображения, но это избегает несоответствий импеданса и обеспечивает лучшую производительность путем задержки пиксельного вычисления, пока это не необходимо. Когда необходимо получить доступ к пикселям в изображении, Вы просто преобразовываете изображение в представление (текстура или буфер) использование одного из методов, определенных QCPlugInInputImageSource протокол. Используйте представление текстуры, когда Вы захотите использовать входные изображения на GPU. Используйте буферное представление, когда Вы захотите использовать входные изображения на CPU.

Входные изображения являются непрозрачными исходными объектами, соответствующими этому протоколу. Для создания входного порта изображения как свойства Objective-C 2.0 объявите его следующим образом:

  • @property(dynamic) id<QCPlugInInputImageSource> inputImage;

Создать входной порт изображения динамично. используйте тип QCPortTypeImage:

  • [self addInputPortWithType:QCPortTypeImage
  • forKey:@”inputImage
  • withAttributes:nil];

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


Не применимый

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


Не применимый

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


Swift

import Quartz

Objective C

@import Quartz;

Доступность


Доступный в OS X v10.5 и позже.
  • Создает представление текстуры OpenGL от подобласти источника изображения с помощью предоставленного цветового пространства. (требуемый)

    Объявление

    Swift

    func lockTextureRepresentationWithColorSpace(_ colorSpace: CGColorSpace!, forBounds bounds: NSRect) -> Bool

    Objective C

    - (BOOL)lockTextureRepresentationWithColorSpace:(CGColorSpaceRef)colorSpace forBounds:(NSRect)bounds

    Параметры

    colorSpace

    Кварцевое цветовое пространство.

    bounds

    Границы подобласти, выраженной в пикселях. Они должны быть выровненные к целочисленным границам.

    Возвращаемое значение

    YEStrue успешно; NOfalse если не может быть создана текстура.

    Обсуждение

    Ни содержание текстуры, ни ее состояния (например, режим обертки) не должны быть изменены; можно только нарисовать с ним. Текстура допустима только в сменном контексте.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Выпускает представление текстуры OpenGL источника изображения. (требуемый)

    Объявление

    Swift

    func unlockTextureRepresentation()

    Objective C

    - (void)unlockTextureRepresentation

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

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

    Объявление

    Swift

    func lockBufferRepresentationWithPixelFormat(_ format: String!, colorSpace colorSpace: CGColorSpace!, forBounds bounds: NSRect) -> Bool

    Objective C

    - (BOOL)lockBufferRepresentationWithPixelFormat:(NSString *)format colorSpace:(CGColorSpaceRef)colorSpace forBounds:(NSRect)bounds

    Параметры

    format

    Формат пикселя, который совместим с цветовым пространством.

    colorSpace

    Кварцевое цветовое пространство, которое совместимо с форматом пикселя.

    bounds

    Границы подобласти, выраженной как пиксели и выровненной к целочисленным границам.

    Возвращаемое значение

    YEStrue если успешный; иначе NOfalse.

    Обсуждение

    Содержание буфера только для чтения. Вы не должны пытаться изменить его.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Связывает текстуру с данным модулем текстуры и дополнительно масштабирует или зеркально отражает текстуру. (требуемый)

    Объявление

    Swift

    func bindTextureRepresentationToCGLContext(_ cgl_ctx: CGLContextObj, textureUnit unit: GLenum, normalizeCoordinates flag: Bool)

    Objective C

    - (void)bindTextureRepresentationToCGLContext:(CGLContextObj)cgl_ctx textureUnit:(GLenum)unit normalizeCoordinates:(BOOL)flag

    Параметры

    cgl_ctx

    Контекст CGL для рендеринга к.)

    unit

    Модуль текстуры для привязки с (такой как, GL_TEXTURE0)

    flag

    Применять матрицу текстуры для масштабирования координат (от [0, pixels] к [0,1]) и зеркально отразите их вертикально (если необходимый), передать YEStrue.

    Обсуждение

    Когда Вам больше не будет нужна текстура, вызвать unbindTextureRepresentationFromCGLContext:textureUnit:.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Развязывает текстуру от модуля текстуры. (требуемый)

    Объявление

    Swift

    func unbindTextureRepresentationFromCGLContext(_ cgl_ctx: CGLContextObj, textureUnit unit: GLenum)

    Objective C

    - (void)unbindTextureRepresentationFromCGLContext:(CGLContextObj)cgl_ctx textureUnit:(GLenum)unit

    Параметры

    cgl_ctx

    Контекст CGL.)

    unit

    Модуль текстуры для развязывания от (такой как, GL_TEXTURE0)

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Выпускает представление буфера памяти источника изображения. (требуемый)

    Объявление

    Swift

    func unlockBufferRepresentation()

    Objective C

    - (void)unlockBufferRepresentation

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает цветовое пространство источника изображения. (требуемый)

    Объявление

    Swift

    func imageColorSpace() -> Unmanaged<CGColorSpace>!

    Objective C

    - (CGColorSpaceRef)imageColorSpace

    Возвращаемое значение

    Цветовое пространство источника изображения, обычно RGB или тип Грэя.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвраты, должен ли источник изображения быть соответствующим цветом. (требуемый)

    Объявление

    Swift

    func shouldColorMatch() -> Bool

    Objective C

    - (BOOL)shouldColorMatch

    Возвращаемое значение

    NOfalse если источник является маской или градиентом; YEStrue иначе.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает ширину представления текстуры. (требуемый)

    Объявление

    Swift

    func texturePixelsWide() -> Int

    Objective C

    - (NSUInteger)texturePixelsWide

    Возвращаемое значение

    Ширина текстуры, выраженной в пикселях.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – texturePixelsHigh

  • Возвращает высоту представления текстуры. (требуемый)

    Объявление

    Swift

    func texturePixelsHigh() -> Int

    Objective C

    - (NSUInteger)texturePixelsHigh

    Возвращаемое значение

    Высота текстуры, выраженной в пикселях.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – texturePixelsWide

  • textureTarget () - textureTarget Требуемый

    Возвращает цель текстуры. (требуемый)

    Объявление

    Swift

    func textureTarget() -> GLenum

    Objective C

    - (GLenum)textureTarget

    Возвращаемое значение

    Цель текстуры, также GL_TEXTURE_2D или GL_TEXTURE_RECTANGLE_EXT.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • textureName () - textureName Требуемый

    Возвращает имя текстуры. (требуемый)

    Объявление

    Swift

    func textureName() -> GLuint

    Objective C

    - (GLuint)textureName

    Возвращаемое значение

    Имя текстуры.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает цветовое пространство представления текстуры. (требуемый)

    Объявление

    Swift

    func textureColorSpace() -> Unmanaged<CGColorSpace>!

    Objective C

    - (CGColorSpaceRef)textureColorSpace

    Возвращаемое значение

    Цветовое пространство текстуры.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • textureFlipped () - textureFlipped Требуемый

    Возвраты, зеркально отражается ли содержание текстуры вертикально. (требуемый)

    Объявление

    Swift

    func textureFlipped() -> Bool

    Objective C

    - (BOOL)textureFlipped

    Возвращаемое значение

    YEStrue если содержание текстуры зеркально отражается (перевернутым); NOfalse иначе.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • textureMatrix () - textureMatrix Требуемый

    Возвращает матрицу текстуры. (требуемый)

    Объявление

    Swift

    func textureMatrix() -> UnsafePointer<GLfloat>

    Objective C

    - (const GLfloat *)textureMatrix

    Возвращаемое значение

    4x4 текстурируют матрицу, создаваемую путем масштабирования (от [0, пиксели] к [0,1]) и вертикально зеркальное отражение координат текстуры; NULL если не требуется координатная трансформация.

    Обсуждение

    Этот метод предоставлен как удобство для 2D текстур, чтобы заботиться о двух проблемах:

    • Координаты для прямоугольных текстур выражены в пикселях, а не нормированных единицах, используемых для текстур power-two. Координаты должны быть нормализованы, прежде чем можно будет обработать текстуру.

    • Координаты текстуры обычно зеркально отражаются OpenGL для обработки на GPU и должны быть зеркально отражены к исходным координатам.

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

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • imageBounds () - imageBounds Требуемый

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

    Объявление

    Swift

    func imageBounds() -> NSRect

    Objective C

    - (NSRect)imageBounds

    Возвращаемое значение

    Границы источника изображения.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает ширину буферного представления изображения. (требуемый)

    Объявление

    Swift

    func bufferPixelsWide() -> Int

    Objective C

    - (NSUInteger)bufferPixelsWide

    Возвращаемое значение

    Ширина, выраженная в пикселях.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – bufferPixelsHigh

  • Возвращает высоту буферного представления изображения. (требуемый)

    Объявление

    Swift

    func bufferPixelsHigh() -> Int

    Objective C

    - (NSUInteger)bufferPixelsHigh

    Возвращаемое значение

    Высота, выраженная в пикселях.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    – bufferPixelsHigh

  • Возвращает формат пикселя буферного представления изображения. (требуемый)

    Объявление

    Swift

    func bufferPixelFormat() -> String!

    Objective C

    - (NSString *)bufferPixelFormat

    Возвращаемое значение

    Строка, указывающая формат пикселя. Поддерживаемые форматы являются ARGB8 (8-разрядная альфа, красная, зеленая, синяя), BGRA8 (8-разрядный синий, зеленый, красный цвет, и альфа), RGBAf (с плавающей точкой, красный, зеленый, синий, альфа), I8 (8-разрядная интенсивность), и Если (интенсивность с плавающей точкой).

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает цветовое пространство буферного представления изображения. (требуемый)

    Объявление

    Swift

    func bufferColorSpace() -> Unmanaged<CGColorSpace>!

    Objective C

    - (CGColorSpaceRef)bufferColorSpace

    Возвращаемое значение

    Цветовое пространство буфера изображения.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает базовый адрес буфера изображения. (требуемый)

    Объявление

    Swift

    func bufferBaseAddress() -> UnsafePointer<Void>

    Objective C

    - (const void *)bufferBaseAddress

    Возвращаемое значение

    Базовый адрес буфера.

    Обсуждение

    Базовый адрес, как гарантируют, будет выровненный на 16-байтовой границе.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.

  • Возвращает байты на строку буферного представления. (требуемый)

    Объявление

    Swift

    func bufferBytesPerRow() -> Int

    Objective C

    - (NSUInteger)bufferBytesPerRow

    Возвращаемое значение

    Число байтов на строку буфера.

    Обсуждение

    Число байтов на строку, как гарантируют, будет кратным числом 16.

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

    Objective C

    @import Quartz;

    Swift

    import Quartz

    Доступность

    Доступный в OS X v10.5 и позже.