18 #ifndef IGNITION_COMMON_PLUGINPTR_HH_
19 #define IGNITION_COMMON_PLUGINPTR_HH_
34 namespace detail {
template<
class,
class>
class ComposePlugin; }
52 template <
typename PluginType>
86 public: template <typename OtherPluginType>
104 public: template <typename OtherPluginType>
125 public: PluginType *operator ->() const;
130 public: PluginType &operator *() const;
197 public: operator
bool() const;
214 private:
std::unique_ptr<PluginType> dataPtr;
231 #include "ignition/common/detail/PluginPtr.hh"