Katana Plug-in APIs 0.1
Public Member Functions

Foundry::Katana::ViewerAPI::ViewerDelegateWrapper Class Reference

The ViewerDelegate class accessed by other plugins. More...

#include <FnViewerDelegate.h>

Inheritance diagram for Foundry::Katana::ViewerAPI::ViewerDelegateWrapper:
Foundry::Katana::ViewerAPI::ViewerDelegatePluginBase

List of all members.

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.

Detailed Description

The ViewerDelegate class accessed by other plugins.


Member Function Documentation

template<class T >
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.


The documentation for this class was generated from the following file:
 All Classes Functions Variables Typedefs Enumerations Enumerator