OceanPlugin class

<oceansdk/pluginmain.h>

Description

This class is a wrapper around Ocean::Sdk::DLLInterface for creating plugin DLLs easily.

Namespace

This class is in the root namespace

Public members

class OceanPlugin
template<typename T>
void registerBsdf()
Template Parameters

T – Class deriving from Ocean::Sdk::IBsdfPlugin

Registers the BSDF type T in this plugin

template<typename T>
void registerEnvironment()
Template Parameters

T – Class deriving from Ocean::Sdk::IEnvironmentPlugin

Registers the environment type T in this plugin

template<typename T>
void registerFilterShader()
Template Parameters

T – Class deriving from Ocean::Sdk::IFilterShaderPlugin

Registers the filter shader type T in this plugin

template<typename T>
void registerScalarShader()
Template Parameters

T – Class deriving from Ocean::Sdk::IScalarShaderPlugin

Registers the scalar shader type T in this plugin

template<typename T>
void registerNormalShader()
Template Parameters

T – Class deriving from Ocean::Sdk::INormalShaderPlugin

Registers the normal shader type T in this plugin

OceanPlugin *instance

Pointer to the OceanPlugin instance

Overloaded from DLLInterface

int32_t OceanPlugin::getOceanInterfaceVersion()

[virtual]

Returns

The SDK interface version

Returns the SDK interface version. It must return 3 in this version of the API. This allows incompatible versions of Ocean to detect obsolete plugins.

const char *getPluginName() const

[virtual]

Returns

The plugin library name as a null terminated string

Returns the plugin name. It should not change across versions. The plugin name will be prepended to node types and should contain only lowercase ASCII letters (a-z), underscores (_) and digits (0-9).

const char *getPluginPrettyName() const

[virtual]

Returns

The plugin library pretty name as a null terminated string

Returns the plugin pretty name. It is only used in the graphical user interface and may contain any UTF-8 character. You may change it between plugin versions.

const char *getPluginCompany() const

[virtual]

Returns

The plugin company name as a null terminated string

Returns the plugin company name. It is only used in the graphical user interface and may contain any UTF-8 character.

const char *getPluginContact() const

[virtual]

Returns

The plugin developer contact as a null terminated string

Returns the plugin developer contact, that will be shown to the plugin user

int32_t getVersionMajor() const

[virtual]

Returns

The major plugin version (as X in X.Y.Z)

int32_t getVersionMinor() const

[virtual]

Returns

The minor plugin version (as Y in X.Y.Z)

int32_t getVersionRev() const

[virtual]

Returns

The minor plugin version (as Z in X.Y.Z)

PluginCount getBsdfCount() const

[virtual]

Returns

The number of BSDF types in this plugin

BsdfFactory *getBsdfFactory(PluginCount i) const

[virtual]

Parameters

i – The BSDF plugin index between 0 and getBsdfCount()

Returns

The factory (object creator) for this BSDF type

PluginCount getEnvironmentCount() const

[virtual]

Returns

The number of environment types in this plugin

BsdfFactory *getEnvironmentFactory(PluginCount i) const

[virtual]

Parameters

i – The environment plugin index between 0 and getEnvironmentCount()

Returns

The factory (object creator) for this environment type

PluginCount getFilterShaderCount() const

[virtual]

Returns

The number of filter shader types in this plugin

BsdfFactory *getFilterShaderFactory(PluginCount i) const

[virtual]

Parameters

i – The filter shader plugin index between 0 and getFilterShaderCount()

Returns

The factory (object creator) for this filter shader type

PluginCount getScalarShaderCount() const

[virtual]

Returns

The number of scalar shader types in this plugin

BsdfFactory *getScalarShaderFactory(PluginCount i) const

[virtual]

Parameters

i – The scalar shader plugin index between 0 and getScalarShaderCount()

Returns

The factory (object creator) for this scalar shader type

PluginCount getNormalShaderCount() const

[virtual]

Returns

The number of normal shader types in this plugin

BsdfFactory *getNormalShaderFactory(PluginCount i) const

[virtual]

Parameters

i – The normal shader plugin index between 0 and getNormalShaderCount()

Returns

The factory (object creator) for this normal shader type

NodeDeleter *getNodeDeleter() const

[virtual]

Returns

The common deleter for all nodes in this plugin

~DLLInterface()

[virtual]

The destructor for DLLInterface