Quote:
Originally Posted by fundorin
I feel like we are talking about different types of maps. Let me see if I understand your approach correctly.
I see this plugin's logic divided in two parts:
1. Main script, describing surface logic. MCU, SL, others. MIDI, OSC, SYSEX, feedback parts are going here. These script aren't universal.
One should map physical controls to the widgets and configure their type in the main script.
|
Sort of...
You give widgets names and then map them to Actions.
In this regard Actions are no different than FX, as a matter of fact if you look at the code, you will see that TrackFX_Action is just one of the many actions, it's not different or special in any way from a mapping perspective.
Quote:
Originally Posted by fundorin
The main script should be placed in the folder "Integrator".
|
Sure, maybe, haven't thought about directory structure quite yet.
Quote:
Originally Posted by fundorin
2. Plugmaps. These are universal and independent from the surface. They only describe connections between widgets and fx/inst parameters.
|
No, they are required to use only widget names that exist on a given surface, they have a surface context.
Quote:
Originally Posted by fundorin
So, Widgets would store FX parameters data from Reaper (names, values and othert types) in them and would translate midi/osc data to control fx parameters in Reaper and provide feedback to the surfaces.
One can create plugmaps: define the parameters order, their type, like is it a button/fader/selector/list for the specific plugins and share them.
|
No, widgets don't store anything and plugin parameters do not have a type, you can control a parameter with just about any widget, some make more sense than others, that's all.
Quote:
Originally Posted by fundorin
Plugmaps should be placed into "Plugmaps" folder, either freely (root path) or in hierarchy, like /Plugmaps/Vendor/PluginName.txt or /Plugmaps/!Type/PluginName.txt
For example, both /Plugmaps/Arturia/Analog Lab 3.txt and /Plugmap/!EQ/Fabfilter Pro-L2.txt are valid paths. In case of duplicate maps, /!Type/PlugName.txt path has higher priority upon /Vendor/PlugName.txt and plugmap in the root /Plugmaps/ folder has higher priority than both /Vendor/ and /!Type/ subfolder maps. If plugmaps have the same name/id, the newer one would be used by integrator.
|
Don't know, once again haven't thought through directory structure, but what you describe looks overly complex and I didn't find the concept of priority very useful in this context (both duplicates and date stamps).
Quote:
Originally Posted by fundorin
The plugin itself should load the needed plugmap, based on the filename or on the first line inside the map, that would have the plugin's name/id. I'd prefer filename, though, since it's easier to rename, in case of renaming the plugin itself inside the Reaper.
|
Nope, the plugin simply asks if there is a map available, it has no clue about filenames, filesystems, etc.
Quote:
Originally Posted by fundorin
Are we sharing the same vision here or not?
|
Not sure, at a very general level, yes, but as far as details, we seem quite far apart on some things.