FxHostResourcesAPI
FxHostResourcesAPI протокол определяет методы, которые хост-приложение реализует, чтобы выделить и отследить ресурсы.
Эти методы позволяют узлу выделять ресурсы, такие как память, текстуры OpenGL, и PBuffers, и позволяет хост-приложению порождать потоки для выполнения работы для плагина.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый не применимый
-
Выделяет блок RAM, возможно заполняя его указанным значением. (требуемый)
Объявление
Objective C
- (void*)allocateMemory:(size_t)numBytesclear:(BOOL)clearclearWith:(UInt8)fillByteerror:(NSError**)outErrorПараметры
numBytesЧисло байтов для выделения.
clearОчистить ли выделенные байты.
fillByteБайт, с которым можно очистить недавно выделенную память.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается.Возвращаемое значение
Указатель на недавно выделенный блок памяти, если это смогло успешно выделить его. В противном случае возвраты
NULLи наборыoutErrorпараметр кNSErrorэкземпляр, описывающий ошибку. -
Создает прослеженный узлом pBuffer для Вашего плагина для использования (требуемый)
Объявление
Objective C
- (void)createPBuffer:(GLuint*)pBufferIDwithTarget:(GLenum)targeterror:(NSError**)outErrorПараметры
pBufferIDПолучает ID недавно выделенного pBuffer.
targetУказывает целевую текстуру OpenGL.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается. -
createTexture:withDOD:GLTarget:level:internalFormat:width:height:border:format:type:pixels:origin:pixelAspectRatio:andError: - createTexture:withDOD:GLTarget:level:internalFormat:width:height:border:format:type:pixels:origin:pixelAspectRatio:andError:ТребуемыйВыделяет текстуру OpenGL с желаемыми характеристиками. (требуемый)
Объявление
Objective C
- (void)createTexture:(FxTexture**)texturewithDOD:(FxRect)dodGLTarget:(GLenum)targetlevel:(GLint)levelinternalFormat:(GLenum)internalFormatwidth:(GLsizei)widthheight:(GLsizei)heightborder:(GLint)borderformat:(GLenum)formattype:(GLenum)typepixels:(const GLvoid*)pixelsorigin:(FxImageOrigin)originpixelAspectRatio:(double)pixelAspectRatioandError:(NSError**)outErrorПараметры
textureСсылка параметром ссылки
FxTextureэкземпляр, чтобы быть p хост-приложением. Если метод успешно выполнится, то он укажет на допустимоеFxTextureэкземпляр.dodДомен определения изображения. Обычно это будет прямоугольником от
(0,0)к (width,height).targetЦелевая текстура OpenGL, такой как
GL_TEXTURE_RECTANGLE_EXT, илиGL_TEXTURE_2D.levelУровень детализации множественного отображения создаваемой текстуры. Используйте 0, если приложение не требует, множественно отображается.
internalFormatУказывает число компонентов цвета в изображении. Это должна быть одна из констант OpenGL для определения числа компонентов, такой как
AGL_RGBA.widthШирина, в пикселях, текстуры, которая будет создаваться.
heightВысота, в пикселях, текстуры, которая будет создаваться.
borderШирина текстуры граничит в пикселях. Может быть 0.
formatФормат пикселя OpenGL. Если Ваш внутренний формат был
GL_RGBA, эта константа говорит порядок каналов, такой какGL_RGBAилиGL_BGRA.typeOpenGL постоянное описание типа данных пиксельных данных. Это может быть одна из констант OpenGL, таких как:
GL_FLOAT,GL_UNSIGNED_INT_8_8_8_8, и т.д.pixelsУказатель на пиксельные данные в памяти.
originУказывает расположение источника данных изображения. Если данные изображения запустятся в нижнем левом углу, то параметр будет
kFxImageOrigin_BOTTOM_LEFT. Если данные изображения запустятся в верхнем левом углу, то параметр будетkFxImageOrigin_TOP_LEFT.pixelAspectRatioПопиксельная пропорция изображения.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается. -
Позволяет хост-приложению отслеживать память, которую оно не выделяло (требуемый)
Объявление
Objective C
- (void)trackExternalAllocation:(size_t)numBytesПараметры
numBytesЧисло байтов, выделенных внешне
Обсуждение
Если Вы выделили память, не используя
FxHostResourcesAPIпротокол этот метод сообщает хост-приложению.Это полезно при интеграции библиотеки, которая не может легко быть портирована для использования
FxHostResourcesAPIпротокол для выделения памяти.Аналогично, когда Вы свободная память, вызовите этот метод с отрицательной величиной, чтобы позволить хост-приложению знать, что плагин освободил память.
-
freeMemory:error: - freeMemory:error:ТребуемыйОсвобождает блок памяти, выделенной с-allocateMemory:clear:clearWith:error: (требуемый)
Объявление
Objective C
- (void)freeMemory:(void*)ptrerror:(NSError**)outErrorПараметры
ptrУказатель на память, которая будет освобождена.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается. -
deletePBuffer:error: - deletePBuffer:error:ТребуемыйУничтожает прослеженный узлом (требуемый) pBuffer
Объявление
Objective C
- (void)deletePBuffer:(GLuint)pBufferIDerror:(NSError**)outErrorПараметры
pBufferIDID буфера для удаления.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается. -
deleteTexture:error: - deleteTexture:error:ТребуемыйУдаляет текстуру, которую узел выделил для Вас (потребовал)
Параметры
textureТекстура для удаления.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается.
-
performSelector:onTarget:withObject:onThreads:waitUntilDone:error: - performSelector:onTarget:withObject:onThreads:waitUntilDone:error:ТребуемыйВыполняет метод на многократных потоках, возможно ожидая, пока он не завершается (требуемый)
Объявление
Параметры
selectorСелектор метода Вы хотите выполняемый на многократных потоках.
targetЦелевой объект.
objectОбъект Вы хотите выполнить селектор на.
numThreadsЧисло потоков Вы хотите выполнить селектор на.
waitДолжен ли метод ожидать, пока селектор не был выполнен на всех потоках перед продолжением.
outErrorПараметром ссылки, содержащий
NSErrorэкземпляр, если происходит ошибка. Если успешныйNULLвозвращается.
-
numberOfCores - numberOfCoresТребуемыйЧисло активных ядер (требуется)
Объявление
Objective C
- (NSUInteger)numberOfCoresВозвращаемое значение
Возвращает число ядер, которые машина может использовать во время обработки.
