public IrcDaemon(IrcMode ircMode = IrcMode.Modern) { Capabilities = new List <string>(); // Create Optionobject & Set the proper IRC Protocol Version // The protocol version cannot be changed after construction, // because the construction methods below use this Option options = new ServerOptions(ircMode); //Clean Interface to statistics, it needs the IrcDaemon Object to gather this information. stats = new ServerStats(this); // Setup Modes Infrastructure modeFactory = new ModeFactory(); supportedChannelModes = new ChannelModeList(this); supportedRanks = new RankList(this); supportedUserModes = new UserModeList(this); // The Protocol Objects commands = new CommandList(this); replies = new ServerReplies.ServerReplies(this); serverCreated = DateTime.Now; // Add Commands SetupCommands(); // Add Modes SetupModes(); //Add ChannelTypes SetupChannelTypes(); }
public IrcDaemon(IrcMode ircMode = IrcMode.Modern) { Capabilities = new List<string>(); // Create Optionobject & Set the proper IRC Protocol Version // The protocol version cannot be changed after construction, // because the construction methods below use this Option Options = new ServerOptions(ircMode); //Clean Interface to statistics, it needs the IrcDaemon Object to gather this information. Stats = new ServerStats(this); // Setup Modes Infrastructure ModeFactory = new ModeFactory(); SupportedChannelModes = new ChannelModeList(this); SupportedRanks = new RankList(this); SupportedUserModes = new UserModeList(this); // The Protocol Objects Commands = new CommandList(this); Replies = new ServerReplies.ServerReplies(this); ServerCreated = DateTime.Now; // Add Commands SetupCommands(); // Add Modes SetupModes(); //Add ChannelTypes SetupChannelTypes(); }
public void ChordFactoryTest_getChordRecomendationsByDegree() { Note key = NoteFactory.getNoteByName("C"); Note degree = NoteFactory.getNoteByName("G"); Mode mode = ModeFactory.getModeByName("Ionian"); List <Chord> recomendations = ChordFactory.getChordRecomendationsByTonic(key, degree, mode); Assert.IsTrue(recomendations.Count() > 1); }
public void ChordFactoryTest_getChordRecomendationsByLast() { Note key = NoteFactory.getNoteByName("C"); Mode mode = ModeFactory.getModeByName("Ionian"); Chord chord = ChordFactory.getChordByName("C"); List <Chord> recomendations = ChordFactory.getChordRecomendationsByLast(key, chord, mode); Assert.AreEqual("G", recomendations.ElementAt(0).getName()); }
public Song() { name = ""; key = NoteFactory.getNoteByName("C"); lyrics = new Lyric(); rhythm = new Rhythm(4, 4); mode = ModeFactory.getModeByName("Major"); musicalElements = new List <IMusicalElement>(); }
public void Mode_containsIntervalTest() { Mode mode = ModeFactory.getModeByName("Ionian"); Assert.IsTrue(mode.containsInterval("R")); Assert.IsTrue(mode.containsInterval("M2")); Assert.IsTrue(mode.containsInterval("M3")); Assert.IsTrue(mode.containsInterval("P4")); Assert.IsTrue(mode.containsInterval("P5")); Assert.IsTrue(mode.containsInterval("M6")); Assert.IsTrue(mode.containsInterval("M7")); Assert.IsFalse(mode.containsInterval("m7")); }
public void Mode_containsNoteTest() { Mode mode = ModeFactory.getModeByName("Ionian"); Note key = NoteFactory.getNoteByName("C"); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("C"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("D"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("E"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("F"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("G"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("A"), key)); Assert.IsTrue(mode.containsNote(NoteFactory.getNoteByName("B"), key)); Assert.IsFalse(mode.containsNote(NoteFactory.getNoteByName("F#"), key)); }
private static void Main(string[] args) { var windowName = Settings.Default.WindowName; if (!Window.GetWindowInfo(Window.GetHandle(windowName), out var windowInfo)) { MessageBox.Show($"{windowName} was not found", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Window.Move(windowName, new Point(0, 0), 1027, 516); var modeFactory = new ModeFactory(); var inOutManager = new InputOutput(); //var posColorManager = new ConfigConverter().Deserialize(); var posColorManager = new ButtonPositionAndColorsWindowed(); while (true) { Console.Clear(); Console.WriteLine($"{windowName} resolution should be: 1211 x 607"); Console.WriteLine($"The current window resolution denotes: {windowInfo.Width}x{windowInfo.Height}"); var selectedMode = inOutManager.SelectMode(); var mode = modeFactory.Create(selectedMode); GetConsoleManager(mode).StartListen(); switch (selectedMode) { case Mode.GeneralFarming: var refreshEnergy = inOutManager.RefreshEnergyDecision(); mode.Start(posColorManager, new ModeConfig { RefreshEnergy = refreshEnergy }); break; case Mode.Debug: mode.Start(); break; case Mode.Exit: return; default: throw new ArgumentException("Mode is not implemented"); } } }
private void SetupModes() { SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeBan>()); if (Options.IrcMode == IrcMode.Rfc2810 || Options.IrcMode == IrcMode.Modern) { SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeBanException>()); } if (Options.IrcMode == IrcMode.Modern) { SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeColorless>()); } SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeInvite>()); if (Options.IrcMode == IrcMode.Rfc2810 || Options.IrcMode == IrcMode.Modern) { SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeInviteException>()); } SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeKey>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeLimit>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeModerated>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeNoExternal>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeSecret>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModePrivate>()); SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeTopic>()); if (Options.IrcMode == IrcMode.Modern) { SupportedChannelModes.Add(ModeFactory.AddChannelMode <ModeTranslate>()); } if (Options.IrcMode == IrcMode.Modern) { SupportedRanks.Add(ModeFactory.AddChannelRank <ModeHalfOp>()); } SupportedRanks.Add(ModeFactory.AddChannelRank <ModeOp>()); SupportedRanks.Add(ModeFactory.AddChannelRank <ModeVoice>()); SupportedUserModes.Add(ModeFactory.AddUserMode <ModeLocalOperator>()); SupportedUserModes.Add(ModeFactory.AddUserMode <ModeInvisible>()); SupportedUserModes.Add(ModeFactory.AddUserMode <ModeOperator>()); SupportedUserModes.Add(ModeFactory.AddUserMode <ModeRestricted>()); SupportedUserModes.Add(ModeFactory.AddUserMode <ModeWallops>()); }
public static void changeMode(string mode) { _mode = ModeFactory.getModeByName(mode); }
public void ChordFactoryTest_getChordRecomendationsTriads() { Note key = NoteFactory.getNoteByName("C"); Mode mode = ModeFactory.getModeByName("Ionian"); List <Chord> recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("C", recomendations.ElementAt(0).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(1).getName()); Assert.AreEqual("Em", recomendations.ElementAt(2).getName()); Assert.AreEqual("F", recomendations.ElementAt(3).getName()); Assert.AreEqual("G", recomendations.ElementAt(4).getName()); Assert.AreEqual("Am", recomendations.ElementAt(5).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("F"); mode = ModeFactory.getModeByName("Lydian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("F", recomendations.ElementAt(0).getName()); Assert.AreEqual("G", recomendations.ElementAt(1).getName()); Assert.AreEqual("Am", recomendations.ElementAt(2).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(3).getName()); Assert.AreEqual("C", recomendations.ElementAt(4).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(5).getName()); Assert.AreEqual("Em", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("G"); mode = ModeFactory.getModeByName("Mixolydian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("G", recomendations.ElementAt(0).getName()); Assert.AreEqual("Am", recomendations.ElementAt(1).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(2).getName()); Assert.AreEqual("C", recomendations.ElementAt(3).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(4).getName()); Assert.AreEqual("Em", recomendations.ElementAt(5).getName()); Assert.AreEqual("F", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("D"); mode = ModeFactory.getModeByName("Dorian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("Dm", recomendations.ElementAt(0).getName()); Assert.AreEqual("Em", recomendations.ElementAt(1).getName()); Assert.AreEqual("F", recomendations.ElementAt(2).getName()); Assert.AreEqual("G", recomendations.ElementAt(3).getName()); Assert.AreEqual("Am", recomendations.ElementAt(4).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(5).getName()); Assert.AreEqual("C", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("A"); mode = ModeFactory.getModeByName("Aeolian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("Am", recomendations.ElementAt(0).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(1).getName()); Assert.AreEqual("C", recomendations.ElementAt(2).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(3).getName()); Assert.AreEqual("Em", recomendations.ElementAt(4).getName()); Assert.AreEqual("F", recomendations.ElementAt(5).getName()); Assert.AreEqual("G", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("E"); mode = ModeFactory.getModeByName("Phrygian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("Em", recomendations.ElementAt(0).getName()); Assert.AreEqual("F", recomendations.ElementAt(1).getName()); Assert.AreEqual("G", recomendations.ElementAt(2).getName()); Assert.AreEqual("Am", recomendations.ElementAt(3).getName()); Assert.AreEqual("Bdim", recomendations.ElementAt(4).getName()); Assert.AreEqual("C", recomendations.ElementAt(5).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(6).getName()); key = NoteFactory.getNoteByName("B"); mode = ModeFactory.getModeByName("Locrian"); recomendations = ChordFactory.getChordRecomendationsTriads(key, mode); Assert.AreEqual("Bdim", recomendations.ElementAt(0).getName()); Assert.AreEqual("C", recomendations.ElementAt(1).getName()); Assert.AreEqual("Dm", recomendations.ElementAt(2).getName()); Assert.AreEqual("Em", recomendations.ElementAt(3).getName()); Assert.AreEqual("F", recomendations.ElementAt(4).getName()); Assert.AreEqual("G", recomendations.ElementAt(5).getName()); Assert.AreEqual("Am", recomendations.ElementAt(6).getName()); }