TuttleOFX
1
|
Pinning plugin. More...
#include <PinningPlugin.hpp>
Pinning plugin.
Definition at line 38 of file PinningPlugin.hpp.
typedef boost::gil::point2<double> tuttle::plugin::pinning::PinningPlugin::Point2 |
Definition at line 42 of file PinningPlugin.hpp.
typedef double tuttle::plugin::pinning::PinningPlugin::Scalar |
Definition at line 41 of file PinningPlugin.hpp.
tuttle::plugin::pinning::PinningPlugin::PinningPlugin | ( | OfxImageEffectHandle | handle | ) |
Definition at line 22 of file PinningPlugin.cpp.
References _clipDst, _clipSrc, _paramBilMatrixRow0, _paramBilMatrixRow1, _paramBilMatrixRow2, _paramBilMatrixRow3, _paramGroupBilMatrix, _paramGroupIn, _paramGroupOut, _paramGroupPerspMatrix, _paramInverse, _paramMethod, _paramOverlay, _paramOverlayIn, _paramOverlayInColor, _paramOverlayOut, _paramOverlayOutColor, _paramPerspMatrixRow0, _paramPerspMatrixRow1, _paramPerspMatrixRow2, _paramPointIn0, _paramPointIn1, _paramPointIn2, _paramPointIn3, _paramPointOut0, _paramPointOut1, _paramPointOut2, _paramPointOut3, _paramSetToCornersIn, _paramSetToCornersOut, changedParam(), OFX::ParamSet::fetchBooleanParam(), OFX::ParamSet::fetchChoiceParam(), OFX::ImageEffect::fetchClip(), OFX::ParamSet::fetchDouble2DParam(), OFX::ParamSet::fetchDouble3DParam(), OFX::ParamSet::fetchGroupParam(), OFX::ParamSet::fetchPushButtonParam(), OFX::ParamSet::fetchRGBParam(), kOfxImageEffectOutputClipName, kOfxImageEffectSimpleSourceClipName, tuttle::plugin::pinning::kParamBilinearMatrixRow, tuttle::plugin::kParamFilter, tuttle::plugin::pinning::kParamGroupBilinearMatrix, tuttle::plugin::pinning::kParamGroupIn, tuttle::plugin::pinning::kParamGroupPerspMatrix, tuttle::plugin::pinning::kParamInverse, tuttle::plugin::pinning::kParamMethod, tuttle::plugin::pinning::kParamOverlay, tuttle::plugin::pinning::kParamOverlayIn, tuttle::plugin::pinning::kParamOverlayInColor, tuttle::plugin::pinning::kParamOverlayOut, tuttle::plugin::pinning::kParamOverlayOutColor, tuttle::plugin::pinning::kParamPerspMatrixRow, tuttle::plugin::pinning::kParamPointIn, tuttle::plugin::pinning::kParamPointOut, tuttle::plugin::pinning::kParamSetToCornersIn, and tuttle::plugin::pinning::kParamSetToCornersOut.
void tuttle::plugin::pinning::PinningPlugin::changedParam | ( | const OFX::InstanceChangedArgs & | args, |
const std::string & | paramName | ||
) | [virtual] |
called when a param has just had its value changed
compute "bilMatrix" from input/output points -> "_paramPoint*"
Reimplemented from tuttle::plugin::SamplerPlugin.
Definition at line 110 of file PinningPlugin.cpp.
References _paramBilMatrixRow0, _paramBilMatrixRow1, _paramBilMatrixRow2, _paramBilMatrixRow3, _paramGroupBilMatrix, _paramGroupPerspMatrix, _paramInverse, _paramMethod, _paramPerspMatrixRow0, _paramPerspMatrixRow1, _paramPerspMatrixRow2, _paramPointIn0, _paramPointIn1, _paramPointIn2, _paramPointIn3, _paramPointOut0, _paramPointOut1, _paramPointOut2, _paramPointOut3, tuttle::plugin::pinning::eParamMethodAffine, tuttle::plugin::pinning::eParamMethodBilinear, tuttle::plugin::pinning::eParamMethodPerspective, OFX::Double2DParam::getValue(), OFX::ChoiceParam::getValue(), OFX::BooleanParam::getValue(), tuttle::plugin::pinning::kParamInverse, tuttle::plugin::pinning::kParamMethod, tuttle::plugin::pinning::kParamPointIn, tuttle::plugin::pinning::kParamPointOut, tuttle::plugin::pinning::kParamSetToCornersIn, tuttle::plugin::pinning::kParamSetToCornersOut, OFX::Param::setIsSecretAndDisabled(), OFX::Double2DParam::setValue(), and OFX::Double3DParam::setValue().
Referenced by PinningPlugin().
PinningProcessParams< PinningPlugin::Scalar > tuttle::plugin::pinning::PinningPlugin::getProcessParams | ( | const OfxTime | time, |
const OfxPointD & | renderScale = OFX::kNoRenderScale |
||
) | const |
Definition at line 75 of file PinningPlugin.cpp.
References _clipSrc, _paramBilMatrixRow0, _paramBilMatrixRow1, _paramBilMatrixRow2, _paramBilMatrixRow3, _paramMethod, _paramPerspMatrixRow0, _paramPerspMatrixRow1, _paramPerspMatrixRow2, tuttle::plugin::SamplerPlugin::fillProcessParams(), OFX::Clip::getCanonicalRod(), OFX::Double2DParam::getValue(), OFX::Double3DParam::getValue(), OFX::ChoiceParam::getValue(), height, and width.
Referenced by isIdentity().
bool tuttle::plugin::pinning::PinningPlugin::isIdentity | ( | const OFX::RenderArguments & | args, |
OFX::Clip *& | identityClip, | ||
double & | identityTime | ||
) | [virtual] |
client is identity function, returns the clip and time for the identity function
If the effect would do no processing for the given param set and render arguments, then this function should return true and set the identityClip pointer to point to the clip that is the identity and identityTime to be the time at which to access the clip for the identity operation.
Reimplemented from OFX::ImageEffect.
Definition at line 401 of file PinningPlugin.cpp.
References _clipSrc, tuttle::plugin::pinning::eParamMethodAffine, tuttle::plugin::pinning::eParamMethodBilinear, tuttle::plugin::pinning::eParamMethodPerspective, getProcessParams(), OFX::RenderArguments::renderScale, and OFX::RenderArguments::time.
void tuttle::plugin::pinning::PinningPlugin::render | ( | const OFX::RenderArguments & | args | ) | [virtual] |
The overridden render function.
[in] | args | Rendering parameters |
Implements OFX::ImageEffect.
Definition at line 446 of file PinningPlugin.cpp.
References _clipDst, OFX::eBitDepthCustom, OFX::eBitDepthFloat, OFX::eBitDepthNone, OFX::eBitDepthUByte, OFX::eBitDepthUShort, OFX::ePixelComponentAlpha, OFX::ePixelComponentRGBA, OFX::Clip::getPixelComponents(), OFX::Clip::getPixelDepth(), OFX::mapBitDepthEnumToString(), tuttle::plugin::ImageProcessor::setupAndProcess(), and TUTTLE_LOG_ERROR.
Destination image clip.
Reimplemented from tuttle::plugin::ImageEffectGilPlugin.
Definition at line 57 of file PinningPlugin.hpp.
Referenced by PinningPlugin(), and render().
Source image clip.
Reimplemented from tuttle::plugin::ImageEffectGilPlugin.
Definition at line 56 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::draw(), getProcessParams(), isIdentity(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 98 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 99 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 100 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 101 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 97 of file PinningPlugin.hpp.
Referenced by changedParam(), and PinningPlugin().
Definition at line 76 of file PinningPlugin.hpp.
Referenced by PinningPlugin().
Definition at line 84 of file PinningPlugin.hpp.
Referenced by PinningPlugin().
Definition at line 92 of file PinningPlugin.hpp.
Referenced by changedParam(), and PinningPlugin().
Definition at line 62 of file PinningPlugin.hpp.
Referenced by changedParam(), and PinningPlugin().
Definition at line 59 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 65 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::draw(), and PinningPlugin().
Definition at line 81 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 82 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 89 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 90 of file PinningPlugin.hpp.
Referenced by tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 93 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 94 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 95 of file PinningPlugin.hpp.
Referenced by changedParam(), getProcessParams(), and PinningPlugin().
Definition at line 77 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 78 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 79 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 80 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 85 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 86 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 87 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 88 of file PinningPlugin.hpp.
Referenced by changedParam(), tuttle::plugin::pinning::PinningOverlayInteract::PinningOverlayInteract(), and PinningPlugin().
Definition at line 60 of file PinningPlugin.hpp.
Referenced by PinningPlugin().
Definition at line 61 of file PinningPlugin.hpp.
Referenced by PinningPlugin().