Browse Source

cmXScore.c : The tempo and dynamic marking columns must be stored as quoted text so that the section numbers can be correctly parsed by cmScore.

master
Kevin Larke 8 years ago
parent
commit
c169faa083
1 changed files with 20 additions and 6 deletions
  1. 20
    6
      app/cmXScore.c

+ 20
- 6
app/cmXScore.c View File

@@ -1898,7 +1898,7 @@ cmXsRC_t _cmXScoreWriteCsvRow(
1898 1898
   }
1899 1899
 
1900 1900
   // col 17: tempo
1901
-  if( cmCsvInsertIdentColAfter(p->csvH,lcp,&lcp,tempoStr,0) != kOkCsvRC )
1901
+  if( cmCsvInsertQTextColAfter(p->csvH,lcp,&lcp,tempoStr,0) != kOkCsvRC )
1902 1902
   {
1903 1903
     rc = cmErrMsg(&p->err,kCsvFailXsRC,"CSV insert failed on eveness flag label.");
1904 1904
     goto errLabel;
@@ -1920,7 +1920,7 @@ cmXsRC_t _cmXScoreWriteCsvRow(
1920 1920
   }
1921 1921
 
1922 1922
   // col 19: dynamic marking
1923
-  if(  cmCsvInsertIdentColAfter(p->csvH, lcp, &lcp, dynStr, 0 ) != kOkCsvRC )
1923
+  if(  cmCsvInsertQTextColAfter(p->csvH, lcp, &lcp, dynStr, 0 ) != kOkCsvRC )
1924 1924
   {
1925 1925
     rc = cmErrMsg(&p->err,kCsvFailXsRC,"CSV insert failed on 'dynamics'.");
1926 1926
     goto errLabel;
@@ -2179,7 +2179,13 @@ cmXsRC_t cmXScoreWriteMidi( cmXsH_t h, const cmChar_t* fn )
2179 2179
   }
2180 2180
 }
2181 2181
 
2182
-cmXsRC_t cmXScoreTest( cmCtx_t* ctx, const cmChar_t* xmlFn, const cmChar_t* midiFn, const cmChar_t* outFn, const cmChar_t* dynFn, const cmChar_t* reorderFn )
2182
+cmXsRC_t cmXScoreTest(
2183
+  cmCtx_t* ctx,
2184
+  const cmChar_t* xmlFn,
2185
+  const cmChar_t* midiFn,
2186
+  const cmChar_t* outFn,
2187
+  const cmChar_t* dynFn,
2188
+  const cmChar_t* reorderFn )
2183 2189
 {
2184 2190
   cmXsRC_t rc;
2185 2191
   cmXsH_t h = cmXsNullHandle;
@@ -2196,15 +2202,23 @@ cmXsRC_t cmXScoreTest( cmCtx_t* ctx, const cmChar_t* xmlFn, const cmChar_t* midi
2196 2202
   if( outFn != NULL )
2197 2203
   {
2198 2204
     cmScH_t scH = cmScNullHandle;
2199
-    double srate = 96000.0;
2205
+    double srate = 44100.0;
2200 2206
     
2201 2207
     cmXScoreWriteCsv(h,outFn);
2208
+
2209
+
2210
+    cmSymTblH_t stH = cmSymTblCreate(cmSymTblNullHandle, 0, ctx );
2202 2211
     
2203
-    if( cmScoreInitialize( ctx, &scH, outFn, srate, NULL, 0, NULL, NULL, cmSymTblNullHandle) != kOkScRC )
2212
+    if( cmScoreInitialize( ctx, &scH, outFn, srate, NULL, 0, NULL, NULL, stH) != kOkScRC )
2204 2213
       cmErrMsg(&ctx->err,kFileFailXsRC,"The generated CSV file could not be parsed.");
2205 2214
     else
2215
+    {
2216
+      cmScorePrintSets(scH,&ctx->rpt);
2217
+      
2206 2218
       cmScoreFinalize(&scH);
2207
-    
2219
+    }
2220
+
2221
+    cmSymTblDestroy(&stH);
2208 2222
     
2209 2223
   }
2210 2224
   

Loading…
Cancel
Save