TuttleOFX  1
ofxsImageEffect.h File Reference
#include "ofxsParam.h"
#include "ofxsInteract.h"
#include "ofxsMessage.h"
#include "ofxParametricParam.h"
#include "extensions/nuke/camera.h"
#include <ofxProgress.h>
#include <ofxTimeLine.h>
#include <map>
#include <vector>
#include <string>
#include <algorithm>
#include <sstream>
Include dependency graph for ofxsImageEffect.h:

Go to the source code of this file.

Data Structures

class  OFX::PluginFactory
class  OFX::FactoryMainEntryHelper< FACTORY >
class  OFX::PluginFactoryHelper< FACTORY >
struct  OFX::ImageEffectHostDescription
 A class that lists all the properties of a host. More...
class  OFX::ClipDescriptor
 Wraps up a clip. More...
class  OFX::ImageEffectDescriptor
 Wraps up an effect descriptor, used in the describe actions. More...
class  OFX::Image
 Wraps up an image. More...
class  OFX::Clip
 Wraps up a clip instance. More...
class  OFX::ImageMemory
 Class that skins image memory allocation. More...
struct  OFX::RenderArguments
 POD struct to pass rendering arguments into ImageEffect::render and OFX::ImageEffect::isIdentity. More...
struct  OFX::BeginSequenceRenderArguments
 POD struct to pass arguments into OFX::ImageEffect::render. More...
struct  OFX::EndSequenceRenderArguments
 POD struct to pass arguments into OFX::ImageEffect::beginSequenceRender. More...
struct  OFX::RegionOfDefinitionArguments
 POD struct to pass arguments into OFX::ImageEffect::getRegionOfDefinition. More...
struct  OFX::RegionsOfInterestArguments
 POD struct to pass arguments into OFX::ImageEffect::getRegionsOfInterest. More...
class  OFX::RegionOfInterestSetter
 Class used to set regions of interest on a clip in OFX::ImageEffect::getRegionsOfInterest. More...
struct  OFX::FramesNeededArguments
 POD struct to pass arguments into OFX::ImageEffect::getFramesNeeded. More...
class  OFX::FramesNeededSetter
 Class used to set the frames needed to render a single frame of a clip in OFX::ImageEffect::getFramesNeeded. More...
class  OFX::ClipPreferencesSetter
 Class used to set the clip preferences of the effect. More...
struct  OFX::InstanceChangedArgs
 POD data structure passing in the instance changed args. More...
class  OFX::ImageEffect
 Wraps up an effect instance, plugin implementations need to inherit from this. More...

Namespaces

namespace  OFX
 

The core 'OFX Support' namespace, used by plugin implementations. All code for these are defined in the common support libraries.


namespace  OFX::Private
 

OFX::Private namespace, for things private to the support library code here generally calls image effect class members.


namespace  OFX::Plugin
 

The OFX::Plugin namespace. All the functions in here needs to be defined by each plugin that uses the support libs.


Defines

#define mDeclareProtectedAssignAndCC(CLASS)
 Nasty macro used to define empty protected copy ctors and assign ops.
#define mDeclarePluginFactory(CLASS, LOADFUNCDEF, UNLOADFUNCDEF)

Typedefs

typedef std::vector
< PluginFactory * > 
OFX::PluginFactoryArray

Enumerations

enum  OFX::EContext {
  OFX::eContextNone, OFX::eContextGenerator, OFX::eContextFilter, OFX::eContextTransition,
  OFX::eContextPaint, OFX::eContextGeneral, OFX::eContextRetimer, OFX::eContextReader,
  OFX::eContextWriter
}
 Enumerates the contexts a plugin can be used in. More...
enum  OFX::EBitDepth {
  OFX::eBitDepthCustom = -1, OFX::eBitDepthNone = 0, OFX::eBitDepthUByte = 1, OFX::eBitDepthUShort = 2,
  OFX::eBitDepthFloat = 3
}
 Enumerates the pixel depths supported. More...
enum  OFX::EPixelComponent {
  OFX::ePixelComponentNone, OFX::ePixelComponentRGBA, OFX::ePixelComponentRGB, OFX::ePixelComponentAlpha,
  OFX::ePixelComponentCustom
}
 Enumerates the component types supported. More...
enum  OFX::EFieldExtraction { OFX::eFieldExtractBoth, OFX::eFieldExtractSingle, OFX::eFieldExtractDoubled }
 Enumerates the ways a fielded image can be extracted from a clip. More...
enum  OFX::ERenderSafety { OFX::eRenderUnsafe, OFX::eRenderInstanceSafe, OFX::eRenderFullySafe }
 Enumerates the kind of render thread safety a plugin has. More...
enum  OFX::EField { OFX::eFieldNone, OFX::eFieldBoth, OFX::eFieldLower, OFX::eFieldUpper }
 Enumerates the fields present in an image. More...
enum  OFX::EPreMultiplication { OFX::eImageOpaque, OFX::eImagePreMultiplied, OFX::eImageUnPreMultiplied }

Functions

OfxStatus OFX::Private::mainEntryStr (const char *actionRaw, const void *handleRaw, OfxPropertySetHandle inArgsRaw, OfxPropertySetHandle outArgsRaw, const char *plugname)
 The main entry point for the plugin.
const std::string OFX::mapContextEnumToString (const EContext s)
 map a std::string to a context
const std::string OFX::mapBitDepthEnumToString (const EBitDepth e)
std::string OFX::mapPixelComponentEnumToString (const EPixelComponent e)
std::string OFX::mapFieldEnumToString (const EField e)
std::string OFX::mapPreMultiplicationEnumToString (const EPreMultiplication e)
void * OFX::fetchSuite (const char *suiteName, int suiteVersion, bool optional=false)
 Fetch's a suite from the host and logs errors.
ImageEffectHostDescriptionOFX::getImageEffectHostDescription ()
 retrieve the host description
void OFX::Plugin::getPluginID (OFX::PluginFactoryArray &id)
 Plugin side function used to identify the plugin to the support library.

Variables

static const OfxPointD OFX::kNoRenderScale = { 1.0, 1.0 }

Define Documentation

#define mDeclarePluginFactory (   CLASS,
  LOADFUNCDEF,
  UNLOADFUNCDEF 
)
Value:
class CLASS : public OFX::PluginFactoryHelper < CLASS > \
    { \
    public: \
        CLASS( const std::string & id, unsigned int verMaj, unsigned int verMin ) : OFX::PluginFactoryHelper < CLASS > ( id, verMaj, verMin ) {} \
        virtual ~CLASS() {} \
        virtual void load() LOADFUNCDEF ; \
        virtual void unload() UNLOADFUNCDEF ; \
        virtual void describe( OFX::ImageEffectDescriptor & desc ); \
        virtual void describeInContext( OFX::ImageEffectDescriptor & desc, OFX::EContext context ); \
        virtual OFX::ImageEffect* createInstance( OfxImageEffectHandle handle, OFX::EContext context ); \
    };

Definition at line 232 of file ofxsImageEffect.h.

#define mDeclareProtectedAssignAndCC (   CLASS)
Value:
CLASS& operator=( const CLASS& ) { assert( false ); return *this; }    \
    CLASS( const CLASS & ) { assert( false ); }

Nasty macro used to define empty protected copy ctors and assign ops.

Definition at line 61 of file ofxsImageEffect.h.