diff options
| author | Mikaël Capelle <capelle.mikael@gmail.com> | 2020-11-11 22:45:33 +0100 |
|---|---|---|
| committer | Mikaël Capelle <capelle.mikael@gmail.com> | 2020-11-11 22:45:33 +0100 |
| commit | 90beed8c7b356ef58431721ffe8eb4abff3da032 (patch) | |
| tree | dae08a323a54f9a53d05e6d3d50cbe40fd094da1 /src/plugincontainer.h | |
| parent | 7ec0128eb59c085cd5961995280238cc22683b8e (diff) | |
Handle proxy dependencies differently.
Diffstat (limited to 'src/plugincontainer.h')
| -rw-r--r-- | src/plugincontainer.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/plugincontainer.h b/src/plugincontainer.h index e9761cb1..b37b48cd 100644 --- a/src/plugincontainer.h +++ b/src/plugincontainer.h @@ -50,6 +50,11 @@ public: MOBase::IPluginProxy* proxy() const;
/**
+ * @return the list of plugins this plugin proxies (if it's a proxy plugin).
+ */
+ std::vector<MOBase::IPlugin*> proxied() const;
+
+ /**
* @return the master of this plugin, if any.
*/
MOBase::IPlugin* master() const;
@@ -81,6 +86,11 @@ private: // Accumulator version for requiredFor() to avoid infinite recursion.
void requiredFor(std::vector<MOBase::IPlugin*>& required, std::set<MOBase::IPlugin*>& visited) const;
+ // Retrieve the requirements from the underlying plugin, take ownership on them
+ // and store them. We cannot do this in the constructor because we want to have a
+ // constructed object before calling init().
+ void fetchRequirements();
+
friend class PluginContainer;
PluginContainer* m_PluginContainer;
|
