TuttleOFX
1
|
#include <OfxhImageEffectNode.hpp>
Public Types | |
typedef OfxhImageEffectNode | This |
typedef std::map < attribute::OfxhClipImage *, std::vector< OfxRangeD > > | ClipRangeMap |
a map used to specify needed frame ranges on set of clips | |
typedef std::set< OfxTime > | TimesSet |
typedef std::map< std::string, TimesSet > | ClipTimesSetMap |
Public Member Functions | |
OfxhImageEffectNode (const OfxhImageEffectPlugin &plugin, const OfxhImageEffectNodeDescriptor &other, const std::string &context, bool interactive) | |
constructor based on clip descriptor | |
OfxhImageEffectNode (const OfxhImageEffectNode &other) | |
virtual | ~OfxhImageEffectNode ()=0 |
void | copyAttributesValues (const OfxhImageEffectNode &other) |
bool | operator== (const This &) const |
bool | operator!= (const This &other) const |
virtual property::OfxhSet & | getParamSetProps () |
implemented for Param::SetInstance | |
virtual void | paramChanged (const attribute::OfxhParam ¶m, const attribute::EChange change) |
implemented for Param::SetInstance | |
const OfxhImageEffectNodeDescriptor & | getDescriptor () const |
get the descriptor for this instance | |
const tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin & | getPlugin () const |
return the plugin this instance was created with | |
const std::string & | getContext () const |
return the context this instance was created with | |
virtual const std::string & | getDefaultOutputFielding () const =0 |
const std::string & | getOutputFielding () const |
get output fielding as set in the clip preferences action. | |
const std::string & | getOutputPreMultiplication () const |
get output fielding as set in the clip preferences action. | |
double | getOutputFrameRate () const |
get the output frame rate, as set in the clip prefences action. | |
double | getOutputPixelAspectRatio () const |
bool | checkClipConnectionStatus () const |
are all the non optional clips connected | |
bool | continuousSamples () const |
bool | isFrameVarying () const |
virtual int | abort ()=0 |
override this to make processing abort, return 1 to abort processing | |
virtual OfxhMemory * | newMemoryInstance (size_t nBytes)=0 |
override this to use your own memory instance - must inherrit from OfxhMemory | |
OfxhMemory * | imageMemoryAlloc (size_t nBytes) |
size_t | upperGetDimension (const std::string &name) |
virtual void | notify (const std::string &name, bool singleValue, int indexOrN) OFX_EXCEPTION_SPEC |
overridden from Property::Notify | |
virtual double | getDoubleProperty (const std::string &name, int index) const OFX_EXCEPTION_SPEC |
overridden from gethook, get the virtuals for viewport size, pixel scale, background colour | |
virtual void | getDoublePropertyN (const std::string &name, double *values, int count) const OFX_EXCEPTION_SPEC |
overridden from gethook, get the virtuals for viewport size, pixel scale, background colour | |
virtual void | reset (const std::string &name) OFX_EXCEPTION_SPEC |
overridden from gethook, don't know what to do | |
virtual size_t | getDimension (const std::string &name) const OFX_EXCEPTION_SPEC |
override this to fetch the dimension size. | |
virtual void | getProjectSize (double &xSize, double &ySize) const =0 |
virtual void | getProjectOffset (double &xOffset, double &yOffset) const =0 |
virtual void | getProjectExtent (double &xSize, double &ySize) const =0 |
virtual double | getProjectPixelAspectRatio () const =0 |
virtual double | getEffectDuration () const =0 |
virtual double | getFrameRecursive () const =0 |
virtual void | getRenderScaleRecursive (double &x, double &y) const =0 |
virtual bool | isChromaticComponent (const std::string &str) const |
virtual void | createInstanceAction () OFX_EXCEPTION_SPEC |
virtual void | beginInstanceChangedAction (const std::string &why) OFX_EXCEPTION_SPEC |
virtual void | paramInstanceChangedAction (const std::string ¶mName, const std::string &why, OfxTime time, OfxPointD renderScale) OFX_EXCEPTION_SPEC |
virtual void | clipInstanceChangedAction (const std::string &clipName, const std::string &why, OfxTime time, OfxPointD renderScale) OFX_EXCEPTION_SPEC |
virtual void | endInstanceChangedAction (const std::string &why) OFX_EXCEPTION_SPEC |
virtual void | purgeCachesAction () OFX_EXCEPTION_SPEC |
virtual void | syncPrivateDataAction () OFX_EXCEPTION_SPEC |
virtual void | beginInstanceEditAction () OFX_EXCEPTION_SPEC |
virtual void | endInstanceEditAction () OFX_EXCEPTION_SPEC |
virtual void | beginSequenceRenderAction (OfxTime startFrame, OfxTime endFrame, double step, bool interactive, OfxPointD renderScale) OFX_EXCEPTION_SPEC |
virtual void | renderAction (OfxTime time, const std::string &field, const OfxRectI &renderWindow, OfxPointD renderScale) OFX_EXCEPTION_SPEC |
virtual void | endSequenceRenderAction (OfxTime startFrame, OfxTime endFrame, double step, bool interactive, OfxPointD renderScale) OFX_EXCEPTION_SPEC |
virtual void | getRegionOfDefinitionAction (OfxTime time, OfxPointD renderScale, OfxRectD &rod) const OFX_EXCEPTION_SPEC |
virtual void | getRegionOfInterestAction (OfxTime time, OfxPointD renderScale, const OfxRectD &roi, std::map< attribute::OfxhClipImage *, OfxRectD > &rois) const OFX_EXCEPTION_SPEC |
virtual void | getFramesNeededAction (OfxTime time, ClipRangeMap &rangeMap) const OFX_EXCEPTION_SPEC |
ClipTimesSetMap | getFramesNeeded (const OfxTime time) const |
virtual bool | isIdentityAction (OfxTime &time, const std::string &field, const OfxRectI &renderWindow, OfxPointD renderScale, std::string &clip) const OFX_EXCEPTION_SPEC |
virtual bool | getTimeDomainAction (OfxRangeD &range) const OFX_EXCEPTION_SPEC |
void | initOverlayDescriptor (int bitDepthPerComponent=8, bool hasAlpha=false) |
const interact::OfxhInteractDescriptor & | getOverlayDescriptor () const |
virtual void | getClipPreferencesAction () OFX_EXCEPTION_SPEC |
bool | runGetClipPrefsConditionally () |
Protected Member Functions | |
void | initHook () |
void | populate () |
void | populateParams (const imageEffect::OfxhImageEffectNodeDescriptor &descriptor) |
virtual void | vmessage (const char *type, const char *id, const char *format, va_list args) const OFX_EXCEPTION_SPEC=0 |
make a clip | |
virtual OfxStatus | mainEntry (const char *action, const void *handle, property::OfxhSet *inArgs, property::OfxhSet *outArgs) const |
call the effect entry point | |
virtual bool | canCurrentlyHandleMultipleClipDepths () const |
OfxRectD | computeClipRodUnionAtTimes (const attribute::OfxhClipImage &clip, const TimesSet ×Set) const |
virtual OfxRectD | calcDefaultRegionOfDefinition (OfxTime time, OfxPointD renderScale) const |
calculate the default rod for this effect instance | |
virtual void | setCustomInArgs (const std::string &action, property::OfxhSet &inArgs) const |
this is used to populate with any extra action in arguments that may be needed | |
virtual void | setCustomOutArgs (const std::string &action, property::OfxhSet &outArgs) const |
this is used to populate with any extra action out arguments that may be needed | |
virtual void | examineOutArgs (const std::string &action, OfxStatus stat, const property::OfxhSet &outArgs) const |
this is used retrieve any out args after the action was called in mainEntry | |
virtual ofx::attribute::OfxhParam * | newParam (const ofx::attribute::OfxhParamDescriptor &Descriptor)=0 |
virtual const std::string & | bestSupportedBitDepth (const std::string &depth) const |
virtual const std::string & | findMostChromaticComponents (const std::string &a, const std::string &b) const |
bool | isSupportedBitDepth (const std::string &depth) const |
Protected Attributes | |
const OfxhImageEffectPlugin & | _plugin |
std::string | _context |
const OfxhImageEffectNodeDescriptor & | _descriptor |
bool | _interactive |
bool | _created |
bool | _continuousSamples |
set by clip prefs | |
bool | _frameVarying |
set by clip prefs | |
std::string | _outputPreMultiplication |
set by clip prefs | |
std::string | _outputFielding |
set by clip prefs | |
double | _outputFrameRate |
set by clip prefs | |
Private Member Functions | |
attribute::OfxhClipImage & | getOutputOfxhClip () |
const attribute::OfxhClipImage & | getOutputOfxhClip () const |
virtual void | setDefaultClipPreferences () |
Setup the default clip preferences on the clips. | |
virtual void | setupClipInstancePreferences (property::OfxhSet &outArgs) |
Setup the default host clip instance members data retrieved from the plugin instance. | |
virtual void | setupClipPreferencesArgs (property::OfxhSet &outArgs, std::list< std::string > &outKeepPropNamesOwnership) |
bool | isLeafNode () const |
Check if the node is a leaf in the graph. If there is no input clip connected. | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Friends | |
class | boost::serialization::access |
an image effect plugin instance.
Client code needs to filling the pure virtuals in this.
Definition at line 62 of file OfxhImageEffectNode.hpp.
typedef std::map<attribute::OfxhClipImage*, std::vector<OfxRangeD> > tuttle::host::ofx::imageEffect::OfxhImageEffectNode::ClipRangeMap |
a map used to specify needed frame ranges on set of clips
Definition at line 74 of file OfxhImageEffectNode.hpp.
typedef std::map<std::string, TimesSet > tuttle::host::ofx::imageEffect::OfxhImageEffectNode::ClipTimesSetMap |
Definition at line 76 of file OfxhImageEffectNode.hpp.
Reimplemented from tuttle::host::ofx::attribute::OfxhClipImageSet.
Reimplemented in tuttle::host::ImageEffectNode.
Definition at line 72 of file OfxhImageEffectNode.hpp.
typedef std::set<OfxTime> tuttle::host::ofx::imageEffect::OfxhImageEffectNode::TimesSet |
Definition at line 75 of file OfxhImageEffectNode.hpp.
tuttle::host::ofx::imageEffect::OfxhImageEffectNode::OfxhImageEffectNode | ( | const OfxhImageEffectPlugin & | plugin, |
const OfxhImageEffectNodeDescriptor & | other, | ||
const std::string & | context, | ||
bool | interactive | ||
) |
constructor based on clip descriptor
Definition at line 78 of file OfxhImageEffectNode.cpp.
References _plugin, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::_properties, tuttle::host::ofx::property::OfxhSet::getIntProperty(), tuttle::host::ofx::OfxhPluginLoadGuard::getOfxPlugin(), tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::getPluginLoadGuardPtr(), tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getProperties(), initHook(), tuttle::host::ofx::property::OfxhSet::setChainedSet(), tuttle::host::ofx::property::OfxhSet::setIntProperty(), tuttle::host::ofx::property::OfxhSet::setPointerProperty(), and tuttle::host::ofx::property::OfxhSet::setStringProperty().
tuttle::host::ofx::imageEffect::OfxhImageEffectNode::OfxhImageEffectNode | ( | const OfxhImageEffectNode & | other | ) |
Definition at line 132 of file OfxhImageEffectNode.cpp.
References _descriptor, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::_properties, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getProperties(), initHook(), and tuttle::host::ofx::property::OfxhSet::setChainedSet().
tuttle::host::ofx::imageEffect::OfxhImageEffectNode::~OfxhImageEffectNode | ( | ) | [pure virtual] |
Definition at line 346 of file OfxhImageEffectNode.cpp.
References _created, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), mainEntry(), tuttle::ofx::mapStatusToString(), and TUTTLE_LOG_TRACE.
virtual int tuttle::host::ofx::imageEffect::OfxhImageEffectNode::abort | ( | ) | [pure virtual] |
override this to make processing abort, return 1 to abort processing
Implemented in tuttle::host::ImageEffectNode.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::beginInstanceChangedAction | ( | const std::string & | why | ) | [virtual] |
begin/change/end instance changed
Definition at line 479 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeString.
Referenced by paramChanged().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::beginInstanceEditAction | ( | ) | [virtual] |
end edit instance
Definition at line 605 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), and mainEntry().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::beginSequenceRenderAction | ( | OfxTime | startFrame, |
OfxTime | endFrame, | ||
double | step, | ||
bool | interactive, | ||
OfxPointD | renderScale | ||
) | [virtual] |
Reimplemented in tuttle::host::ImageEffectNode.
Definition at line 624 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeInt, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), tuttle::host::ofx::property::OfxhSet::setDoublePropertyN(), and tuttle::host::ofx::property::OfxhSet::setIntProperty().
const std::string & tuttle::host::ofx::imageEffect::OfxhImageEffectNode::bestSupportedBitDepth | ( | const std::string & | depth | ) | const [protected, virtual] |
find the best supported bit depth for the given one. Override this if you define more depths
given the bit depth, find the best match for it.
Something wrong here
Definition at line 1496 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::isBitDepthSupported().
Referenced by tuttle::host::ImageEffectNode::maximizeBitDepthFromReadsToWrites(), and setDefaultClipPreferences().
OfxRectD tuttle::host::ofx::imageEffect::OfxhImageEffectNode::calcDefaultRegionOfDefinition | ( | OfxTime | time, |
OfxPointD | renderScale | ||
) | const [protected, virtual] |
calculate the default rod for this effect instance
Definition at line 737 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages, _context, computeClipRodUnionAtTimes(), tuttle::host::ofx::attribute::OfxhClipImage::fetchRegionOfDefinition(), tuttle::host::ofx::attribute::OfxhClipImageSet::getClip(), getFramesNeeded(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::getName(), tuttle::host::ofx::attribute::OfxhParamSet::getParam(), getPlugin(), getProjectExtent(), tuttle::host::ofx::attribute::OfxhClipAccessor::isConnected(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::isOutput(), and tuttle::ofx::rectUnion().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::canCurrentlyHandleMultipleClipDepths | ( | ) | const [protected, virtual] |
function to check for multiple bit depth support The answer will depend on host, plugin and context
does the host support 'em
does the plug-in support 'em
no support, so no
Definition at line 1197 of file OfxhImageEffectNode.cpp.
References _context, tuttle::host::core(), tuttle::host::Core::getHost(), tuttle::host::ofx::property::OfxhSet::getIntProperty(), tuttle::host::ofx::OfxhHost::getProperties(), and tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::supportsMultipleClipDepths().
Referenced by setDefaultClipPreferences(), and setupClipPreferencesArgs().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::checkClipConnectionStatus | ( | ) | const |
are all the non optional clips connected
check for connection
Definition at line 378 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::clipInstanceChangedAction | ( | const std::string & | clipName, |
const std::string & | why, | ||
OfxTime | time, | ||
OfxPointD | renderScale | ||
) | [virtual] |
Definition at line 534 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeString, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), and tuttle::host::ofx::property::OfxhSet::setDoublePropertyN().
OfxRectD tuttle::host::ofx::imageEffect::OfxhImageEffectNode::computeClipRodUnionAtTimes | ( | const attribute::OfxhClipImage & | clip, |
const TimesSet & | timesSet | ||
) | const [protected] |
Definition at line 713 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImage::fetchRegionOfDefinition(), and tuttle::ofx::rectUnion().
Referenced by calcDefaultRegionOfDefinition().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::continuousSamples | ( | ) | const [inline] |
can this this instance render images at arbitrary times, not just frame boundaries set by getClipPreferenceAction()
Definition at line 167 of file OfxhImageEffectNode.hpp.
References _continuousSamples.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::copyAttributesValues | ( | const OfxhImageEffectNode & | other | ) | [inline] |
Definition at line 118 of file OfxhImageEffectNode.hpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::copyClipsValues(), and tuttle::host::ofx::attribute::OfxhParamSet::copyParamsValues().
Referenced by tuttle::host::ImageEffectNode::ImageEffectNode().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::createInstanceAction | ( | ) | [virtual] |
create an instance. This needs to be called _after_ construction and _after_ the host populates it's params and clips with the 'correct' values (either persisted ones or the defaults)
create a clip instance
we need to init the clips before we call create instance incase they try and fetch something in create instance, which they are allowed
Definition at line 461 of file OfxhImageEffectNode.cpp.
References _created, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getName(), mainEntry(), and setDefaultClipPreferences().
Referenced by tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::createInstance(), and tuttle::host::ImageEffectNode::ImageEffectNode().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::endInstanceChangedAction | ( | const std::string & | why | ) | [virtual] |
Definition at line 565 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeString.
Referenced by paramChanged().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::endInstanceEditAction | ( | ) | [virtual] |
end edit instance
Definition at line 616 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), and mainEntry().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::endSequenceRenderAction | ( | OfxTime | startFrame, |
OfxTime | endFrame, | ||
double | step, | ||
bool | interactive, | ||
OfxPointD | renderScale | ||
) | [virtual] |
Definition at line 684 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeInt, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), tuttle::host::ofx::property::OfxhSet::setDoublePropertyN(), and tuttle::host::ofx::property::OfxhSet::setIntProperty().
Referenced by tuttle::host::ImageEffectNode::endSequence().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::examineOutArgs | ( | const std::string & | action, |
OfxStatus | stat, | ||
const property::OfxhSet & | outArgs | ||
) | const [protected, virtual] |
this is used retrieve any out args after the action was called in mainEntry
this is used to populate with any extra action out arguments that may be needed
Definition at line 373 of file OfxhImageEffectNode.cpp.
Referenced by mainEntry().
const std::string & tuttle::host::ofx::imageEffect::OfxhImageEffectNode::findMostChromaticComponents | ( | const std::string & | a, |
const std::string & | b | ||
) | const [protected, virtual] |
find the most chromatic components out of the two. Override this if you define more chromatic components
Definition at line 1478 of file OfxhImageEffectNode.cpp.
Referenced by tuttle::host::ImageEffectNode::initComponents(), and setDefaultClipPreferences().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getClipPreferencesAction | ( | ) | [virtual] |
Run the clip preferences action from the effect.
This will look into the input clips and output clip and set the following properties that the effect should fetch the image at.
This will be run automatically by the effect in the following situations...
The host still needs to call this explicitly just after the effect is wired up.
the idea here is the clip prefs live as active props on the effect and are set up by clip preferences. The action manages the clip preferences bits. We also monitor clip and param changes and flag when clip prefs is dirty. call the clip preferences action
create the out args with the stuff that does not depend on individual clips
Definition at line 1448 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipPrefsDirty, tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), mainEntry(), setupClipInstancePreferences(), and setupClipPreferencesArgs().
Referenced by runGetClipPrefsConditionally(), and tuttle::host::ImageEffectNode::setup1().
const std::string& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getContext | ( | ) | const [inline] |
return the context this instance was created with
Definition at line 140 of file OfxhImageEffectNode.hpp.
References _context.
Referenced by tuttle::host::Graph::getNodesByContext(), and tuttle::host::ImageEffectNode::progressStart().
virtual const std::string& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getDefaultOutputFielding | ( | ) | const [pure virtual] |
get default output fielding. This is passed into the clip prefs action and might be mapped (if the host allows such a thing)
Implemented in tuttle::host::ImageEffectNode.
Referenced by setDefaultClipPreferences().
const OfxhImageEffectNodeDescriptor& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getDescriptor | ( | ) | const [inline] |
get the descriptor for this instance
Definition at line 134 of file OfxhImageEffectNode.hpp.
References _descriptor.
Referenced by tuttle::host::ImageEffectNode::getVersion().
size_t tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getDimension | ( | const std::string & | name | ) | const [virtual] |
override this to fetch the dimension size.
Reimplemented from tuttle::host::ofx::property::OfxhGetHook.
Definition at line 227 of file OfxhImageEffectNode.cpp.
References TUTTLE_LOG_ERROR.
double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getDoubleProperty | ( | const std::string & | name, |
int | index | ||
) | const [virtual] |
overridden from gethook, get the virtuals for viewport size, pixel scale, background colour
get the virtuals for viewport size, pixel scale, background colour
Reimplemented from tuttle::host::ofx::property::OfxhGetHook.
Definition at line 256 of file OfxhImageEffectNode.cpp.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getDoublePropertyN | ( | const std::string & | name, |
double * | values, | ||
int | count | ||
) | const [virtual] |
overridden from gethook, get the virtuals for viewport size, pixel scale, background colour
Reimplemented from tuttle::host::ofx::property::OfxhGetHook.
Definition at line 304 of file OfxhImageEffectNode.cpp.
virtual double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getEffectDuration | ( | ) | const [pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
virtual double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getFrameRecursive | ( | ) | const [pure virtual] |
This is called whenever a param is changed by the plugin so that the recursive instanceChangedAction will be fed the correct frame
Implemented in tuttle::host::ImageEffectNode.
Referenced by paramChanged().
OfxhImageEffectNode::ClipTimesSetMap tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getFramesNeeded | ( | const OfxTime | time | ) | const |
Definition at line 1102 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipsByOrder, tuttle::host::ofx::property::OfxhSet::fetchIntProperty(), getFramesNeededAction(), and tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getProperties().
Referenced by calcDefaultRegionOfDefinition(), and tuttle::host::ImageEffectNode::getTimesNeeded().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getFramesNeededAction | ( | OfxTime | time, |
ClipRangeMap & | rangeMap | ||
) | const [virtual] |
see how many frames are needed from each clip to render the indicated frame
intialise it to the current frame
Definition at line 1009 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::OfxhSet::createProperty(), tuttle::host::ofx::property::OfxhPropSpec::defaultValue, tuttle::host::ofx::property::OfxhPropSpec::dimension, tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::OfxhSet::getDimension(), tuttle::host::ofx::property::OfxhSet::getDoubleProperty(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::isOutput(), tuttle::max(), tuttle::min(), tuttle::host::ofx::property::OfxhPropSpec::name, tuttle::host::ofx::property::OfxhPropSpec::readonly, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), and tuttle::host::ofx::property::OfxhPropSpec::type.
Referenced by getFramesNeeded().
const std::string& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputFielding | ( | ) | const [inline] |
get output fielding as set in the clip preferences action.
Definition at line 152 of file OfxhImageEffectNode.hpp.
References _outputFielding.
double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputFrameRate | ( | ) | const [inline] |
get the output frame rate, as set in the clip prefences action.
Definition at line 158 of file OfxhImageEffectNode.hpp.
References _outputFrameRate.
Referenced by tuttle::host::attribute::ClipImage::getUnmappedFrameRate(), and tuttle::host::ImageEffectNode::initFps().
attribute::OfxhClipImage& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputOfxhClip | ( | ) | [inline, private] |
Definition at line 114 of file OfxhImageEffectNode.hpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::getClip().
Referenced by getOutputPixelAspectRatio(), and setDefaultClipPreferences().
const attribute::OfxhClipImage& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputOfxhClip | ( | ) | const [inline, private] |
Definition at line 115 of file OfxhImageEffectNode.hpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::getClip().
double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputPixelAspectRatio | ( | ) | const [inline] |
Definition at line 160 of file OfxhImageEffectNode.hpp.
References getOutputOfxhClip(), and tuttle::host::ofx::attribute::OfxhClipImage::getPixelAspectRatio().
Referenced by tuttle::host::ImageEffectNode::initPixelAspectRatio().
const std::string& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOutputPreMultiplication | ( | ) | const [inline] |
get output fielding as set in the clip preferences action.
Definition at line 155 of file OfxhImageEffectNode.hpp.
References _outputPreMultiplication.
const interact::OfxhInteractDescriptor& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getOverlayDescriptor | ( | ) | const [inline] |
Definition at line 400 of file OfxhImageEffectNode.hpp.
References _descriptor, and tuttle::host::ofx::imageEffect::OfxhImageEffectNodeDescriptor::getOverlayDescriptor().
property::OfxhSet & tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getParamSetProps | ( | ) | [virtual] |
implemented for Param::SetInstance
implemented for Param::SetDescriptor
Implements tuttle::host::ofx::attribute::OfxhParamSetAccessor.
Definition at line 221 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::_properties.
const tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getPlugin | ( | ) | const [inline] |
return the plugin this instance was created with
Definition at line 137 of file OfxhImageEffectNode.hpp.
References _plugin.
Referenced by calcDefaultRegionOfDefinition(), tuttle::host::ImageEffectNode::getLocalHashAtTime(), tuttle::host::Graph::getNodesByPlugin(), tuttle::host::ImageEffectNode::getVersion(), tuttle::host::ImageEffectNode::process(), and tuttle::host::ImageEffectNode::validInputClipsConnections().
virtual void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getProjectExtent | ( | double & | xSize, |
double & | ySize | ||
) | const [pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
Referenced by calcDefaultRegionOfDefinition().
virtual void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getProjectOffset | ( | double & | xOffset, |
double & | yOffset | ||
) | const [pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
virtual double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getProjectPixelAspectRatio | ( | ) | const [pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
virtual void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getProjectSize | ( | double & | xSize, |
double & | ySize | ||
) | const [pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getRegionOfDefinitionAction | ( | OfxTime | time, |
OfxPointD | renderScale, | ||
OfxRectD & | rod | ||
) | const [virtual] |
Call the region of definition action the plugin at the given time and with the given render scales. The value is returned in rod. Note that if the plugin does not trap the action the default RoD is calculated and returned.
RoD call
Definition at line 836 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::OfxhSet::getDoublePropertyN(), tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), and tuttle::host::ofx::property::OfxhSet::setDoublePropertyN().
Referenced by tuttle::host::ImageEffectNode::preProcess1().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getRegionOfInterestAction | ( | OfxTime | time, |
OfxPointD | renderScale, | ||
const OfxRectD & | roi, | ||
std::map< attribute::OfxhClipImage *, OfxRectD > & | rois | ||
) | const [virtual] |
call the get region of interest action on the plugin for the given frame and renderscale. The render RoI is passed in in roi, the std::map will contain the requested rois. Note That this call will check for tiling support and for default replies and set up the correct rois in these cases as well
get the region of interest for each input and return it in the given std::map
No tiling support on the effect at all. So set the roi of each input clip to be the RoD of that clip.
set up the in args
initialise to the default
call the action
set the thing up
not supporting tiles on this input, so set it to the rod
Definition at line 885 of file OfxhImageEffectNode.cpp.
References tuttle::ofx::clamp(), tuttle::host::ofx::property::OfxhSet::createProperty(), tuttle::host::ofx::property::OfxhPropSpec::defaultValue, tuttle::host::ofx::property::OfxhPropSpec::dimension, tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::OfxhSet::getDoubleProperty(), tuttle::host::ofx::property::OfxhPropSpec::name, tuttle::host::ofx::property::OfxhPropSpec::readonly, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), tuttle::host::ofx::property::OfxhSet::setDoublePropertyN(), and tuttle::host::ofx::property::OfxhPropSpec::type.
Referenced by tuttle::host::ImageEffectNode::preProcess2_reverse().
virtual void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getRenderScaleRecursive | ( | double & | x, |
double & | y | ||
) | const [pure virtual] |
This is called whenever a param is changed by the plugin so that the recursive instanceChangedAction will be fed the correct renderScale
Implemented in tuttle::host::ImageEffectNode.
Referenced by paramChanged().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::getTimeDomainAction | ( | OfxRangeD & | range | ) | const [virtual] |
Definition at line 1537 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::OfxhSet::getDoubleProperty(), and tuttle::host::ofx::property::OfxhSet::setDoubleProperty().
Referenced by tuttle::host::ImageEffectNode::computeTimeDomain().
OfxhMemory * tuttle::host::ofx::imageEffect::OfxhImageEffectNode::imageMemoryAlloc | ( | size_t | nBytes | ) |
override this to make processing abort, return 1 to abort processing
int OfxhImageEffectNode::abort() { return 0; } override this to use your own memory instance - must inherrit from memory::instance
OfxhMemory* OfxhImageEffectNode::newMemoryInstance( size_t nBytes ) { OfxhMemory* instance = new OfxhMemory(); instance->alloc( nBytes ); return instance; }
Definition at line 414 of file OfxhImageEffectNode.cpp.
References newMemoryInstance().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::initHook | ( | ) | [protected] |
Definition at line 106 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::_properties, tuttle::host::ofx::imageEffect::effectInstanceStuff, tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::OfxhPropSpec::name, tuttle::host::ofx::property::OfxhSet::setGetHook(), and tuttle::host::ofx::property::OfxhPropSpec::type.
Referenced by OfxhImageEffectNode().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::initOverlayDescriptor | ( | int | bitDepthPerComponent = 8 , |
bool | hasAlpha = false |
||
) | [inline] |
Get the interact description, this will also call describe on the interact This will return NULL if there is not main entry point or if the description failed otherwise it will return the described overlay This is called by the CTOR of OverlayInteract to get the descriptor to do things with
Definition at line 394 of file OfxhImageEffectNode.hpp.
References _descriptor.
Referenced by tuttle::host::OverlayInteract::OverlayInteract().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::isChromaticComponent | ( | const std::string & | str | ) | const [virtual] |
Get whether the component is a supported 'chromatic' component (RGBA or alpha) in the base API. Override this if you have extended your chromatic colour types (eg RGB) and want the clip preferences logic to still work
Definition at line 1182 of file OfxhImageEffectNode.cpp.
Referenced by setDefaultClipPreferences().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::isFrameVarying | ( | ) | const [inline] |
does this instance generate a different picture on a frame change, even if the params and input images are exactly the same. eg: random noise generator
Definition at line 171 of file OfxhImageEffectNode.hpp.
References _frameVarying.
Referenced by tuttle::host::ImageEffectNode::getLocalHashAtTime().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::isIdentityAction | ( | OfxTime & | time, |
const std::string & | field, | ||
const OfxRectI & | renderWindow, | ||
OfxPointD | renderScale, | ||
std::string & | clip | ||
) | const [virtual] |
Definition at line 1131 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeInt, tuttle::host::ofx::property::ePropTypeString, tuttle::host::ofx::property::OfxhSet::getDoubleProperty(), tuttle::host::ofx::property::OfxhSet::getStringProperty(), tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), tuttle::host::ofx::property::OfxhSet::setDoublePropertyN(), tuttle::host::ofx::property::OfxhSet::setIntPropertyN(), and tuttle::host::ofx::property::OfxhSet::setStringProperty().
Referenced by tuttle::host::ImageEffectNode::isIdentity().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::isLeafNode | ( | ) | const [private] |
Check if the node is a leaf in the graph. If there is no input clip connected.
Definition at line 1384 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages, tuttle::host::ofx::attribute::OfxhClipAccessor::isConnected(), and tuttle::host::ofx::attribute::OfxhAttributeAccessor::isOutput().
Referenced by setupClipInstancePreferences().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::isSupportedBitDepth | ( | const std::string & | depth | ) | const [inline, protected] |
is the given bit depth supported
Definition at line 476 of file OfxhImageEffectNode.hpp.
References tuttle::host::ofx::property::OfxhSet::findStringPropValueIndex(), and tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getProperties().
Referenced by tuttle::host::ImageEffectNode::maximizeBitDepthFromReadsToWrites(), and tuttle::host::ImageEffectNode::maximizeBitDepthFromWritesToReads().
OfxStatus tuttle::host::ofx::imageEffect::OfxhImageEffectNode::mainEntry | ( | const char * | action, |
const void * | handle, | ||
property::OfxhSet * | inArgs, | ||
property::OfxhSet * | outArgs | ||
) | const [protected, virtual] |
call the effect entry point
Definition at line 422 of file OfxhImageEffectNode.cpp.
References _plugin, examineOutArgs(), tuttle::host::ofx::property::OfxhSet::getHandle(), tuttle::host::ofx::OfxhPluginLoadGuard::getOfxPlugin(), tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::getPluginLoadGuardPtr(), setCustomInArgs(), and setCustomOutArgs().
Referenced by beginInstanceEditAction(), createInstanceAction(), endInstanceEditAction(), getClipPreferencesAction(), purgeCachesAction(), syncPrivateDataAction(), and ~OfxhImageEffectNode().
virtual OfxhMemory* tuttle::host::ofx::imageEffect::OfxhImageEffectNode::newMemoryInstance | ( | size_t | nBytes | ) | [pure virtual] |
override this to use your own memory instance - must inherrit from OfxhMemory
Implemented in tuttle::host::ImageEffectNode.
Referenced by imageMemoryAlloc().
virtual ofx::attribute::OfxhParam* tuttle::host::ofx::imageEffect::OfxhImageEffectNode::newParam | ( | const ofx::attribute::OfxhParamDescriptor & | Descriptor | ) | [protected, pure virtual] |
Implemented in tuttle::host::ImageEffectNode.
Referenced by populateParams().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::notify | ( | const std::string & | name, |
bool | singleValue, | ||
int | indexOrN | ||
) | [virtual] |
overridden from Property::Notify
Implements tuttle::host::ofx::property::OfxhNotifyHook.
Definition at line 239 of file OfxhImageEffectNode.cpp.
References TUTTLE_LOG_ERROR.
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::operator!= | ( | const This & | other | ) | const [inline] |
Reimplemented from tuttle::host::ofx::attribute::OfxhClipImageSet.
Definition at line 125 of file OfxhImageEffectNode.hpp.
References operator==().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::operator== | ( | const This & | ) | const |
Reimplemented from tuttle::host::ofx::attribute::OfxhClipImageSet.
Referenced by operator!=().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::paramChanged | ( | const attribute::OfxhParam & | param, |
const attribute::EChange | change | ||
) | [virtual] |
implemented for Param::SetInstance
Implements tuttle::host::ofx::attribute::OfxhParamSet.
Definition at line 1568 of file OfxhImageEffectNode.cpp.
References beginInstanceChangedAction(), tuttle::host::ofx::attribute::eChangeNone, endInstanceChangedAction(), getFrameRecursive(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::getName(), getRenderScaleRecursive(), tuttle::host::ofx::attribute::mapChangeEnumToString(), and paramInstanceChangedAction().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::paramInstanceChangedAction | ( | const std::string & | paramName, |
const std::string & | why, | ||
OfxTime | time, | ||
OfxPointD | renderScale | ||
) | [virtual] |
Definition at line 494 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeString, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), and tuttle::host::ofx::property::OfxhSet::setDoublePropertyN().
Referenced by paramChanged().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::populate | ( | ) | [protected] |
called after construction to populate the various members ideally should be called in the ctor, but it relies on virtuals so has to be delayed until after the effect is constructed
called after construction to populate clips and params
Definition at line 152 of file OfxhImageEffectNode.cpp.
References _descriptor, tuttle::host::ofx::attribute::OfxhClipImageSet::populateClips(), and populateParams().
Referenced by tuttle::host::ImageEffectNode::ImageEffectNode().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::populateParams | ( | const imageEffect::OfxhImageEffectNodeDescriptor & | descriptor | ) | [protected] |
Definition at line 161 of file OfxhImageEffectNode.cpp.
References _descriptor, tuttle::host::ofx::attribute::OfxhParamSet::declareChildParam(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::getName(), tuttle::host::ofx::attribute::OfxhParamSet::getParam(), tuttle::host::ofx::attribute::OfxhParamSetDescriptor::getParamList(), tuttle::host::ofx::attribute::OfxhParamAccessor::getParentName(), newParam(), tuttle::quotes(), tuttle::host::ofx::attribute::OfxhParamSet::reserveParameters(), and TUTTLE_LOG_WARNING.
Referenced by populate().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::purgeCachesAction | ( | ) | [virtual] |
purge plugin caches
Definition at line 583 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), and mainEntry().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::renderAction | ( | OfxTime | time, |
const std::string & | field, | ||
const OfxRectI & | renderWindow, | ||
OfxPointD | renderScale | ||
) | [virtual] |
Definition at line 656 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeInt, tuttle::host::ofx::property::ePropTypeString, tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), tuttle::host::ofx::property::OfxhSet::setDoublePropertyN(), tuttle::host::ofx::property::OfxhSet::setIntPropertyN(), and tuttle::host::ofx::property::OfxhSet::setStringProperty().
Referenced by tuttle::host::ImageEffectNode::process().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::reset | ( | const std::string & | name | ) | [virtual] |
overridden from gethook, don't know what to do
don't know what to do
Reimplemented from tuttle::host::ofx::property::OfxhGetHook.
Definition at line 247 of file OfxhImageEffectNode.cpp.
References TUTTLE_LOG_ERROR.
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::runGetClipPrefsConditionally | ( | ) | [inline] |
calls getClipPreferences only if the prefs are dirty
returns whether the clips prefs were dirty or not
Definition at line 452 of file OfxhImageEffectNode.hpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::areClipPrefsDirty(), and getClipPreferencesAction().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::serialize | ( | Archive & | ar, |
const unsigned int | version | ||
) | [inline, private] |
Reimplemented from tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase.
Definition at line 484 of file OfxhImageEffectNode.hpp.
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::setCustomInArgs | ( | const std::string & | action, |
property::OfxhSet & | inArgs | ||
) | const [protected, virtual] |
this is used to populate with any extra action in arguments that may be needed
Definition at line 363 of file OfxhImageEffectNode.cpp.
Referenced by mainEntry().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::setCustomOutArgs | ( | const std::string & | action, |
property::OfxhSet & | outArgs | ||
) | const [protected, virtual] |
this is used to populate with any extra action out arguments that may be needed
Definition at line 368 of file OfxhImageEffectNode.cpp.
Referenced by mainEntry().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::setDefaultClipPreferences | ( | ) | [private, virtual] |
Setup the default clip preferences on the clips.
Setup the default clip preferences on the clips
is there multiple bit depth support? Depends on host, plugin and context
OK find the deepest chromatic component on our input clips and the one with the most components
set some stuff up
now find the best depth that the plugin supports
now add the clip gubbins to the out args
hmm custom component type, don't touch it and pass it through
Definition at line 1225 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages, _continuousSamples, _frameVarying, _outputFielding, _outputFrameRate, _outputPreMultiplication, bestSupportedBitDepth(), canCurrentlyHandleMultipleClipDepths(), tuttle::host::ofx::property::eModifiedByHost, tuttle::ofx::imageEffect::findDeepestBitDepth(), findMostChromaticComponents(), tuttle::host::ofx::attribute::OfxhClipImage::findSupportedComp(), getDefaultOutputFielding(), tuttle::host::ofx::attribute::OfxhClipImage::getFrameRate(), getOutputOfxhClip(), tuttle::host::ofx::attribute::OfxhClipImage::getPixelAspectRatio(), tuttle::host::ofx::attribute::OfxhClipImage::getPremult(), tuttle::host::ofx::attribute::OfxhClipImage::getUnmappedBitDepth(), tuttle::host::ofx::attribute::OfxhClipImage::getUnmappedComponents(), isChromaticComponent(), tuttle::host::ofx::attribute::OfxhClipAccessor::isConnected(), tuttle::host::ofx::attribute::OfxhAttributeAccessor::isOutput(), tuttle::max(), tuttle::ofx::maximum(), tuttle::host::ofx::attribute::OfxhClipImage::setBitDepthString(), tuttle::host::ofx::attribute::OfxhClipImage::setComponentsString(), and tuttle::host::ofx::attribute::OfxhClipImage::setPixelAspectRatio().
Referenced by createInstanceAction(), and setupClipPreferencesArgs().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::setupClipInstancePreferences | ( | property::OfxhSet & | outArgs | ) | [private, virtual] |
Setup the default host clip instance members data retrieved from the plugin instance.
Definition at line 1398 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages, _continuousSamples, _frameVarying, _outputFielding, _outputFrameRate, _outputPreMultiplication, tuttle::host::ofx::property::eModifiedByHost, tuttle::host::ofx::property::eModifiedByPlugin, tuttle::host::ofx::property::OfxhSet::fetchDoubleProperty(), tuttle::host::ofx::property::OfxhSet::fetchStringProperty(), tuttle::host::ofx::property::OfxhSet::getDoubleProperty(), tuttle::host::ofx::property::OfxhSet::getIntProperty(), tuttle::host::ofx::property::OfxhProperty::getModifiedBy(), tuttle::host::ofx::property::OfxhSet::getStringProperty(), tuttle::host::ofx::property::OfxhPropertyTemplate< T >::getValue(), isLeafNode(), tuttle::host::ofx::attribute::OfxhClipImage::setBitDepthString(), tuttle::host::ofx::attribute::OfxhClipImage::setComponentsString(), and tuttle::host::ofx::attribute::OfxhClipImage::setPixelAspectRatio().
Referenced by getClipPreferencesAction().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::setupClipPreferencesArgs | ( | property::OfxhSet & | outArgs, |
std::list< std::string > & | outKeepPropNamesOwnership | ||
) | [private, virtual] |
Initialise the clip preferences arguments, override this to do stuff with wierd components etc... Calls setDefaultClipPreferences
Initialise the clip preferences arguments, override this to do stuff with wierd components etc...
reset all the clip prefs stuff to their defaults
set the default for those
is there multiple bit depth support? Depends on host, plugin and context
now add the clip gubbins to the out args
Definition at line 1329 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::attribute::OfxhClipImageSet::_clipImages, _outputFielding, _outputFrameRate, _outputPreMultiplication, tuttle::host::ofx::property::OfxhSet::addProperties(), canCurrentlyHandleMultipleClipDepths(), tuttle::host::ofx::property::OfxhSet::createProperty(), tuttle::host::ofx::property::ePropTypeDouble, tuttle::host::ofx::property::ePropTypeInt, tuttle::host::ofx::property::ePropTypeString, tuttle::host::ofx::attribute::OfxhClipImage::getBitDepthString(), tuttle::host::ofx::attribute::OfxhClipImage::getComponentsString(), tuttle::host::ofx::attribute::OfxhClipImage::getPixelAspectRatio(), setDefaultClipPreferences(), tuttle::host::ofx::property::OfxhSet::setDoubleProperty(), and tuttle::host::ofx::property::OfxhSet::setStringProperty().
Referenced by getClipPreferencesAction().
void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::syncPrivateDataAction | ( | ) | [virtual] |
sync plugin private data
Definition at line 594 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::getHandle(), and mainEntry().
size_t tuttle::host::ofx::imageEffect::OfxhImageEffectNode::upperGetDimension | ( | const std::string & | name | ) |
Definition at line 234 of file OfxhImageEffectNode.cpp.
References tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase::_properties, and tuttle::host::ofx::property::OfxhSet::getDimension().
virtual void tuttle::host::ofx::imageEffect::OfxhImageEffectNode::vmessage | ( | const char * | type, |
const char * | id, | ||
const char * | format, | ||
va_list | args | ||
) | const [protected, pure virtual] |
make a clip
Implements tuttle::host::ofx::OfxhIMessage.
Implemented in tuttle::host::ImageEffectNode.
friend class boost::serialization::access [friend] |
Reimplemented from tuttle::host::ofx::imageEffect::OfxhImageEffectNodeBase.
Definition at line 482 of file OfxhImageEffectNode.hpp.
std::string tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_context [protected] |
Definition at line 80 of file OfxhImageEffectNode.hpp.
Referenced by calcDefaultRegionOfDefinition(), canCurrentlyHandleMultipleClipDepths(), getContext(), and tuttle::host::ImageEffectNode::print().
set by clip prefs
Definition at line 84 of file OfxhImageEffectNode.hpp.
Referenced by continuousSamples(), setDefaultClipPreferences(), and setupClipInstancePreferences().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_created [protected] |
Definition at line 83 of file OfxhImageEffectNode.hpp.
Referenced by createInstanceAction(), and ~OfxhImageEffectNode().
const OfxhImageEffectNodeDescriptor& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_descriptor [protected] |
Definition at line 81 of file OfxhImageEffectNode.hpp.
Referenced by getDescriptor(), getOverlayDescriptor(), initOverlayDescriptor(), OfxhImageEffectNode(), populate(), and populateParams().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_frameVarying [protected] |
set by clip prefs
Definition at line 85 of file OfxhImageEffectNode.hpp.
Referenced by isFrameVarying(), setDefaultClipPreferences(), and setupClipInstancePreferences().
bool tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_interactive [protected] |
Definition at line 82 of file OfxhImageEffectNode.hpp.
std::string tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_outputFielding [protected] |
set by clip prefs
Definition at line 87 of file OfxhImageEffectNode.hpp.
Referenced by getOutputFielding(), setDefaultClipPreferences(), setupClipInstancePreferences(), and setupClipPreferencesArgs().
double tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_outputFrameRate [protected] |
set by clip prefs
Definition at line 88 of file OfxhImageEffectNode.hpp.
Referenced by getOutputFrameRate(), setDefaultClipPreferences(), setupClipInstancePreferences(), and setupClipPreferencesArgs().
std::string tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_outputPreMultiplication [protected] |
set by clip prefs
Definition at line 86 of file OfxhImageEffectNode.hpp.
Referenced by getOutputPreMultiplication(), setDefaultClipPreferences(), setupClipInstancePreferences(), and setupClipPreferencesArgs().
const OfxhImageEffectPlugin& tuttle::host::ofx::imageEffect::OfxhImageEffectNode::_plugin [protected] |
Definition at line 79 of file OfxhImageEffectNode.hpp.
Referenced by getPlugin(), mainEntry(), and OfxhImageEffectNode().