#include <ofxImageEffect.h>
This suite provides the functions needed by a plugin to defined and use an image effect plugin.
Public Attributes | |
OfxStatus(* | getPropertySet )(OfxImageEffectHandle imageEffect, OfxPropertySetHandle *propHandle) |
Retrieves the property set for the given image effect. | |
OfxStatus(* | getParamSet )(OfxImageEffectHandle imageEffect, OfxParamSetHandle *paramSet) |
Retrieves the parameter set for the given image effect. | |
OfxStatus(* | clipDefine )(OfxImageEffectHandle imageEffect, const char *name, OfxPropertySetHandle *propertySet) |
Define a clip to the effect. | |
OfxStatus(* | clipGetHandle )(OfxImageEffectHandle imageEffect, const char *name, OfxImageClipHandle *clip, OfxPropertySetHandle *propertySet) |
Get the propery handle of the named input clip in the given instance. | |
OfxStatus(* | clipGetPropertySet )(OfxImageClipHandle clip, OfxPropertySetHandle *propHandle) |
Retrieves the property set for a given clip. | |
OfxStatus(* | clipGetImage )(OfxImageClipHandle clip, OfxTime time, OfxRectD *region, OfxPropertySetHandle *imageHandle) |
Get a handle for an image in a clip at the indicated time and indicated region. | |
OfxStatus(* | clipReleaseImage )(OfxPropertySetHandle imageHandle) |
Releases the image handle previously returned by clipGetImage. | |
OfxStatus(* | clipGetRegionOfDefinition )(OfxImageClipHandle clip, OfxTime time, OfxRectD *bounds) |
Returns the spatial region of definition of the clip at the given time. | |
int(* | abort )(OfxImageEffectHandle imageEffect) |
Returns whether to abort processing or not. | |
OfxStatus(* | imageMemoryAlloc )(OfxImageEffectHandle instanceHandle, size_t nBytes, OfxImageMemoryHandle *memoryHandle) |
Allocate memory from the host's image memory pool. | |
OfxStatus(* | imageMemoryFree )(OfxImageMemoryHandle memoryHandle) |
Frees a memory handle and associated memory. | |
OfxStatus(* | imageMemoryLock )(OfxImageMemoryHandle memoryHandle, void **returnedPtr) |
Lock the memory associated with a memory handle and make it available for use. | |
OfxStatus(* | imageMemoryUnlock )(OfxImageMemoryHandle memoryHandle) |
Unlock allocated image data. |
OfxStatus(* OfxImageEffectSuiteV1::getPropertySet)(OfxImageEffectHandle imageEffect, OfxPropertySetHandle *propHandle) |
Retrieves the property set for the given image effect.
OfxStatus(* OfxImageEffectSuiteV1::getParamSet)(OfxImageEffectHandle imageEffect, OfxParamSetHandle *paramSet) |
Retrieves the parameter set for the given image effect.
OfxStatus(* OfxImageEffectSuiteV1::clipDefine)(OfxImageEffectHandle imageEffect, const char *name, OfxPropertySetHandle *propertySet) |
Define a clip to the effect.
OfxStatus(* OfxImageEffectSuiteV1::clipGetHandle)(OfxImageEffectHandle imageEffect, const char *name, OfxImageClipHandle *clip, OfxPropertySetHandle *propertySet) |
Get the propery handle of the named input clip in the given instance.
This return a clip handle for the given instance, note that this will not be the same as the clip handle returned by clipDefine and will be distanct to clip handles in any other instance of the plugin.
Not a valid call in any of the describe actions.
OfxStatus(* OfxImageEffectSuiteV1::clipGetPropertySet)(OfxImageClipHandle clip, OfxPropertySetHandle *propHandle) |
Retrieves the property set for a given clip.
OfxStatus(* OfxImageEffectSuiteV1::clipGetImage)(OfxImageClipHandle clip, OfxTime time, OfxRectD *region, OfxPropertySetHandle *imageHandle) |
Get a handle for an image in a clip at the indicated time and indicated region.
If the region parameter is not set to NULL, then it will be clipped to the clip's Region of Definition for the given time. The returned image will be at least as big as this region. If the region parameter is not set, then the region fetched will be at least the Region of Interest the effect has previously specified, clipped the clip's Region of Definition.
If clipGetImage is called twice with the same parameters, then two separate image handles will be returned, each of which must be release. The underlying implementation could share image data pointers and use reference counting to maintain them.
OfxStatus(* OfxImageEffectSuiteV1::clipReleaseImage)(OfxPropertySetHandle imageHandle) |
Releases the image handle previously returned by clipGetImage.
OfxStatus(* OfxImageEffectSuiteV1::clipGetRegionOfDefinition)(OfxImageClipHandle clip, OfxTime time, OfxRectD *bounds) |
Returns the spatial region of definition of the clip at the given time.
If the region parameter is not set to NULL, then it will be clipped to the clip's Region of Definition for the given time. The returned image will be at least as big as this region. If the region parameter is not set, then the region fetched will be at least the Region of Interest the effect has previously specified, clipped the clip's Region of Definition.
int(* OfxImageEffectSuiteV1::abort)(OfxImageEffectHandle imageEffect) |
Returns whether to abort processing or not.
This function indicates whether a plugin should stop whatever processing it is doing.
OfxStatus(* OfxImageEffectSuiteV1::imageMemoryAlloc)(OfxImageEffectHandle instanceHandle, size_t nBytes, OfxImageMemoryHandle *memoryHandle) |
Allocate memory from the host's image memory pool.
See ImageEffectsMemoryAllocation.
OfxStatus(* OfxImageEffectSuiteV1::imageMemoryFree)(OfxImageMemoryHandle memoryHandle) |
Frees a memory handle and associated memory.
If there are outstanding locks, these are ignored and the handle and memory are freed anyway.
See ImageEffectsMemoryAllocation.
OfxStatus(* OfxImageEffectSuiteV1::imageMemoryLock)(OfxImageMemoryHandle memoryHandle, void **returnedPtr) |
Lock the memory associated with a memory handle and make it available for use.
Note that memory locks and unlocks nest.
After the first lock call, the contents of the memory pointer to by returnedPtr is undefined. All subsequent calls to lock will return memory with the same contents as the previous call.
Also, if unlocked, then relocked, the memory associated with a memory handle may be at a different address.
See also OfxImageEffectSuiteV1::imageMemoryUnlock and ImageEffectsMemoryAllocation.
OfxStatus(* OfxImageEffectSuiteV1::imageMemoryUnlock)(OfxImageMemoryHandle memoryHandle) |
Unlock allocated image data.
Note that locks and unlocks nest, and to fully unlock memory you need to match the count of locks placed upon it.
Also note, if you unlock a completely unlocked handle, it has no effect (ie: the lock count can't be negative).
If unlocked, then relocked, the memory associated with a memory handle may be at a different address, however the contents will remain the same.
See also OfxImageEffectSuiteV1::imageMemoryLock and ImageEffectsMemoryAllocation.