gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

n2xPatchManager.h (1352B)


      1 #pragma once
      2 
      3 #include "jucePluginEditorLib/patchmanager/patchmanager.h"
      4 
      5 namespace n2xJucePlugin
      6 {
      7 	class Editor;
      8 	class Controller;
      9 
     10 	class PatchManager : public jucePluginEditorLib::patchManager::PatchManager
     11 	{
     12 	public:
     13 		PatchManager(Editor& _editor, Component* _root);
     14 		~PatchManager() override;
     15 
     16 		// PatchManager overrides
     17 		bool requestPatchForPart(pluginLib::patchDB::Data& _data, uint32_t _part, uint64_t _userData) override;
     18 		bool loadRomData(pluginLib::patchDB::DataList& _results, uint32_t _bank, uint32_t _program) override;
     19 		pluginLib::patchDB::PatchPtr initializePatch(pluginLib::patchDB::Data&& _sysex, const std::string& _defaultPatchName) override;
     20 		pluginLib::patchDB::Data applyModifications(const pluginLib::patchDB::PatchPtr& _patch, const pluginLib::FileType& _fileType, pluginLib::ExportType _exportType) const override;
     21 		uint32_t getCurrentPart() const override;
     22 		bool activatePatch(const pluginLib::patchDB::PatchPtr& _patch, uint32_t _part) override;
     23 		bool parseFileData(pluginLib::patchDB::DataList& _results, const pluginLib::patchDB::Data& _data) override;
     24 
     25 		static std::string getPatchName(const pluginLib::patchDB::Data& _sysex, const std::string& _defaultPatchName = {});
     26 		static bool isValidPatchDump(const pluginLib::patchDB::Data& _sysex);
     27 
     28 	private:
     29 		Editor& m_editor;
     30 		Controller& m_controller;
     31 	};
     32 }