Example #1
0
void convertToMusicXML(HumdrumFile& hfile) {
   pline(lev, "<?xml version=\"1.0\" standalone=\"no\"?>\n");
   pline(lev, "<!DOCTYPE score-partwise PUBLIC \"-//Recordare//DTD MusicXML 0.6a Partwise//EN\" \"//C:/Program Files/Finale 2003/Component Files/partwise.dtd\">\n");

   printGlobalComments(hfile, 1);
   pline(lev, "<score-partwise>\n");


   int count = makePartList(hfile);
   int start = 0;
   while (start < hfile.getNumLines() && 
         strncmp(hfile[start][0], "**", 2) != 0) {
      start++;
   }

   int i;
   int gcount = 0;
   if (!reverseQ) {
      for (i=hfile[start].getFieldCount()-1; i>=0; i--) {
         if (strcmp(hfile[start].getExInterp(i), "**kern") != 0) {
            continue;
         }
         gcount++;
         makePart(hfile, start, i, gcount);
         count--;
      }
   } else {
      // doing things in reverse order
      for (i=0; i<hfile[start].getFieldCount(); i++) {
         if (strcmp(hfile[start].getExInterp(i), "**kern") != 0) {
            continue;
         }
         gcount++;
         makePart(hfile, start, i, gcount);
         count--;
      }
   }

   lev = 0;

   pline(lev, "</score-partwise>\n");
   printGlobalComments(hfile, -1);
   if (count != 0) {
      cerr << "Error in generating parts: number of parts has changed" << endl;
   }
}
Example #2
0
int Branch::makeHandlers(QJsonArray *arr)
{
    return makePart(true, arr);
}
Example #3
0
int Branch::makeTransports(QJsonArray *arr)
{
    return makePart(false, arr);
}