// // Programmer: Craig Stuart Sapp // Creation Date: Sat May 23 21:08:48 PDT 1998 // Last Modified: Fri Jul 3 14:18:04 PDT 1998 // Last Modified: Sat Oct 14 20:26:15 PDT 2000 (revised for museinfo 1.0) // Filename: ...sig/examples/all/sonority.cpp // Web Address: http://sig.sapp.org/examples/museinfo/humdrum/sonority.cpp // Syntax: C++; museinfo // // Description: Analyzes **kern data for timeslice chord qualities // #include "humdrum.h" #include #include #ifndef OLDCPP #include using namespace std; #else #include #endif // function declarations void checkOptions (Options& opts, int argc, char* argv[]); void determineChordQuality (ChordQuality& cq, const HumdrumRecord& aRecord); void example (void); void processRecords (HumdrumFile& infile, HumdrumFile& outfile); void usage (const char* command); // global variables Options options; // database for command-line arguments char unknown[256] = {0}; // space for unknown chord simplification int chordinit; // for initializing chord detection function /////////////////////////////////////////////////////////////////////////// int main(int argc, char* argv[]) { HumdrumFile infile, outfile; // process the command-line options checkOptions(options, argc, argv); // figure out the number of input files to process int numinputs = options.getArgCount(); for (int i=0; i lastnotes; // for keeping track of null record notes int i; if (chordinit) { chordinit = 0; lastnotes.setSize(aRecord.getFieldCount()); for (i=0; i currentNotes(lastnotes.getSize()); int count = 0; for (i=0; i