Public Types | |
typedef SlrShader *(* | PluginBuilderVoid) (void) |
Constructor method definitions used for 'build()' methods in plugins. | |
typedef SlrShader *(* | PluginBuilder) (DD::Image::Op *parent_op) |
Public Types inherited from DD::Image::Description | |
typedef Node *(* | NodeBuilder) (void *) |
typedef std::vector< Description * > | DescriptionList |
Public Member Functions | |
PluginDescription (const char *shader_class, PluginBuilder builder) | |
Constructors set name and label to same value. More... | |
PluginDescription (const char *shader_class, PluginBuilderVoid builder) | |
const char * | shaderClass () const |
Name of the shader class without any leading pluginPrefix() or trailing pluginSuffix(). | |
Static Public Member Functions | |
static const char * | pluginPrefix () |
static const char * | pluginSuffix () |
static const PluginDescription * | find (const char *shader_class) |
Public Attributes | |
PluginBuilderVoid | builder_method |
Public Attributes inherited from DD::Image::Description | |
const char * | compiled |
const char * | plugin |
License * | license |
Additional Inherited Members | |
Protected Member Functions inherited from DD::Image::Description | |
void | ctor (void(*f)(Description *)) |
void | ctor (void(*f)(Description *), NodeBuilder nodeBuilder) |
This structure creates a subclass of SlrShader, possibly from loading a plugin file or a compiled-in Description.
slr::SlrShader::PluginDescription::PluginDescription | ( | const char * | shader_class, |
PluginBuilder | builder | ||
) |
Constructors set name and label to same value.
Constructor sets name and label to same value.
References DD::Image::Description::ctor().
slr::SlrShader::PluginDescription::PluginDescription | ( | const char * | shader_class, |
PluginBuilderVoid | builder | ||
) |
Constructor sets name and label to same value.
References DD::Image::Description::ctor().
|
inlinestatic |
Prefix and suffix strings prepended and appended to shaderClass() string to construct plugin filenames (vs. the loaded Description name)
|
static |
Find a dso description by shader class name.
If a Description already exists it's immediately returned otherwise pluginPrefix() and pluginSuffix() are added to the shaderClass() string to search for the plugin .so filename.
Returns nullptr if not found.
Find a dso description by name.
If it's been loaded before it quickly returns an existing cached PluginDescription, otherwise it prepends 'slr' to the start of the name (ie 'slrMyShaderClass') before searching the plugin paths for a matching plugin filename.
Returns nullptr if not found.
References DD::Image::plugin_error(), DD::Image::plugin_load(), DD::Image::plugin_name(), and DD::Image::plugin_path().
©2024 The Foundry Visionmongers, Ltd. All Rights Reserved. |