Browse another experiments procedures
hegedus
I love the ability to browse waves and bring them into a new experiment. Could we extend that to the procedures? I would love the ability to copy and paste some functions from one experiment into another. Yes I know I can separate out the procedure to a separate file and then load then in either adopting or just linking them. That however requires forethought that I do not always have. As I working on a project, I will recall that I had solved that problem before in another experiment. I have played around a bit with opening IP packed experiments in a text editor (BBEdit in my case) and the procedures are visible in clear text so there is a work around. It would just be nice to do it within IP it self. Perhaps import procedures to a new procedure window?
Andy
May 1, 2018 at 09:58 am - Permalink
Technical Notes\Igor Pro Tech Notes\PTN003 Writing Packed Files
so in principle you could read parts of a PXP from within Igor Pro. Some sample C code is included as well. If it is worth the effort is not my call ;)May 13, 2018 at 11:04 am - Permalink
- open a second Igor instance
- drag the experiment file with the required procedure (or function within the standard procedure window) into this instance
- copy and paste from one window into the other
- close second instance
I actually often leave one or two instances open to compare previous analysis results quickly. Works quite well. I actually would rather like a functionality to drag-and-drop / copy-paste a wave from one window into the other for a quick comparison of data (browse experiment works well enough though ;-).
May 15, 2018 at 06:35 pm - Permalink
save/c/o targetWave
quickly allows one to save the target wave as an ibw (e.g., targetWave.ibw), which can then dragged into a new experiment and loaded. It's possible to make something slightly more elaborate that, for example, saves the wave, copies to clipboard aloadwave
command (with the user-chosen file save path embedded), which can then be run in the other instance of Igor.On the topic of procedures files, one could programmatically save procedure files (e.g., http://www.igorexchange.com/node/7500) and then drag them to a new experiment. Slightly faster transfer between open pxps could be achieved by also copying to clipboard an
#include
line. However, I don't believe that this can address Andy's original request for access to procedures closed pxp files.May 16, 2018 at 12:46 pm - Permalink
All my experiments saved with the above mentioned version and platform have the following structure:
\x00\x00\x00\x00\x00\x00\x00\*\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00
Experiment recreation section until
\x07\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00
, (proc win text)Here, if you've dragged and dropped a function into the experiment, you would have something like:
OpenProc/W=(758.25,190.25,1204.5,604.25)/P=home "fn_import.ipf"
You can parse the line and load the function, substituting
home
for the experiment's path.\x07\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00
find proc window text until EOF
Here, you can directly look for functions and load them or get their source.
It is a hacky solution and will work with minimum effort once the proper binary headers are tweaked.
best,
_sk
May 18, 2018 at 01:07 am - Permalink