Does XOP depend on platforms? PC vs mac

If a XOP works in windows, is it still working properly under mac?

XOPs are platform specific. However, almost all of the XOPs that ship with Igor are supported on both the Macintosh and Windows platforms, however you have to use the correct XOP file on the correct platform. For XOPs produced by other companies or by other people, you'd need to check with them to see if they support both platforms or not.
A related question:

I'm currently coding a windows only XOP (due to some proprietary DLL I have to use). Must/Can I set in the XOP a property like "win32 only"?
Or does the user get a reasonable error message when he tries to use a XOP which was compiled on the other platform?

Thanks,
Thomas
thomas_braun wrote:
A related question:

I'm currently coding a windows only XOP (due to some proprietary DLL I have to use). Must/Can I set in the XOP a property like "win32 only"?
Or does the user get a reasonable error message when he tries to use a XOP which was compiled on the other platform?

Igor won't attempt to load a .XOP file that was compiled for a different operating system, so there is no need for a "win32 only" type property. If the user tries to call a function or operation that Igor doesn't know about (such as one that would be provided by an XOP on another platform), Igor just gives a generic error message of "expected wave name, variable name, or operation".

If you call external functions or operations from Igor functions, and if you are using Igor 6 or later, you can use conditional compilation to prevent compile errors if a function that uses the XOP is compiled. But in some cases doing so might be confusing, and in fact you'd want the compile errors.
aclight wrote:

Igor won't attempt to load a .XOP file that was compiled for a different operating system, so there is no need for a "win32 only" type property.


That sounds clever. Thanks for the explanation.