|
Katana Plug-in APIs 0.1
|
The ViewerDelegate class accessed by other plugins. More...
#include <FnViewerDelegate.h>
Public Member Functions | |
| template<class T > | |
| T * | getPluginInstance () |
| Gets a pointer to the real plugin instance. | |
| void | setOption (OptionIdGenerator::value_type optionId, FnAttribute::Attribute attr) |
| Sets a ViewerDelegate option. | |
| FnAttribute::Attribute | getOption (OptionIdGenerator::value_type optionId) |
| Gets a ViewerDelegate option. | |
| void | setOption (const std::string &name, FnAttribute::Attribute attr) |
| Sets a ViewerDelegate option. | |
| FnAttribute::Attribute | getOption (const std::string &name) |
| Gets a ViewerDelegate option. | |
The ViewerDelegate class accessed by other plugins.
| T* Foundry::Katana::ViewerAPI::ViewerDelegateWrapper::getPluginInstance | ( | ) | [inline] |
Gets a pointer to the real plugin instance.
WARNING: This function purposely breaks the compiler agnostic pattern of the Katana plugin API, so it needs to be used with care. This performs a dynamic cast to the real type so the implications of what that means in different circumstances should be understood. If the caller and plugin instance are not contained in the same shared library the RTTI check may fail.
This function allows a plugin wrapper to return the actual plugin class. The plugin is returned as a pointer to a child class of ViewerDelegate that is a registerd plugin. The type of that child class needs to be specified in the template, so that it can be properly cast. If the specified type doesn't match the plugin type then NULL is returned.
1.7.3