//
// Programmer: Craig Stuart Sapp <craig@ccrma.stanford.edu>
// Creation Date: Sat May 23 21:08:48 PDT 1998
// Last Modified: Mon Dec 4 13:29:26 PST 2000 (new Humdrum Record defines)
// Filename: ...museinfo/examples/all/hparser.cpp
// Web Address: http://sig.sapp.org/examples/museinfo/humdrum/hparser.cpp
// Syntax: C++; museinfo
//
// Description: Basic Humdrum Parser.
//
#include "humdrum.h"
int main(int argc, char** argv) {
if (argc != 2) {
cout << "Usage: " << argv[0] << " input-kern-file" << endl;
exit(1);
}
HumdrumFile input(argv[1]);
for (int i=0; i<input.getNumLines(); i++) {
switch (input[i].getType()) {
case E_humrec_none:
cout << "Line = blank" << endl;
break;
case E_humrec_empty:
cout << "Line = empty" << endl;
break;
case E_humrec_global_comment:
cout << "Line = global comment" << endl;
break;
case E_humrec_bibliography:
cout << "Line = bibliographic record" << endl;
break;
case E_humrec_data_comment:
cout << "Line = local comment" << endl;
break;
case E_humrec_data_kern_measure:
cout << "Line = measure" << endl;
break;
case E_humrec_interpretation:
cout << "Line = Interpretation" << endl;
break;
case E_humrec_data:
cout << "Line = DATA" << endl;
break;
default:
cout << "Line = UNKNOWN" << endl;
break;
}
}
return 0;
}
// md5sum: 9e65b45e2ef5858d82198778c1e8ea58 hparser.cpp [20050403]