TuttleOFX  1
OFX::ParamSetDescriptor Class Reference

Describes a set of properties. More...

#include <ofxsParam.h>

Inheritance diagram for OFX::ParamSetDescriptor:
Collaboration diagram for OFX::ParamSetDescriptor:

Public Member Functions

OfxParamSetHandle getOfxParamSetHandle ()
virtual ~ParamSetDescriptor ()
 dtor
ParamDescriptorgetParamDescriptor (const std::string &name) const
 tries to fetch a ParamDescriptor, returns 0 if it isn't there
void setPageParamOrder (PageParamDescriptor &p)
 estabilishes the order of page params. Do it by calling it in turn for each page
IntParamDescriptordefineIntParam (const std::string &name)
 Define an integer param.
Int2DParamDescriptordefineInt2DParam (const std::string &name)
 Define a 2D integer param.
Int3DParamDescriptordefineInt3DParam (const std::string &name)
 Define a 3D integer param.
DoubleParamDescriptordefineDoubleParam (const std::string &name)
 Define an double param.
Double2DParamDescriptordefineDouble2DParam (const std::string &name)
 Define a 2D double param.
Double3DParamDescriptordefineDouble3DParam (const std::string &name)
 Define a 3D double param.
StringParamDescriptordefineStringParam (const std::string &name)
 Define a string param.
RGBAParamDescriptordefineRGBAParam (const std::string &name)
 Define a RGBA param.
RGBParamDescriptordefineRGBParam (const std::string &name)
 Define an RGB param.
BooleanParamDescriptordefineBooleanParam (const std::string &name)
 Define a Boolean param.
ChoiceParamDescriptordefineChoiceParam (const std::string &name)
 Define a Choice param.
GroupParamDescriptordefineGroupParam (const std::string &name)
 Define a group param.
PageParamDescriptordefinePageParam (const std::string &name)
 Define a Page param.
PushButtonParamDescriptordefinePushButtonParam (const std::string &name)
 Define a push button param.
ParametricParamDescriptordefineParametricParam (const std::string &name)
 Define a parametric param.
CustomParamDescriptordefineCustomParam (const std::string &name)
 Define a custom param.

Protected Member Functions

 mDeclareProtectedAssignAndCC (ParamSetDescriptor)
void defineRawParam (const std::string &name, ParamTypeEnum paramType, OfxPropertySetHandle &props)
 calls the raw OFX routine to define a param
template<class T >
bool defineParamDescriptor (const std::string &name, ParamTypeEnum paramType, T *&paramPtr)
 Define a param descriptor of the given type.
 ParamSetDescriptor (void)
 Hidden ctor.
ParamDescriptorfindPreviouslyDefinedParam (const std::string &name)
 find a param in the map
void setOfxParamSetHandle (OfxParamSetHandle h)
 set the param set handle

Protected Attributes

PropertySet _paramSetProps
 Properties that belong to this param set.
OfxParamSetHandle _paramSetHandle
 Parameter set handle.
std::map< std::string,
ParamDescriptor * > 
_definedParams
 Set of all previously defined parameters, defined on demand.

Detailed Description

Describes a set of properties.

Definition at line 741 of file ofxsParam.h.


Constructor & Destructor Documentation

OFX::ParamSetDescriptor::ParamSetDescriptor ( void  ) [protected]

Hidden ctor.

hidden ctor

Definition at line 808 of file ofxsParams.cpp.

OFX::ParamSetDescriptor::~ParamSetDescriptor ( ) [virtual]

dtor

Definition at line 841 of file ofxsParams.cpp.

References _definedParams.


Member Function Documentation

BooleanParamDescriptor * OFX::ParamSetDescriptor::defineBooleanParam ( const std::string &  name)

Define a Boolean param.

Definition at line 964 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eBooleanParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption(), tuttle::plugin::describeGeneratorParamsInContext(), and tuttle::plugin::describeWriterParamsInContext().

Here is the call graph for this function:

ChoiceParamDescriptor * OFX::ParamSetDescriptor::defineChoiceParam ( const std::string &  name)
CustomParamDescriptor * OFX::ParamSetDescriptor::defineCustomParam ( const std::string &  name)

Define a custom param.

Definition at line 1022 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eCustomParam.

Here is the call graph for this function:

Double2DParamDescriptor * OFX::ParamSetDescriptor::defineDouble2DParam ( const std::string &  name)

Define a 2D double param.

Definition at line 919 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eDouble2DParam.

Here is the call graph for this function:

Double3DParamDescriptor * OFX::ParamSetDescriptor::defineDouble3DParam ( const std::string &  name)

Define a 3D double param.

Definition at line 928 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eDouble3DParam.

Here is the call graph for this function:

DoubleParamDescriptor * OFX::ParamSetDescriptor::defineDoubleParam ( const std::string &  name)

Define an double param.

Define an double param, only callable from describe in context.

Definition at line 910 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eDoubleParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption(), tuttle::plugin::describeGeneratorParamsInContext(), and tuttle::plugin::describeSamplerParamsInContext().

Here is the call graph for this function:

GroupParamDescriptor * OFX::ParamSetDescriptor::defineGroupParam ( const std::string &  name)

Define a group param.

Definition at line 982 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eGroupParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption().

Here is the call graph for this function:

Int2DParamDescriptor * OFX::ParamSetDescriptor::defineInt2DParam ( const std::string &  name)

Define a 2D integer param.

