Add OFX plugin support and related infrastructure
This commit extends the OFX plugin support in Olive by: - Initializing and scanning for OFX plugins - Updating PluginNode to handle OFX plugin parameters and inputs - Adding necessary methods and properties for OFX plugin integration - Enhancing NodeFactory to include OFX plugin nodes - Refactoring and renaming OliveInstance to OlivePluginInstance - Introducing new classes for parameter handling (ParamInstance) - Adding PluginJob for rendering OFX plugins - Adjusting CMakeLists.txt files to include new source files
This commit is contained in:
@@ -26,22 +26,15 @@
|
||||
#include <QDir>
|
||||
#include "OliveHost.h"
|
||||
|
||||
#include "OliveInstance.h"
|
||||
#include "OlivePluginInstance.h"
|
||||
#include "common/Current.h"
|
||||
using namespace OFX::Host;
|
||||
using namespace olive::plugin;
|
||||
void loadPlugins(QString path)
|
||||
|
||||
void olive::plugin::loadPlugins(QString path)
|
||||
{
|
||||
QDir dir=(QCoreApplication::applicationDirPath()+path);
|
||||
QFileInfoList files=dir.entryInfoList();
|
||||
for (auto& file:files) {
|
||||
if (file.isDir()) {
|
||||
OFX::Binary binary(file.absoluteFilePath().toStdString());
|
||||
|
||||
}
|
||||
}
|
||||
OFX::Host::ImageEffect::PluginCache imageEffectPluginCache(myHost);
|
||||
}
|
||||
|
||||
OliveHost::~OliveHost()
|
||||
{
|
||||
for(auto& descriptor:descriptors_){
|
||||
@@ -82,7 +75,7 @@ OFX::Host::ImageEffect::Instance* OliveHost::newInstance(void* clientData,
|
||||
OFX::Host::ImageEffect::ImageEffectPlugin* plugin,
|
||||
OFX::Host::ImageEffect::Descriptor& desc,
|
||||
const std::string& context){
|
||||
ImageEffect::Instance* instance=new OliveInstance(plugin,desc,context,Current::getInstance().interactive());
|
||||
ImageEffect::Instance* instance=new OlivePluginInstance(plugin,desc,context,Current::getInstance().interactive());
|
||||
instances_.append(instance);
|
||||
return instance;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user