Exemple #1
0
 /// <summary>
 /// Constructs a new score table object.
 /// </summary>
 /// <param name="entries">The entries used in the table.</param>
 /// <param name="entryMethod">The configuration-defined preferred score entry method.</param>
 public ScoreTable(TableEntry[] entries, ScoreInputType entryMethod)
 {
     if (entries == null)
     {
         throw new ArgumentNullException("entries");
     }
     if (entries.Length == 0)
     {
         throw new ArgumentException("Must provide at least one table entry");
     }
     _entries     = entries;
     _entryMethod = entryMethod;
 }
Exemple #2
0
        private static Dictionary <string, ScoreTable> Parse(XElement tableElements)
        {
            var tables = new Dictionary <string, ScoreTable>();

            foreach (XElement tableElement in tableElements.Elements("template"))
            {
                string tableName = XmlHelper.GetAttributeValue(tableElement, "name");
                if (tables.ContainsKey(tableName))
                {
                    throw XmlHelper.CreateException(tableElement, "Duplicate score table: " + tableName);
                }
                Debug.WriteLine("Loading score table: " + tableName);
                TableEntry[]   tableEntries = GetTableEntries(tableElement);
                ScoreInputType inputMethod  = GetInputMethod(tableElement);
                tables.Add(tableName, new ScoreTable(tableEntries, inputMethod));
            }
            return(tables);
        }