TuttleOFX  1
tuttle::plugin::histogram::HistogramOverlay Class Reference

#include <HistogramOverlay.hpp>

Inheritance diagram for tuttle::plugin::histogram::HistogramOverlay:
Collaboration diagram for tuttle::plugin::histogram::HistogramOverlay:

Public Member Functions

 HistogramOverlay (OfxInteractHandle handle, OFX::ImageEffect *effect)
 ~HistogramOverlay ()
bool draw (const OFX::DrawArgs &args)
 the function called to draw in the interact
bool penDown (const OFX::PenArgs &args)
bool penUp (const OFX::PenArgs &args)
bool penMotion (const OFX::PenArgs &args)
bool keyDown (const OFX::KeyArgs &args)
bool keyUp (const OFX::KeyArgs &args)
void displaySelectedAreas (const OfxPointI &fullImgSize, const OfxPointI &imgSize, const OfxRectI &pixelRoD)
void displaySelectionZone ()
OverlayDatagetOverlayData ()

Data Fields

HistogramPlugin_plugin
interact::InteractInfos _infos
bool _penDown
bool _keyDown
OfxPointI _origin
OfxPointI _end
OfxPointI _squareBegin
OfxPointI _squareEnd
bool _isFirstTime
HSLOverlay _hslParam
RGBOverlay _rgbParam

Private Types

typedef double Scalar
typedef OfxRGBColourF Color

Private Member Functions

void drawWarning (const Ofx3DPointD &centerPoint, const double ratio)

Detailed Description

Definition at line 20 of file HistogramOverlay.hpp.


Member Typedef Documentation

Definition at line 22 of file HistogramOverlay.hpp.


Constructor & Destructor Documentation

tuttle::plugin::histogram::HistogramOverlay::HistogramOverlay ( OfxInteractHandle  handle,
OFX::ImageEffect effect 
)
tuttle::plugin::histogram::HistogramOverlay::~HistogramOverlay ( )

Definition at line 23 of file HistogramOverlay.cpp.

References _plugin, and tuttle::plugin::histogram::HistogramPlugin::releaseOverlayData().

Here is the call graph for this function:


Member Function Documentation

void tuttle::plugin::histogram::HistogramOverlay::displaySelectedAreas ( const OfxPointI fullImgSize,
const OfxPointI imgSize,
const OfxRectI pixelRoD 
)

Display the selected areas on the clip (color : gray)

Definition at line 339 of file HistogramOverlay.cpp.

References getOverlayData(), OfxPointI::x, OfxRectI::x1, OfxRectI::x2, OfxPointI::y, OfxRectI::y1, and OfxRectI::y2.

Referenced by draw().

Here is the call graph for this function:

void tuttle::plugin::histogram::HistogramOverlay::displaySelectionZone ( )

Display the selection zone on the clip (color : border gray)

Definition at line 375 of file HistogramOverlay.cpp.

References _squareBegin, _squareEnd, OfxPointI::x, and OfxPointI::y.

Referenced by draw().

bool tuttle::plugin::histogram::HistogramOverlay::draw ( const OFX::DrawArgs args) [virtual]

the function called to draw in the interact

< HACK changeClip method doesn't work in nuke when source clip is changed so we have to check size of imgBool all of the time

Todo:
: remove next lines when Nuke curves overlay works
Todo:
: remove next lines when Nuke curves overlay works

Reimplemented from OFX::InteractI.

Definition at line 28 of file HistogramOverlay.cpp.

References tuttle::plugin::ImageEffectGilPlugin::_clipSrc, _hslParam, tuttle::plugin::histogram::OverlayData::_isDataInvalid, _isFirstTime, tuttle::plugin::histogram::HistogramPlugin::_isRendering, _keyDown, tuttle::plugin::histogram::HistogramPlugin::_paramDisplaySelection, tuttle::plugin::histogram::HistogramPlugin::_paramGlobalDisplaySelection, _penDown, _plugin, _rgbParam, tuttle::plugin::histogram::OverlayData::clearAll(), tuttle::plugin::histogram::OverlayData::computeFullData(), displaySelectedAreas(), displaySelectionZone(), tuttle::plugin::histogram::HSLOverlay::draw(), tuttle::plugin::histogram::RGBOverlay::draw(), drawWarning(), getOverlayData(), OFX::Clip::getPixelRod(), OFX::Clip::getPixelRodSize(), OFX::BooleanParam::getValue(), OFX::Clip::isConnected(), tuttle::plugin::histogram::OverlayData::isCurrentTimeModified(), tuttle::plugin::histogram::OverlayData::isImageSizeModified(), tuttle::plugin::histogram::kTranslationHSL, tuttle::plugin::histogram::kTranslationRGB, OFX::InteractArgs::renderScale, OFX::InteractArgs::time, OfxPointI::x, Ofx3DPointD::x, and Ofx3DPointD::y.

Here is the call graph for this function:

void tuttle::plugin::histogram::HistogramOverlay::drawWarning ( const Ofx3DPointD centerPoint,
const double  ratio 
) [private]

Definition at line 397 of file HistogramOverlay.cpp.

References Ofx3DPointD::x, and Ofx3DPointD::y.

Referenced by draw().

OverlayData & tuttle::plugin::histogram::HistogramOverlay::getOverlayData ( )

Get overlay data from plugin

Returns:

Definition at line 428 of file HistogramOverlay.cpp.

References _plugin, and tuttle::plugin::histogram::HistogramPlugin::getOverlayData().

Referenced by displaySelectedAreas(), draw(), HistogramOverlay(), keyUp(), penDown(), penMotion(), and penUp().

Here is the call graph for this function:

bool tuttle::plugin::histogram::HistogramOverlay::keyDown ( const OFX::KeyArgs args) [virtual]

Ctrl key is pressed down

Parameters:
argscurrent arg
Returns:
event capted (y or n)

Reimplemented from OFX::InteractI.

Definition at line 303 of file HistogramOverlay.cpp.

References _keyDown, OFX::KeyArgs::keySymbol, kOfxKey_Control_L, and kOfxKey_Control_R.

bool tuttle::plugin::histogram::HistogramOverlay::keyUp ( const OFX::KeyArgs args) [virtual]

Ctrl key is released

Parameters:
argscurrent arg
Returns:
event capted (y or n)

Reimplemented from OFX::InteractI.

Definition at line 319 of file HistogramOverlay.cpp.

References tuttle::plugin::histogram::OverlayData::_isDataInvalid, _keyDown, _penDown, _plugin, getOverlayData(), OFX::KeyArgs::keySymbol, kOfxKey_Control_L, kOfxKey_Control_R, and OFX::ImageEffect::redrawOverlays().

Here is the call graph for this function:

bool tuttle::plugin::histogram::HistogramOverlay::penMotion ( const OFX::PenArgs args) [virtual]

Field Documentation


The documentation for this class was generated from the following files: