Ejemplo n.º 1
0
 /// <summary>
 /// Constructor
 /// </summary>
 public Alphabet(eLetterOrder letterOrder)
 {
     this.SetLetterOrder(letterOrder);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Set the ordering of the letters.  Either flat alphabetical ordering, or
        /// ordering that makes the code sequences per letter the same as morse code.
        /// </summary>
        /// <param name="letterOrder"></param>
        public void SetLetterOrder(eLetterOrder letterOrder)
        {
            _currentLetterOrder = letterOrder;

            switch (_currentLetterOrder)
            {
                case eLetterOrder.ALPHABETICAL:
                    Letters = LettersAlphabeticalOrder;
                    break;

                case eLetterOrder.MORSE_CODE:
                    Letters = LettersMorseCodeOrder;
                    break;

                default:
                    _currentLetterOrder = eLetterOrder.ALPHABETICAL;
                    Letters = LettersAlphabeticalOrder;
                    throw new Exception("Enumeration not defined in eLetterOrder: " + _currentLetterOrder.ToString());

            }

            START_INDEX = 0;
            LAST_INDEX = Letters.Length - 1;
            MIDDLE_INDEX = (LAST_INDEX - START_INDEX) / 2;

            this.ResetSearchIndexes();
        }