General Properties
[Ofx Properties]


Detailed Description

These properties are general properties and apply to may objects across OFX


Defines

#define kOfxPropTime   "OfxPropTime"
 General property used to get/set the time of something.
#define kOfxPropIsInteractive   "OfxPropIsInteractive"
 Indicates if a host is actively editing the effect with some GUI.
#define kOfxPluginPropFilePath   "OfxPluginPropFilePath"
 The file path to the plugin.
#define kOfxPropInstanceData   "OfxPropInstanceData"
 A private data pointer that the plug-in can store it's own data behind.
#define kOfxPropType   "OfxPropType"
 General property, used to identify the kind of an object behind a handle.
#define kOfxPropName   "OfxPropName"
 Unique name of an object.
#define kOfxPropLabel   "OfxPropLabel"
 User visible name of an object.
#define kOfxPropShortLabel   "OfxPropShortLabel"
 Short user visible name of an object.
#define kOfxPropLongLabel   "OfxPropLongLabel"
 Long user visible name of an object.
#define kOfxPropChangeReason   "OfxPropChangeReason"
 Indicates why a plug-in changed.
#define kOfxPropEffectInstance   "OfxPropEffectInstance"
 A pointer to an effect instance.
#define kOfxPropKeySym   "kOfxPropKeySym"
 Property used to indicate which a key on the keyboard or a button on a button device has been pressed.
#define kOfxPropKeyString   "kOfxPropKeyString"
 This property encodes a single keypresses that generates a unicode code point. The value is stored as a UTF8 string.


Define Documentation

#define kOfxPluginPropFilePath   "OfxPluginPropFilePath"

The file path to the plugin.

  • Type - C string X 1
  • Property Set - effect descriptor (read only)

This is a string that indicates the file path where the plug-in was found by the host. The path is in the native path format for the host OS (eg: UNIX directory separators are forward slashes, Windows ones are backslashes).

The path is to the bundle location, see InstallationLocation. eg: '/usr/OFX/Plugins/AcmePlugins/AcmeFantasticPlugin.ofx.bundle'

#define kOfxPropChangeReason   "OfxPropChangeReason"

Indicates why a plug-in changed.

  • Type - ASCII C string X 1
  • Property Set - the inArgs parameter on the kOfxActionInstanceChanged action.
  • Valid Values - this can be...
    • kOfxChangeUserEdited - the user directly edited the instance somehow and caused a change to something, this includes undo/redos and resets
    • kOfxChangePluginEdited - the plug-in itself has changed the value of the object in some action
    • kOfxChangeTime - the time has changed and this has affected the value of the object because it varies over time

Argument property for the kOfxActionInstanceChanged action.

#define kOfxPropEffectInstance   "OfxPropEffectInstance"

A pointer to an effect instance.

  • Type - pointer X 1
  • Property Set - on an interact instance (read only)

This property is used to link an object to the effect. For example if the plug-in supplies an openGL overlay for an image effect, the interact instance will have one of these so that the plug-in can connect back to the effect the GUI links to.

#define kOfxPropInstanceData   "OfxPropInstanceData"

A private data pointer that the plug-in can store it's own data behind.

  • Type - pointer X 1
  • Property Set - plugin instance (read/write),
  • Default - NULL

This data pointer is unique to each plug-in instance, so two instances of the same plug-in do not share the same data pointer. Use it to hang any needed private data structures.

#define kOfxPropIsInteractive   "OfxPropIsInteractive"

Indicates if a host is actively editing the effect with some GUI.

  • Type - int X 1
  • Property Set - effect instance (read only)
  • Valid Values - 0 or 1

If false the effect currently has no interface, however this may be because the effect is loaded in a background render host, or it may be loaded on an interactive host that has not yet opened an editor for the effect.

The output of an effect should only ever depend on the state of it's parameters, not on the interactive flag. The interactive flag is more a courtesy flag to let a plugin know that it has an interace. If a plugin want's to have its behaviour dependant on the interactive flag, it can always make a secret parameter which shadows the state if the flag.

#define kOfxPropKeyString   "kOfxPropKeyString"

This property encodes a single keypresses that generates a unicode code point. The value is stored as a UTF8 string.

This property represents the UTF8 encode value of a single key press by a user in an OFX interact.

This property is associated with a kOfxPropKeySym which represents an integer value for the key press. Some keys (for example arrow keys) have no UTF8 equivalant, in which case this is set to the empty string "", and the associate kOfxPropKeySym is set to the equivilant raw key press.

Some keys, especially on non-english language systems, may have a UTF8 value, but not a keysym values, in these cases, the keysym will have a value of kOfxKey_Unknown, but the kOfxPropKeyString property will still be set with the UTF8 value.

#define kOfxPropKeySym   "kOfxPropKeySym"

Property used to indicate which a key on the keyboard or a button on a button device has been pressed.

This property represents a raw key press, it does not represent the 'character value' of the key.

This property is associated with a kOfxPropKeyString property, which encodes the UTF8 value for the keypress/button press. Some keys (for example arrow keys) have no UTF8 equivalant.

Some keys, especially on non-english language systems, may have a UTF8 value, but not a keysym values, in these cases, the keysym will have a value of kOfxKey_Unknown, but the kOfxPropKeyString property will still be set with the UTF8 value.

#define kOfxPropLabel   "OfxPropLabel"

User visible name of an object.

  • Type - UTF8 C string X 1
  • Property Set - on many objects (descriptors and instances), see PropertiesByObject. Typically readable and writable in most cases.
  • Default - the kOfxPropName the object was created with.

The label is what a user sees on any interface in place of the object's name.

Note that resetting this will also reset kOfxPropShortLabel and kOfxPropLongLabel.

#define kOfxPropLongLabel   "OfxPropLongLabel"

Long user visible name of an object.

  • Type - UTF8 C string X 1
  • Property Set - on many objects (descriptors and instances), see PropertiesByObject. Typically readable and writable in most cases.
  • Default - initially kOfxPropName, but will be reset if kOfxPropLabel is changed.

This is a longer version of the label, typically 32 character glyphs or so. Hosts should use this if they have mucg display space for their object labels.

#define kOfxPropName   "OfxPropName"

Unique name of an object.

  • Type - ASCII C string X 1
  • Property Set - on many objects (descriptors and instances), see PropertiesByObject (read only)

This property is used to label objects uniquely amoung objects of that type. It is typically set when a plugin creates a new object with a function that takes a name.

#define kOfxPropShortLabel   "OfxPropShortLabel"

Short user visible name of an object.

  • Type - UTF8 C string X 1
  • Property Set - on many objects (descriptors and instances), see PropertiesByObject. Typically readable and writable in most cases.
  • Default - initially kOfxPropName, but will be reset if kOfxPropLabel is changed.

This is a shorter version of the label, typically 13 character glyphs or less. Hosts should use this if they have limitted display space for their object labels.

#define kOfxPropTime   "OfxPropTime"

General property used to get/set the time of something.

  • Type - double X 1
  • Default - 0, if a setable property
  • Property Set - commonly used as an argument to actions, input and output.

#define kOfxPropType   "OfxPropType"

General property, used to identify the kind of an object behind a handle.


Copyright 2003-2004 The Foundry Visonmongers Ltd. All rights reserved.
Copying and redistribution with or without modification, is permitted provided that the following conditions are met:
  1. Redistributions of the document must retain the above copyright notice and this list of conditions.
  2. Neither the name of The Foundry Visonmongers Ltd nor names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
Automatic documentation generated by DOxygen.