TuttleOFX  1
OfxPlugin Struct Reference

The structure that defines a plug-in to a host. More...

#include <ofxCorePlugin.h>

Data Fields

const char * pluginApi
int apiVersion
const char * pluginIdentifier
unsigned int pluginVersionMajor
unsigned int pluginVersionMinor
void(* setHost )(OfxHost *host)
 Function the host uses to connect the plug-in to the host's api fetcher.
OfxPluginEntryPointmainEntry
 Main entry point for plug-ins.

Detailed Description

The structure that defines a plug-in to a host.

This structure is the first element in any plug-in structure using the OFX plug-in architecture. By examining it's members a host can determine the API that the plug-in implements, the version of that API, it's name and version.

For details see Architecture.

Definition at line 94 of file ofxCorePlugin.h.


Field Documentation

Defines the version of the pluginApi that this plug-in implements

Definition at line 102 of file ofxCorePlugin.h.

Referenced by tuttle::host::ofx::OfxhPluginBinary::loadPluginInfo(), and operator<<().

Main entry point for plug-ins.

Mandatory function.

The exact set of actions is determined by the plug-in API that is being implemented, however all plug-ins can perform several actions. For the list of actions consult OFX Actions.

Preconditions

  • setHost has been called

Definition at line 146 of file ofxCorePlugin.h.

Referenced by tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::describeInContextAction(), tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::loadAndDescribeActions(), tuttle::host::ofx::imageEffect::OfxhImageEffectNode::mainEntry(), and tuttle::host::ofx::imageEffect::OfxhImageEffectPlugin::~OfxhImageEffectPlugin().

const char* OfxPlugin::pluginApi

Defines the type of the plug-in, this will tell the host what the plug-in does. e.g.: an image effects plug-in would be a "OfxImageEffectPlugin"

Definition at line 99 of file ofxCorePlugin.h.

Referenced by tuttle::host::ofx::OfxhPluginBinary::loadPluginInfo(), and operator<<().

String that uniquely labels the plug-in among all plug-ins that implement an API. It need not necessarily be human sensible, however the preference is to use reverse internet domain name of the developer, followed by a '.' then by a name that represents the plug-in.. It must be a legal ASCII string and have no whitespace in the name and no non printing chars. For example "uk.co.somesoftwarehouse.myPlugin"

Definition at line 111 of file ofxCorePlugin.h.

Referenced by tuttle::host::ofx::OfxhPluginBinary::loadPluginInfo(), and operator<<().

Major version of this plug-in, this gets incremented when backwards compatibility is broken.

Definition at line 114 of file ofxCorePlugin.h.

Referenced by operator<<().

Major version of this plug-in, this gets incremented when software is changed, but does not break backwards compatibility.

Definition at line 118 of file ofxCorePlugin.h.

Referenced by operator<<().

void( * OfxPlugin::setHost)(OfxHost *host)

Function the host uses to connect the plug-in to the host's api fetcher.

  • fetchApi - pointer to host's API fetcher

Mandatory function.

The very first function called in a plug-in. The plug-in must not call any OFX functions within this, it must only set it's local copy of the host pointer.

Precondition:
  • nothing else has been called
Postcondition:
  • the pointer suite is valid until the plug-in is unloaded

Definition at line 134 of file ofxCorePlugin.h.

Referenced by tuttle::host::ofx::OfxhPluginHandle::OfxhPluginHandle().


The documentation for this struct was generated from the following file: