//
// Programmer: Craig Stuart Sapp <craig@ccrma.stanford.edu>
// Creation Date: Wed Feb 6 13:59:17 PST 2013
// Last Modified: Wed Feb 6 13:59:20 PST 2013
// Filename: ...sig/examples/all/smfinfo.cpp
// Web Address: http://sig.sapp.org/examples/museinfo/humdrum/smfinfo.cpp
// Syntax: C++; museinfo
//
// Description: Converts a single melody MIDI file/track into an ASCII text
// format with starting time and pitch.
//
#include "Array.h"
#include "Options.h"
#include <iostream>
#include <fstream>
using namespace std;
// user interface variables
Options options;
int fixQ = 0; // used with -f option
// function declarations:
void checkOptions(Options& opts, int argc, char** argv);
void example(void);
void usage(const char* command);
void fixTrackByteCounts(const char* filename);
void printInfo(const char* filename);
//////////////////////////////////////////////////////////////////////////
int main(int argc, char* argv[]) {
checkOptions(options, argc, argv);
int i;
const char* filename;
for (i=1; i<=options.getArgCount(); i++) {
filename = options.getArg(i);
if (fixQ) {
fixTrackByteCounts(filename);
} else {
printInfo(filename);
}
}
return 0;
}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////
//
// fixTrackByteCounts -- Fix the byte sizes of a Standard MIDI file.
//
void fixTrackByteCounts(const char* filename) {
ifstream infile(filename, fstream::in | ifstream::binary);
infile.seekg(0, fstream::end);
long length = infile.tellg();
cout << "LENGTH = " << length << endl;
}
//////////////////////////////
//
// fixTrackByteCounts -- Fix the byte sizes of a Standard MIDI file.
//
void printInfo(const char* filename) {
}
//////////////////////////////
//
// example --
//
void example(void) {
}
//////////////////////////////
//
// usage --
//
void usage(const char* command) {
}
// md5sum: 4af655463c2dc2f9530ad56a4d0be9f1 smfinfo.cpp [20130319]