Definition at line 892 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eInt2DParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption(), and tuttle::plugin::describeGeneratorParamsInContext().

Here is the call graph for this function:

Int3DParamDescriptor * OFX::ParamSetDescriptor::defineInt3DParam ( const std::string &  name)

Define a 3D integer param.

Definition at line 901 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eInt3DParam.

Here is the call graph for this function:

IntParamDescriptor * OFX::ParamSetDescriptor::defineIntParam ( const std::string &  name)

Define an integer param.

Define an integer param, only callable from describe in context.

Definition at line 883 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eIntParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption(), tuttle::plugin::describeGeneratorParamsInContext(), tuttle::plugin::describeSamplerParamsInContext(), and tuttle::plugin::describeWriterParamsInContext().

Here is the call graph for this function:

PageParamDescriptor * OFX::ParamSetDescriptor::definePageParam ( const std::string &  name)

Define a Page param.

Definition at line 991 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::ePageParam.

Here is the call graph for this function:

template<class T >
bool OFX::ParamSetDescriptor::defineParamDescriptor ( const std::string &  name,
ParamTypeEnum  paramType,
T *&  paramPtr 
) [inline, protected]
ParametricParamDescriptor * OFX::ParamSetDescriptor::defineParametricParam ( const std::string &  name)

Define a parametric param.

<

Todo:
tuttle: more generic way for all param types ?

Definition at line 1009 of file ofxsParams.cpp.

References defineParamDescriptor(), OFX::eParametricParam, and OFX::ParametricParamDescriptor::setParamSet().

Here is the call graph for this function:

PushButtonParamDescriptor * OFX::ParamSetDescriptor::definePushButtonParam ( const std::string &  name)

Define a push button param.

Definition at line 1000 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::ePushButtonParam.

Referenced by tuttle::plugin::describeWriterParamsInContext().

Here is the call graph for this function:

void OFX::ParamSetDescriptor::defineRawParam ( const std::string &  name,
ParamTypeEnum  paramType,
OfxPropertySetHandle props 
) [protected]

calls the raw OFX routine to define a param

Definition at line 864 of file ofxsParams.cpp.

References _paramSetHandle, OFX::Private::gParamSuite, OFX::mapParamTypeEnumToString(), OfxParameterSuiteV1::paramDefine, and OFX::throwSuiteStatusException().

Referenced by defineParamDescriptor().

Here is the call graph for this function:

RGBAParamDescriptor * OFX::ParamSetDescriptor::defineRGBAParam ( const std::string &  name)

Define a RGBA param.

Definition at line 946 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eRGBAParam.

Here is the call graph for this function:

RGBParamDescriptor * OFX::ParamSetDescriptor::defineRGBParam ( const std::string &  name)

Define an RGB param.

Definition at line 955 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eRGBParam.

Here is the call graph for this function:

StringParamDescriptor * OFX::ParamSetDescriptor::defineStringParam ( const std::string &  name)

Define a string param.

Definition at line 937 of file ofxsParams.cpp.

References defineParamDescriptor(), and OFX::eStringParam.

Referenced by tuttle::plugin::av::addOptionsFromAVOption(), tuttle::plugin::describeReaderParamsInContext(), and tuttle::plugin::describeWriterParamsInContext().

Here is the call graph for this function:

ParamDescriptor * OFX::ParamSetDescriptor::findPreviouslyDefinedParam ( const std::string &  name) [protected]

find a param in the map

if a param has been defined in this set, go find it

Definition at line 872 of file ofxsParams.cpp.

References _definedParams.

Referenced by defineParamDescriptor().

OfxParamSetHandle OFX::ParamSetDescriptor::getOfxParamSetHandle ( ) [inline]

Definition at line 807 of file ofxsParam.h.

References _paramSetHandle.

Referenced by OFX::ParametricParamDescriptor::setParamSet().

ParamDescriptor * OFX::ParamSetDescriptor::getParamDescriptor ( const std::string &  name) const

tries to fetch a ParamDescriptor, returns 0 if it isn't there

Definition at line 812 of file ofxsParams.cpp.

References _definedParams.

OFX::ParamSetDescriptor::mDeclareProtectedAssignAndCC ( ParamSetDescriptor  ) [protected]
void OFX::ParamSetDescriptor::setOfxParamSetHandle ( OfxParamSetHandle  h) [protected]
void OFX::ParamSetDescriptor::setPageParamOrder ( PageParamDescriptor p)

estabilishes the order of page params. Do it by calling it in turn for each page

Definition at line 856 of file ofxsParams.cpp.

References _paramSetProps, OFX::ParamDescriptor::getName(), kOfxPluginPropParamPageOrder, OFX::PropertySet::propGetDimension(), and OFX::PropertySet::propSetString().

Here is the call graph for this function:


Field Documentation

std::map<std::string, ParamDescriptor*> OFX::ParamSetDescriptor::_definedParams [protected]

Set of all previously defined parameters, defined on demand.

Definition at line 794 of file ofxsParam.h.

Referenced by defineParamDescriptor(), findPreviouslyDefinedParam(), getParamDescriptor(), and ~ParamSetDescriptor().

Parameter set handle.

Definition at line 791 of file ofxsParam.h.

Referenced by defineRawParam(), getOfxParamSetHandle(), and setOfxParamSetHandle().

Properties that belong to this param set.

Definition at line 788 of file ofxsParam.h.

Referenced by setOfxParamSetHandle(), and setPageParamOrder().


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