E.g. if I want to, given a window.bin file, figure out 'what objects are in this file and what tags are they tied to'.
EDIT: The best way for me to do this might be via the scripting API inside the designer, rather than from the BIN files. Is there an easy way to have a script inside the designer e.g. wait for a file to be written on the host filesystem, then based on the contents of that file do some programmatic analysis/modification of the project?
No, but modern Ignition can be told to save windows/templates in the underlying XML format. You may need to open and then save every resource involved, though.
Correct. It's format is an implementation detail and rather convoluted. It helps if you notice that any component that has a binding gets encoded with the window's InteractionController instead of producing a simple tree of containers and components.
(But I've thought about adding something to my Integration Toolkit for pure designer events, defined outside any project. Hmm. After I'm ready for v8.3, perhaps.)
What about to have scripts run on a particular project (to e.g. read/modify windows) based on e.g. the presence of a particular file in a directory which contains params
Sure -- I want to have a script on the designer in a specific project that e.g.
"Watches for a file on its host filesystem containing a list of objects to create in a window"
"When it receives those files, it checks the window for all objects, then modifies the objects that match to have the params from the file, and adds the objects that don't match, then saves the project"