I have written a summary of the list of actions to send to the plugin to make a render. The optional actions are in comment.
Is this order exact ?
OfxPlugin::setHost
kOfxActionLoad
kOfxActionDescribe
kOfxActionCreateInstance
kOfxImageEffectActionDescribeInContext
// kOfxImageEffectActionGetRegionOfDefinition
// kOfxImageEffectActionGetRegionsOfInterest
// kOfxImageEffectActionGetFramesNeeded
// kOfxImageEffectActionGetClipPreferences
// kOfxImageEffectActionGetTimeDomain
//
// kOfxActionBeginInstanceEdit // when the param editor is open
// kOfxActionEndInstanceEdit // when the param editor is closed
//
//// When a param is modified (by user, plugin or the host)
// kOfxActionBeginInstanceChanged
// kOfxActionInstanceChanged
// kOfxActionEndInstanceChanged
//
// kOfxActionSyncPrivateData // before saving project for example
kOfxImageEffectActionIsIdentity
kOfxImageEffectActionBeginSequenceRender
kOfxImageEffectActionRender
kOfxImageEffectActionEndSequenceRender
// kOfxActionPurgeCaches
kOfxActionDestroyInstance
kOfxActionUnload
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
kOfxImageEffectActionDescribeInContext : "kOfxActionCreateInstance has NOT been called"...
Is this order exact ?
OfxPlugin::setHost
kOfxActionLoad
kOfxActionDescribe
kOfxImageEffectActionDescribeInContext
kOfxActionCreateInstance
// kOfxImageEffectActionGetRegionOfDefinition
// kOfxImageEffectActionGetRegionsOfInterest
// kOfxImageEffectActionGetFramesNeeded
// kOfxImageEffectActionGetClipPreferences
// kOfxImageEffectActionGetTimeDomain
//
// kOfxActionBeginInstanceEdit // when the param editor is open
// kOfxActionEndInstanceEdit // when the param editor is closed
//
//// When a param is modified (by user, plugin or the host)
// kOfxActionBeginInstanceChanged
// kOfxActionInstanceChanged
// kOfxActionEndInstanceChanged
//
// kOfxActionSyncPrivateData // before saving project for example
kOfxImageEffectActionIsIdentity
kOfxImageEffectActionBeginSequenceRender
kOfxImageEffectActionRender
kOfxImageEffectActionEndSequenceRender
// kOfxActionPurgeCaches
kOfxActionDestroyInstance
kOfxActionUnload
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
that's the right order and the comment is correct. Image effect plugins have a two level description process, the first level (kOfxActionDescribe) describes various aspects of the plugin that are independent of the way the effect is being uses, the second set of description, kOfxImageEffectActionDescribeInContext, is called for each context that the plugin says it can work in. For example a plugin might be both a filter and a generator and it would be asked to describe it self in each of those contexts.
bruno
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have written a summary of the list of actions to send to the plugin to make a render. The optional actions are in comment.
Is this order exact ?
OfxPlugin::setHost
kOfxActionLoad
kOfxActionDescribe
kOfxActionCreateInstance
kOfxImageEffectActionDescribeInContext
// kOfxImageEffectActionGetRegionOfDefinition
// kOfxImageEffectActionGetRegionsOfInterest
// kOfxImageEffectActionGetFramesNeeded
// kOfxImageEffectActionGetClipPreferences
// kOfxImageEffectActionGetTimeDomain
//
// kOfxActionBeginInstanceEdit // when the param editor is open
// kOfxActionEndInstanceEdit // when the param editor is closed
//
//// When a param is modified (by user, plugin or the host)
// kOfxActionBeginInstanceChanged
// kOfxActionInstanceChanged
// kOfxActionEndInstanceChanged
//
// kOfxActionSyncPrivateData // before saving project for example
kOfxImageEffectActionIsIdentity
kOfxImageEffectActionBeginSequenceRender
kOfxImageEffectActionRender
kOfxImageEffectActionEndSequenceRender
// kOfxActionPurgeCaches
kOfxActionDestroyInstance
kOfxActionUnload
kOfxImageEffectActionDescribeInContext : "kOfxActionCreateInstance has NOT been called"...
Is this order exact ?
OfxPlugin::setHost
kOfxActionLoad
kOfxActionDescribe
kOfxImageEffectActionDescribeInContext
kOfxActionCreateInstance
// kOfxImageEffectActionGetRegionOfDefinition
// kOfxImageEffectActionGetRegionsOfInterest
// kOfxImageEffectActionGetFramesNeeded
// kOfxImageEffectActionGetClipPreferences
// kOfxImageEffectActionGetTimeDomain
//
// kOfxActionBeginInstanceEdit // when the param editor is open
// kOfxActionEndInstanceEdit // when the param editor is closed
//
//// When a param is modified (by user, plugin or the host)
// kOfxActionBeginInstanceChanged
// kOfxActionInstanceChanged
// kOfxActionEndInstanceChanged
//
// kOfxActionSyncPrivateData // before saving project for example
kOfxImageEffectActionIsIdentity
kOfxImageEffectActionBeginSequenceRender
kOfxImageEffectActionRender
kOfxImageEffectActionEndSequenceRender
// kOfxActionPurgeCaches
kOfxActionDestroyInstance
kOfxActionUnload
Hi Fab,
that's the right order and the comment is correct. Image effect plugins have a two level description process, the first level (kOfxActionDescribe) describes various aspects of the plugin that are independent of the way the effect is being uses, the second set of description, kOfxImageEffectActionDescribeInContext, is called for each context that the plugin says it can work in. For example a plugin might be both a filter and a generator and it would be asked to describe it self in each of those contexts.
bruno