OfxPropertySuiteV1

The files ofxCore.h and ofxProperty.h contain the basic definitions for the property suite.

The property suite is the most basic and important suite in OFX, it is used to get and set the values of various objects defined by other suites.

A property is a named value of a specific data type, such values can be multi-dimensional, but is typically of one dimension. The name is a ‘C’ string literal, typically #defined in one of the various OFX header files. For example, the property labeled by the string literal "OfxPropName" is a ‘C’ string which holds the name of some object.

Properties are not accessed in isolation, but are grouped and accessed through a property set handle. The number and types of properties on a specific property set handle are currently strictly defined by the API that the properties are being used for. There is no scope to add new properties.

There is a naming convention for property labels and the macros #defined to them. The scheme is,

  • generic properties names start with “OfxProp” + name of the property, e.g. “OfxPropTime”.

  • properties pertaining to a specific object with “Ofx” + object name + “Prop” + name of the property, e.g. “OfxParamPropAnimates”.

  • the C preprocessor #define used to define the string literal is the same as the string literal, but with “k” prepended to the name. For example, #define kOfxPropLabel “OfxPropLabel”

OfxPropertySetHandle OfxPropertySetHandle Blind data type used to hold sets of properties:

#include "ofxCore.h"
typedef struct OfxPropertySetStruct *OfxPropertySetHandle;

Description

Properties are not accessed on their own, nor do they exist on their own. They are grouped and manipulated via an OfxPropertySetHandle.

Any object that has properties can be made to return it’s property set handle via some call on the relevant suite. Individual properties are then manipulated with the property suite through that handle.

struct OfxPropertySuiteV1

The OFX suite used to access properties on OFX objects.

Public Members

OfxStatus (*propSetPointer)(OfxPropertySetHandle properties, const char *property, int index, void *value)

Set a single value in a pointer property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index for multidimenstional properties and is dimension of the one we are setting

  • value value of the property we are setting

Return:

OfxStatus (*propSetString)(OfxPropertySetHandle properties, const char *property, int index, const char *value)

Set a single value in a string property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index for multidimenstional properties and is dimension of the one we are setting

  • value value of the property we are setting

Return:

OfxStatus (*propSetDouble)(OfxPropertySetHandle properties, const char *property, int index, double value)

Set a single value in a double property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index for multidimenstional properties and is dimension of the one we are setting

  • value value of the property we are setting

Return:

OfxStatus (*propSetInt)(OfxPropertySetHandle properties, const char *property, int index, int value)

Set a single value in an int property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index for multidimenstional properties and is dimension of the one we are setting

  • value value of the property we are setting

Return:

OfxStatus (*propSetPointerN)(OfxPropertySetHandle properties, const char *property, int count, void *const *value)

Set multiple values of the pointer property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are setting in that property (ie: indicies 0..count-1)

  • value pointer to an array of property values

Return:

OfxStatus (*propSetStringN)(OfxPropertySetHandle properties, const char *property, int count, const char *const *value)

Set multiple values of a string property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are setting in that property (ie: indicies 0..count-1)

  • value pointer to an array of property values

Return:

OfxStatus (*propSetDoubleN)(OfxPropertySetHandle properties, const char *property, int count, const double *value)

Set multiple values of a double property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are setting in that property (ie: indicies 0..count-1)

  • value pointer to an array of property values

Return:

OfxStatus (*propSetIntN)(OfxPropertySetHandle properties, const char *property, int count, const int *value)

Set multiple values of an int property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are setting in that property (ie: indicies 0..count-1)

  • value pointer to an array of property values

Return:

OfxStatus (*propGetPointer)(OfxPropertySetHandle properties, const char *property, int index, void **value)

Get a single value from a pointer property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index refers to the index of a multi-dimensional property

  • value pointer the return location

Return:

OfxStatus (*propGetString)(OfxPropertySetHandle properties, const char *property, int index, char **value)

Get a single value of a string property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index refers to the index of a multi-dimensional property

  • value pointer the return location

Return:

OfxStatus (*propGetDouble)(OfxPropertySetHandle properties, const char *property, int index, double *value)

Get a single value of a double property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index refers to the index of a multi-dimensional property

  • value pointer the return location

See the note ArchitectureStrings for how to deal with strings.

Return:

OfxStatus (*propGetInt)(OfxPropertySetHandle properties, const char *property, int index, int *value)

Get a single value of an int property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • index refers to the index of a multi-dimensional property

  • value pointer the return location

Return:

OfxStatus (*propGetPointerN)(OfxPropertySetHandle properties, const char *property, int count, void **value)

Get multiple values of a pointer property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are getting of that property (ie: indicies 0..count-1)

  • value pointer to an array of where we will return the property values

Return:

OfxStatus (*propGetStringN)(OfxPropertySetHandle properties, const char *property, int count, char **value)

Get multiple values of a string property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are getting of that property (ie: indicies 0..count-1)

  • value pointer to an array of where we will return the property values

See the note ArchitectureStrings for how to deal with strings.

Return:

OfxStatus (*propGetDoubleN)(OfxPropertySetHandle properties, const char *property, int count, double *value)

Get multiple values of a double property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are getting of that property (ie: indicies 0..count-1)

  • value pointer to an array of where we will return the property values

Return:

OfxStatus (*propGetIntN)(OfxPropertySetHandle properties, const char *property, int count, int *value)

Get multiple values of an int property.

  • properties handle of the thing holding the property

  • property string labelling the property

  • count number of values we are getting of that property (ie: indicies 0..count-1)

  • value pointer to an array of where we will return the property values

Return:

OfxStatus (*propReset)(OfxPropertySetHandle properties, const char *property)

Resets all dimensions of a property to its default value.

  • properties handle of the thing holding the property

  • property string labelling the property we are resetting

Return:

OfxStatus (*propGetDimension)(OfxPropertySetHandle properties, const char *property, int *count)

Gets the dimension of the property.

  • properties handle of the thing holding the property

  • property string labelling the property we are resetting

  • count pointer to an integer where the value is returned

Return: