I've been overhauling my live rig environment and I have better separation of functionality as well as having everything in a single window.
In particular (see picture), my main window contains mixer, control surface, available VSTs and then, most importantly, a bpatcher that contains the current "song", a loaded patcher that contains
(A) The persistance of all sliders, dials, VST settings
(B) Routing of input devices (keyboards, control surfaces) to output devices (external synths, VSTs, etc)
Essentially, the "song" that is loaded contains a dictionary that knows how to persist any changes made in the main console and reload them when that "song" is loaded again. The song is loaded into the bpatcher through a script that replaces whatever was previously in the bpatche with the new song patcher.
In my older version, that "song" patcher was not embedded in the console window and just got loaded on the fly upon receipt of a program change. If I wanted to change the routings, I could just unlock that patcher, make the changes and save again.
So my question is, is there a scripting command that I can send to that bpatcher that will open the original view of the song patcher so that I can edit/save it and then reload? Right now, all I can apparently do is get a new view of the underlying song (but editing is not saved) or I can get a brand new patcher window with the contents. I'd like to be able to easily just open the real underlying patcher?