Fixed MFP1D export from Igor 4 (wavenote was not complete)
authorillysam <devnull@localhost>
Wed, 29 Jul 2009 17:19:47 +0000 (17:19 +0000)
committerillysam <devnull@localhost>
Wed, 29 Jul 2009 17:19:47 +0000 (17:19 +0000)
mfp_igor_scripts/ExportMFP1D.ipf

index 0e0c0feac28e97f3b1d690715e6435296e6c290c..aad09cf17425ef679bbd908805aaa732c7cedd38 100644 (file)
@@ -1,6 +1,6 @@
 #pragma rtGlobals=1            // Use modern global access method.\r
 #pragma IgorVersion = 4.0\r
-#pragma version = 0.3\r
+#pragma version = 0.4\r
 \r
 //\r
 // ExportMFP1D.ipf - A procedure to export force curves from MFP1D to 'hooke'\r
@@ -12,6 +12,8 @@
 //\r
 \r
 // History\r
+// 2009 07 24: v0.4\r
+// the wave note is now correctly and fully exported in Igor 4\r
 // 2009 06 29: v0.3\r
 // split functionality into ExportMFP1DFolder and ExportMFP1DWaves\r
 // ExportMFP1DFolder: export individual Igor binary waves file from a folder\r
@@ -65,6 +67,7 @@ Function ExportMFP1DWaves()
        String sFileName2\r
        String sLine\r
        String sList\r
+       String sNote\r
        String sWaveCombined\r
        String sWaveDeflection\r
        String sWaveLVDT\r
@@ -130,7 +133,19 @@ Function ExportMFP1DWaves()
 \r
                // add the note to the file\r
                // the notes are identical for LVDT and Deflection\r
-               fprintf iRefNum, note(wLVDT)\r
+// the following only works in Igor 5 and up\r
+//             fprintf iRefNum, note(wDeflection)\r
+// END: the following only works in Igor 5 and up\r
+               sNote=note(wLVDT)\r
+               // in order to get the correct number of lines in the note, we have to specify the EOF as \r\n\r
+               for(iCount=0; iCount<ItemsInList(sNote, "\r\n");iCount+=1)\r
+                       // print every line to the output file\r
+                       fprintf iRefNum, StringFromList(iCount, sNote, "\r\n")\r
+                       // add a CR/LF for every but the last line\r
+                       if(iCount<ItemsInList(sNote, "\r\n")-1)\r
+                               fprintf iRefNum, "\r\n"\r
+                       endif\r
+               endfor\r
 \r
                // separate the approach from the retraction\r
                // by simply taking the first half of the points to be the approach\r