MusicBoxConverter/MusicBoxConverter/Program.cs

73 lines
1.4 KiB
C#
Raw Normal View History

using System;
2017-12-04 12:38:15 +00:00
using Melanchall.DryWetMidi.Common;
2017-12-04 12:38:15 +00:00
using SBRL.Utilities;
namespace MusicBoxConverter
{
class MainClass
{
2017-12-04 12:38:15 +00:00
public static int Main(string[] args)
{
2017-12-04 12:38:15 +00:00
string inputFilename = "";
string outputFilename = "";
bool debug = false;
for(int i = 0; i < args.Length; i++)
{
switch(args[i])
{
case "-i":
case "--input":
inputFilename = args[++i];
break;
case "-o":
case "--output":
outputFilename = args[++i];
break;
case "--auto-dev":
inputFilename = "/home/sbrl/Music/Sheets/HappyBirthday.midi";
//inputFilename = "/tmp/Scale.midi";
outputFilename = "/tmp/test.svg";
break;
case "--debug":
debug = true;
break;
case "-h":
case "--help":
Console.Error.WriteLine(EmbeddedFiles.ReadAllText("MusicBoxConverter.Help.txt"));
return 0;
default:
Console.Error.WriteLine("Error: Unknown option {0}.", args[i]);
return 1;
}
}
if(inputFilename == string.Empty) {
Console.Error.WriteLine("Error: No input file specified.");
return 1;
}
if(outputFilename == string.Empty) {
Console.Error.WriteLine("Error: No output file specified.");
return 1;
}
MusicBoxScoreGenerator converter = new MusicBoxScoreGenerator(
inputFilename,
2017-12-02 19:47:40 +00:00
MusicBox.Note30
);
2017-12-04 12:38:15 +00:00
converter.Debug = debug;
converter.Output(outputFilename);
return 0;
}
}
}