If you have an existing "Igor Pro 6.3 Folder" on the disk you'll be installing to, either remove or rename the folder to avoid overwriting the existing Igor files. If you want to run Igor on an earlier operating system, you must run Igor Pro 6.0x or earlier. Igor Pro 6.3 runs natively on PowerPC and Intel processors. Igor Pro 6.3 requires Mac OS X 10.4 or later. Igor Pro 6.3 System Requirements (Macintosh) Wide-Angle Neutron Spin Echo Spectroscopy.Of course one would have to warn the user that procedures are about to be overwritten. If you then quit and reload IGOR the new file will be used. The file is changed even though IGOR doesn't think so. However, I've just been experimenting with overwriting live procedure files with my zip xop. You wouldn't believe (well ok you probably do) how difficult it is for some people to create shortcuts. It is best to take as much strain off non-expert users as possible. The reason I want to do this is a lot of packages have a) a lot of files and b) it is quite hard for all those files to go in the right place, with the right shortcuts, etc. I hadn't totally envisaged the dynamic loading. User Procedures, create necessary shortcuts in /Igor Procedures and /Igor Extensions, before quitting IGOR so the user could then restart Igor. Thus the install would write files to e.g. Originally what I had in mind was a way of installing packages so that the next time IGOR was run those procedures would be available. What Howard talks about here is a dynamic load of XOP's and procedure files whilst IGOR is still running. Having said that, if you want to take a crack at it, more power to you! So rather than add pieces of the puzzle little-by-little, I prefer to wait until we have the time to think it out in advance. This would drag us little-by-little into the project and we might wind up doing it ourselves anyway or wind up with a hybrid that is kludgier than a built-in package installer would be. I suspect that you would want changes to Igor to accomodate the package installer. I suspect if we were to implement this internal to Igor it would lead to many changes within Igor itself. This is just what comes to mind with five minutes of thought. This is too kludgy and fragile for my taste. This therefore means that you have to run some procedure that calls Execute/P, let the procedure finish so that the Execute/P gets serviced and then run some other procedure to replace the package procedure files, let the second procedure finish so procedures can be compiled, and start a third procedure to launch the package. Since you can't close a procedure file while procedures are running, this can be done only via Execute/P. I have had on my to-do list to eliminate this requirement but it has never reached the top of the list.Īnother problem is closing procedure files in order to replace them with a newer version. End DigressionĪnother problem is that you have to quit and restart Igor to load XOPs. You can access this location using SpecialDirPath. This requires a new feature inside Igor.ĭigression - Igor Pro 6.1 adds the "Igor Pro 6 User Files" idea which provides the well-known place. This would require that Igor look in a well known place for some configuration file that would specify the package loader menu item. Thus what is required is a way for a package to add a menu item without being loaded. If the user has dozens of packages available that means dozens of procedure files in Igor Procedures. In order to add a menu, a user procedure must put a procedure file in Igor Procedures. There is no equivalent to WMMenus.ipf for user procedures. Thus with just one procedure file, the user has menu access to many packages. The packages are not loaded until the user chooses the menu item. It adds menu items to various menus which load packages. WMMMenus.ipf is installed in the Igor Procedures folder all the time. This is desirable because the user may have dozens of packages on his hard drive but does not want all of their procedure files loaded all of the time.įor WaveMetrics packages this is solved via the WMMenus procedure file (which is now an independent module so you must execute "SetIgorOption IndependentModuleDev=1" to see it). The first problem I ran into is how to make the package available to the end user without actually loading the package. The goal was just to create shortcuts from a package folder for procedure and help files. I started to write a simple Igor package loader a couple of years ago. Howard, could you specify what sort of problems you think would arise if this was not implemented directly in the Igor source? If they are not insurmountable maybe it is worth trying it as a normal Igor user project since it seems like the interest is there for development. Something like Synaptic Package Manager on Debian/Ubuntu but for Igor.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |