pion::plugin_instance_ptr< InterfaceClassType > Class Template Reference

`#include <plugin.hpp>`

Inherits noncopyable.

## Public Member Functions

| plugin_instance_ptr (void)
| default constructor & destructor
virtual | ~plugin_instance_ptr ()
| virtual destructor / may be extended
void | reset (void)
| reset the instance pointer
void | create (const std::string &plugin_type)
| create a new instance of the given plugin_type
bool | empty (void) const
| returns true if pointer is empty
InterfaceClassType * | get (void)
| return a raw pointer to the instance
InterfaceClassType & | operator* (void)
| return a reference to the instance
const InterfaceClassType & | operator* (void) const
| return a const reference to the instance
InterfaceClassType * | operator-> (void)
| return a reference to the instance
const InterfaceClassType * | operator-> (void) const
| return a const reference to the instance

## Protected Attributes

plugin_ptr< InterfaceClassType > | m_plugin_ptr
| smart pointer that manages the plugin's dynamic object code
InterfaceClassType * | m_instance_ptr
| raw pointer to the plugin instance

## Detailed Description

### template<typename InterfaceClassType>
class pion::plugin_instance_ptr< InterfaceClassType >

plugin_instance_ptr: smart pointer that manages a plug-in instance

Definition at line 355 of file plugin.hpp.

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

- include/pion/plugin.hpp