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

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

Разработчик

Ссылка платформы FxPlug ссылка типов данных FxPlug

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

На этой странице

Ссылка типов данных FxPlug

Этот документ описывает типы данных, определенные в FxPlug SDK, которые не являются определенным классом.

Типы данных

  • 2D представление точки.

    Объявление

    Objective C

    typedef CGPoint FxPoint2D;

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

  • 3D представление точки

    Объявление

    Objective C

    typedef struct FxPoint3D { CGFloat x; CGFloat y; CGFloat z; } FxPoint3D;

    Константы

    • x

      x

      X координат 3D точки.

    • y

      y

      Координата Y 3D точки.

    • z

      z

      Координата Z 3D точки.

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

  • 2D выровненный осью прямоугольник с целочисленными координатами.

    Объявление

    Objective C

    typedef struct FxRect { SInt32 left; SInt32 bottom; SInt32 right; SInt32 top; } FxRect;

    Константы

    • left

      left

      Компонент левого края прямоугольника.

    • bottom

      bottom

      Компонент базового края прямоугольника.

    • right

      right

      Компонент правого края прямоугольника.

    • top

      top

      Главный граничный компонент прямоугольника.

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

  • Структура для хранения значений ширины и высоты.

    Объявление

    Objective C

    typedef CGSize FxSize;

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

  • Константы раньше идентифицировали битовую глубину.

    Объявление

    Objective C

    enum { kFxDepth_UINT8 = 0, kFxDepth_FLOAT16 = 2, kFxDepth_FLOAT32 = 3 }; typedef NSUInteger FxDepth;

    Константы

    • kFxDepth_UINT8

      kFxDepth_UINT8

      Каждый компонент является 8-разрядным целым числом.

    • kFxDepth_FLOAT16

      kFxDepth_FLOAT16

      Каждый компонент является 16-разрядным плаванием.

    • kFxDepth_FLOAT32

      kFxDepth_FLOAT32

      Каждый компонент является 32-разрядным плаванием.

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

  • Некоторые распространенные ошибки, которые могут быть возвращены сменными приложениями узлов.

    Объявление

    Objective C

    enum { kFxError_Success = 0, kFxError_InvalidParameterID, kFxError_InvalidParameterChannelIndex, kFxError_InvalidKeyframeIndex, kFxError_InvalidTime, kFxError_InvalidParameter, kFxError_OutOfMemory, kFxError_MemoryNotAllocated, kFxError_OpenGLError, kFxError_InvalidPathID, kFxError_InvalidPathIndex, kFxError_InvalidSegmentIndex, kFxError_ThirdPartyDeveloperStart = 100000 }; typedef NSUInteger FxError;

    Константы

    • kFxError_Success

      kFxError_Success

      Никакая ошибка не произошла. Вызов успешно выполнился.

    • kFxError_InvalidParameterID

      kFxError_InvalidParameterID

      Недопустимый параметр ID использовался.

    • kFxError_InvalidParameterChannelIndex

      kFxError_InvalidParameterChannelIndex

      Число неверного канала для параметра использовалось.

    • kFxError_InvalidKeyframeIndex

      kFxError_InvalidKeyframeIndex

      Использовался недопустимый индекс ключевого кадра.

    • kFxError_InvalidTime

      kFxError_InvalidTime

      Использовалось недопустимое время.

    • kFxError_InvalidParameter

      kFxError_InvalidParameter

      Параметр, отправленный в метод API, был недопустим. Например, a nil указатель, объект не реализует протокол и т.д.

    • kFxError_OutOfMemory

      kFxError_OutOfMemory

      Неспособный выделить память.

    • kFxError_MemoryNotAllocated

      kFxError_MemoryNotAllocated

      Попытка к свободной памяти, не выделенной.

    • kFxError_OpenGLError

      kFxError_OpenGLError

      OpenGL возвратил ошибку.

    • kFxError_InvalidPathID

      kFxError_InvalidPathID

      Никакой путь с тем, что существует ID.

    • kFxError_InvalidPathIndex

      kFxError_InvalidPathIndex

      Индекс больше, чем число путей.

    • kFxError_InvalidSegmentIndex

      kFxError_InvalidSegmentIndex

      Индекс сегмента пути больше, чем число сегментов по пути.

    • kFxError_ThirdPartyDeveloperStart

      kFxError_ThirdPartyDeveloperStart

      Все сторонние ошибочные значения должны быть больше, чем или равными этому значению.

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

  • Константы раньше идентифицировали поле. До FxPlug SDK 1.2 этот тип использовался для идентификации полевого порядка. С FxPlug SDK 1.2 это используется для идентификации поля изображения.

    Объявление

    Objective C

    enum { kFxField_NONE = 0, kFxField_UPPER = 1, kFxField_LOWER = 2 }; typedef NSUInteger FxFieldOrder;

    Константы

    • kFxField_NONE

      kFxField_NONE

      Полный кадр, прогрессивный (никакие поля).

    • kFxField_UPPER

      kFxField_UPPER

      Верхнее поле.

    • kFxField_LOWER

      kFxField_LOWER

      Более низкое поле.

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

  • Константы раньше идентифицировали полевой порядок потока изображения.

    Объявление

    Objective C

    enum { kFxFieldOrder_PROGRESSIVE = 0, kFxFieldOrder_UPPER_FIRST = 1, kFxFieldOrder_LOWER_FIRST = 2 }; typedef NSUInteger FxFieldOrder;

    Константы

    • kFxFieldOrder_PROGRESSIVE

      kFxFieldOrder_PROGRESSIVE

      Полный кадр, прогрессивный (никакие поля).

    • kFxFieldOrder_UPPER_FIRST

      kFxFieldOrder_UPPER_FIRST

      Верхнее поле сначала.

    • kFxFieldOrder_LOWER_FIRST

      kFxFieldOrder_LOWER_FIRST

      Более низкое поле сначала.

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

  • Константы для указания типа ключевого кадра

    Объявление

    Objective C

    enum { kFxKeyframeStyle_Constant = 0x0001, kFxKeyframeStyle_Linear = 0x0002, kFxKeyframeStyle_Quadratic = 0x0004, kFxKeyframeStyle_Cubic = 0x0008, kFxKeyframeStyle_Bezier = 0x0010, kFxKeyframeStyle_EaseIn = 0x0080, kFxKeyframeStyle_EaseOut = 0x0100, kFxKeyframeStyle_BSpline = 0x0400, kFxKeyframeStyle_XSpline = 0x1000, kFxKeyframeStyle_Exponential= 0x2000, kFxKeyframeStyle_Logarithmic= 0x4000, kFxKeyframeStyle_Mixed = 0x80000000, kFxKeyframeStyle_All = 0x7fff, kFxKeyframeStyle_None = 0x0000 }; typedef NSUInteger FxKeyframeStyle;

    Константы

    • kFxKeyframeStyle_Constant

      kFxKeyframeStyle_Constant

      Также известный, как «Содержат», постоянные ключевые кадры имеют постоянное значение между ключевыми кадрами.

    • kFxKeyframeStyle_Linear

      kFxKeyframeStyle_Linear

      Значения интерполированы вдоль прямой линии между ключевыми кадрами.

    • kFxKeyframeStyle_Quadratic

      kFxKeyframeStyle_Quadratic

      Значения интерполированы вдоль квадратичной кривой.

    • kFxKeyframeStyle_Cubic

      kFxKeyframeStyle_Cubic

      Значения интерполированы вдоль кубической кривой.

    • kFxKeyframeStyle_Bezier

      kFxKeyframeStyle_Bezier

      Значения интерполированы вдоль кубической кривой, которой пользователь может управлять путем варьирования дескрипторов касательной.

    • kFxKeyframeStyle_EaseIn

      kFxKeyframeStyle_EaseIn

      Значения интерполированы вдоль предрасчетной кубической кривой что гладко переходы в следующее значение.

    • kFxKeyframeStyle_EaseOut

      kFxKeyframeStyle_EaseOut

      Значения интерполированы вдоль предрасчетной кубической кривой что гладко переходы из предыдущего значения.

    • kFxKeyframeStyle_BSpline

      kFxKeyframeStyle_BSpline

      Значения интерполированы вдоль B-сплайна.

    • kFxKeyframeStyle_XSpline

      kFxKeyframeStyle_XSpline

      Значения интерполированы вдоль взвешенного X-шлица.

    • kFxKeyframeStyle_Exponential

      kFxKeyframeStyle_Exponential

      Значения интерполированы вдоль экспоненты.

    • kFxKeyframeStyle_Logarithmic

      kFxKeyframeStyle_Logarithmic

      Значения интерполированы вдоль логарифмической кривой.

    • kFxKeyframeStyle_Mixed

      kFxKeyframeStyle_Mixed

      Ключевой кадр является смесью двух из вышеупомянутых типов.

    • kFxKeyframeStyle_All

      kFxKeyframeStyle_All

      Маска для всех типов.

    • kFxKeyframeStyle_None

      kFxKeyframeStyle_None

      Маска ни для каких типов.

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

  • Определяет, являются ли основы времени относительными или абсолютными.

    Объявление

    Objective C

    enum { kFxTimeBase_TIMELINE = 0, kFxTimeBase_CLIP = 1 }; typedef NSUInteger FxTimeBase;

    Константы

    • kFxTimeBase_TIMELINE

      kFxTimeBase_TIMELINE

      Времена являются абсолютными числами кадра, где 0 запуск временной шкалы.

    • kFxTimeBase_CLIP

      kFxTimeBase_CLIP

      Времена «относительны клипом», означая это 0 запуск клипа. Для генераторов и переходов, клип является самим эффектом. Для фильтров клип является видео элементом, к которому применяется фильтр.

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

  • Уникальный идентификатор для пути

    Объявление

    Objective C

    typedef void* FxPathID;

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

  • Введите определение, используемое для указания запроса рендеринга.

    Объявление

    Objective C

    typedef struct { double frame; FxQuality qualityLevel; FxFieldOrder fieldOrder; double scaleX; double scaleY; CGLContextObj sharedContext; FxDepth depth; } FxRenderInfo;

    Константы

    • frame

      frame

      Требуемое время, которое будет представлено, выраженное в числе кадра на проекте или временной шкале последовательности. Обратите внимание на то, что это - число кадра с плавающей точкой. В чересстрочном видео время для первого поля было бы целым числом i; для второго поля, не целое число (я + 0.5).

    • qualityLevel

      qualityLevel

      Требуемое качество рендеринга: kFxQuality_LOW, kFxQuality_MEDIUM, или kFxQuality_HIGH.

    • fieldOrder

      fieldOrder

      Полевой порядок кадра, который будет представлен. Значение будет kFxFieldOrder_PROGRESSIVE для рендеринга предварительных просмотров, и для прогрессивной видеозаписи., Когда плагин должен будет представить чередованную видеозапись, это будет постоянное значение для всех полей, которые Ваш плагин просят представить. Например, если плагин применяется к NTSC видеозапись DV, обычно этот тип видеозаписи имеет полевой порядок kFxFieldOrder_LOWER_FIRST. Когда спросили представлять поля, fieldOrder значение всегда будет kFxFieldOrder_LOWER_FIRST. При рендеринге миниатюр для списка слоев в Движении значение будет kFxFieldOrder_PROGRESSIVE). Для определения, какое поле плагин фактически просят представить, проверьте выходное изображение field метод. Это чередуется между kFxField_UPPER и kFxField_LOWER для чересстрочной видеозаписи при рендеринге полей. Перед FxPlug 1.2 это было FxField, не FxFieldOrder. Эти два двоичные совместимый, но плагины должны использовать FxFieldOrder ввести.

    • scaleX

      scaleX

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

    • scaleY

      scaleY

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

    • sharedContext

      sharedContext

      OpenGL совместно использовал контекст. Это может быть NULL при выполнении рендеринга программного обеспечения.

    • depth

      depth

      Пиксельная глубина буфера: kFxDepth_UINT8, kFxDepth_FLOAT16, или kFxDepth_FLOAT32.

    Обсуждение

    Попиксельная пропорция не принята во внимание когда scaleX и scaleY значения вычислены. Плагины должны смотреть на ввод и вывод FxImageInfo структура для определения попиксельных пропорций.

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

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

  • Константы раньше идентифицировали качество рендеринга.

    Объявление

    Objective C

    enum { kFxQuality_LOW = 0, kFxQuality_MEDIUM = 1, kFxQuality_HIGH = 2 }; typedef NSUInteger FxQuality;

    Константы

    • kFxQuality_LOW

      kFxQuality_LOW

      Самое низкое качество, самый быстрый рендеринг.

    • kFxQuality_MEDIUM

      kFxQuality_MEDIUM

      Среднее качество, самый медленный рендеринг.

    • kFxQuality_HIGH

      kFxQuality_HIGH

      Высококачественный, самый медленный рендеринг.

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