Apple Developer Connection
Advanced Search
Member Login Log In | Not a Member? Contact ADC
ADC Home > Reference Library > Reference > Apple Applications > Final Cut Pro/Final Cut Express > FxPlug Reference

 


FxBaseEffect

Declared In:

Introduction

Specifies the methods that all plug-ins need to implement.



Methods

-addParameters
Adds all parameters to the host application that the plug-in requires to function properly.
-parameterChanged:
Reports on a change to a plug-in parameter value made by the end user. The plug-in can then set other parameter values based on this change.
-properties
Defines the plug-in's properties
-variesOverTime
Specifies whether a plug-in produces different images (animation) over time using the same set of parameters.

addParameters


Adds all parameters to the host application that the plug-in requires to function properly.

- (BOOL)addParameters; 
Return Value

Returns YES if all parameters are successfully added; NO otherwise.


parameterChanged:


Reports on a change to a plug-in parameter value made by the end user. The plug-in can then set other parameter values based on this change.

- (BOOL)parameterChanged:(UInt32)parmId; 
Parameters
parmId
Parameter id of the value that changed.
Return Value

Returns YES if all changes are successfully handled; NO otherwise.

Discussion

If you need to get the current time in this method (e.g. for getting or setting parameter values or flags), you can use the -currentTime method in the FxCustomParameterActionAPI (see FxCustomParameterUI.h).


NOTE: This method was omitted from the FxGenerator protocol in the FxPlug 1.0 SDK. In FxPlug 1.0 hosts, a generator will not receive this notification when a parameter value changes. To determine whether or not this method will be called for generators, use the FxHostCapabilities method -notifiesParameterChangedForGenerators.


properties


Defines the plug-in's properties

- (NSDictionary *)properties; 
Return Value

An NSDictionary defining the plug-in's properties.

Discussion

A host application will assume default values for any missing keys. The currently supported keys are:


- kFxPropertyKey_SupportsRowBytes ("SupportsRowBytes"): A Boolean NSNumber indicating whether or not this plug-in can support FxBitmaps with rowBytes != (width * depth / 8 * activeChannels).

- kFxPropertyKey_SupportsR408 ("SupportsR408"): A Boolean NSNumber indicating whether or not this plug-in supports the r408 pixel format.

- kFxPropertyKey_SupportsR4fl ("SupportsR4fl"): A Boolean NSNumber indicating whether or not this plug-in supports the r4fl pixel format.

- kFxPropertyKey_MayRemapTime ("MayRemapTime"): A Boolean NSNumber indicating whether or not this plug-in may try to sample its input image(s) at any time other than the output time.

- kFxPropertyKey_PreservesAlpha ("PreservesAlpha"): A Boolean NSNumber indicating whether or not this plug-in promises to leave the alpha channel values of its input image(s) untouched.

- kFxPropertyKey_PixelIndependent ("PixelIndependent"): A Boolean NSNumber indicating whether or not each pixel of this plug-in's output image depends only on the value of the corresponding pixel in the input image(s) and on no other pixels. This flag is used for performance optimization and for determining whether or not the plug-in can operate on single fields as well as complete interleaved frames.

- kFxPropertyKey_EquivalentSMPTEWipeCode ("EquivalentSMPTEWipeCode"): An integer NSNumber defining a fall-back SMPTE wipe code to be used for EDL creation.


variesOverTime


Specifies whether a plug-in produces different images (animation) over time using the same set of parameters.

- (BOOL)variesOverTime;
Return Value

Returns YES if the plug-in produces changing images without changing parameters; NO otherwise.

Discussion

This hint is used to determine whether a rendered output image with a particular set of parameter values can be cached and reused for other frames that have identical parameter values.




Did this document help you?
Yes: Tell us what works for you.

It’s good, but: Report typos, inaccuracies, and so forth.

It wasn’t helpful: Tell us what would have helped.
Last Updated: 2008-06-05