public IEnumerable <MatrixFileHelper> ReadFiles()
        {
            IList <string> fileNames  = Directory.GetFiles(_directory);
            int            filesCount = fileNames.Count;

            _logger.Log(string.Format("Reading {0} files", filesCount));

            int currentFile = 0;

            foreach (string name in fileNames)
            {
                _logger.Log(string.Format("Reading file {0} out of {1}: {2}", ++currentFile, filesCount, name));

                if (!Path.GetExtension(name).Equals(".txt"))
                {
                    _logger.Error(string.Format("File {0} doesn't have the .txt extension", name));
                }
                else
                {
                    var fileHelper = MatrixFileHelper.TryInit(name, File.ReadAllText(name));
                    if (fileHelper != null)
                    {
                        yield return(fileHelper);
                    }
                }
            }
        }