/// <summary>
        /// Сохранить описание контроллера, шины в main.io.lua и main.wago.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveIOFile(ParametersForSave par)
        {
            string fileName   = par.path + @"\" + mainIOFileName;
            var    fileWriter = new StreamWriter(fileName, false,
                                                 EncodingDetector.MainFilesEncoding);

            fileWriter.WriteLine("--version  = {0}", mainIOFileVersion);
            fileWriter.WriteLine(new string('-', numberOfDashes));
            fileWriter.WriteLine("PAC_name       = \'{0}\'", par.PAC_Name);

            ushort crc = ProjectManager.CRC16(par.PAC_Name);

            fileWriter.WriteLine("PAC_id         = \'{0}\'", crc);
            fileWriter.WriteLine(new string('-', numberOfDashes));

            fileWriter.Write(IOManager.SaveAsLuaTable(""));
            fileWriter.Write(deviceManager.SaveAsLuaTable(""));

            fileWriter.Flush();
            fileWriter.Close();

            // Делаем копию с другим именем (IO.lua и WAGO.lua идентичный)
            File.Copy(par.path + @"\" + mainIOFileName,
                      par.path + @"\" + mainWagoFileName, true);
        }
        private static void SaveSharedFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + sharedFileName;

            if (!File.Exists(fileName))
            {
                string sharedContent = Properties.Resources.ResourceManager
                                       .GetString("sharedFilePattern");
                File.WriteAllText(fileName, sharedContent,
                                  EncodingDetector.MainFilesEncoding);
            }
        }
        /// <summary>
        /// Сохранить файл для modbus в main.modbus.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveModbusFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainModbusSRVFileName;

            if (!File.Exists(fileName))
            {
                //Создаем базовое описание сервера MODBUS.
                string modBusContent = Properties.Resources.ResourceManager
                                       .GetString("modbusSRVFilePattern");
                File.WriteAllText(fileName, modBusContent,
                                  EncodingDetector.MainFilesEncoding);
            }
        }
        /// <summary>
        /// Сохранить ограничения проекта в main.restrictions.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveRestrictionsFile(ParametersForSave par)
        {
            string filePattern = Properties.Resources.ResourceManager
                                 .GetString("mainRestrictionsPattern");
            string resctrictions = techObjectManager
                                   .SaveRestrictionAsLua("");
            var restrictionsFileData = string.Format(filePattern,
                                                     mainRestrictionsFileVersion, resctrictions);

            string fileName = par.path + @"\" + MainRestrictionsFileName;

            File.WriteAllText(fileName, restrictionsFileData,
                              EncodingDetector.MainFilesEncoding);
        }
        /// <summary>
        /// Сохранить программное описание проекта в prg.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SavePrgFile(ParametersForSave par)
        {
            string fileName   = par.path + @"\" + mainPRGFileName;
            var    fileWriter = new StreamWriter(fileName,
                                                 false, EncodingDetector.MainFilesEncoding);

            fileWriter.WriteLine("--version  = {0}", mainPRGFileVersion);
            fileWriter.WriteLine("--PAC_name = \'{0}\'", par.PAC_Name);
            fileWriter.WriteLine(new string('-', numberOfDashes));
            fileWriter.WriteLine(new string('-', numberOfDashes));
            fileWriter.WriteLine(PrgLuaSaver.Save("\t"));

            fileWriter.Flush();
            fileWriter.Close();
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Сохранить файл для modbus в main.modbus.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveModbusFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainModbusSRVFileName;

            if (!File.Exists(fileName))
            {
                //Создаем пустое описание сервера MODBUS.
                string content = "--version  = 1\n";
                content += "--Описание сервера MODBUS\n";
                content += new string('-', numberOfDashes) + "\n";

                File.WriteAllText(fileName, content,
                                  EncodingDetector.MainFilesEncoding);
            }
        }
        /// <summary>
        /// Сохранить объекты проекта в main.objects.lua.
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveTechObjectsFile(ParametersForSave par)
        {
            string filePattern = Properties.Resources.ResourceManager
                                 .GetString("mainObjectsPattern");
            string desctiption         = techObjectManager.SaveAsLuaTable("");
            var    descriptionFileData = string.Format(filePattern,
                                                       mainTechObjectsFileVersion, par.PAC_Name, desctiption);

            string fileName   = par.path + @"\" + MainTechObjectsFileName;
            var    fileWriter = new StreamWriter(fileName, false,
                                                 EncodingDetector.MainFilesEncoding);

            fileWriter.Write(descriptionFileData);
            fileWriter.Flush();
            fileWriter.Close();
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Сохранить файл для modbus в main.modbus.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveModbusFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainModbusSRVFileName;

            if (!File.Exists(fileName))
            {
                //Создаем пустое описание сервера MODBUS.
                var fileWriter = new StreamWriter(fileName,
                                                  false, Encoding.GetEncoding(1251));
                fileWriter.WriteLine("--version  = 1");
                fileWriter.WriteLine(new string('-', numberOfDashes));

                fileWriter.Flush();
                fileWriter.Close();
            }
        }
        /// <summary>
        /// Сохранить устройства проекта в main.devices.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveTechDevicesFile(ParametersForSave par)
        {
            string fileName   = par.path + @"\" + mainTechDevicesFileName;
            var    fileWriter = new StreamWriter(fileName,
                                                 false, EncodingDetector.MainFilesEncoding);

            fileWriter.WriteLine("--version  = {0}",
                                 mainTechDevicesFileVersion);
            fileWriter.WriteLine("--PAC_name = \'{0}\'", par.PAC_Name);
            fileWriter.WriteLine(new string('-', numberOfDashes));
            fileWriter.WriteLine(new string('-', numberOfDashes));

            fileWriter.Write(deviceManager.SaveDevicesAsLuaScript());

            fileWriter.Flush();
            fileWriter.Close();
        }
Ejemplo n.º 10
0
        /// <summary>
        /// Сохранить ограничения проекта в main.restrictions.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveRestrictionsFile(ParametersForSave par)
        {
            string filePattern = Properties.Resources.ResourceManager
                                 .GetString("mainRestrictionsPattern");
            string resctrictions = techObjectManager
                                   .SaveRestrictionAsLua("");
            var restrictionsFileData = string.Format(filePattern,
                                                     mainRestrictionsFileVersion, resctrictions);

            string fileName   = par.path + @"\" + mainRestrictionsFileName;
            var    fileWriter = new StreamWriter(fileName, false,
                                                 Encoding.GetEncoding(1251));

            fileWriter.Write(restrictionsFileData);
            fileWriter.Flush();
            fileWriter.Close();
        }
        /// <summary>
        /// Сохранить файл для profibus в main.profibus.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveProfibusFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainProfibusFileName;

            if (!File.Exists(fileName))
            {
                //Создаем пустое описание конфигурации PROFIBUS.
                string content = "--version  = 1\n";
                content += "--Описание конфигурации PROFIBUS\n";
                content += new string('-', numberOfDashes) + "\n";
                content += "system = system or { }\n";
                content += "system.init_profibus = function()\n";
                content += "end\n";

                File.WriteAllText(fileName, content,
                                  EncodingDetector.MainFilesEncoding);
            }
        }
        /// <summary>
        /// Сохранить файл main.plua (базовая инициализация).
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveMainFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainProgramFileName;

            if (!File.Exists(fileName) && mainProgramFilePatternIsLoaded)
            {
                //Создаем пустое описание управляющей программы.
                var fileWriter = new StreamWriter(fileName,
                                                  false, EncodingDetector.MainFilesEncoding);
                string mainPluaFilePattern = mainProgramFilePattern;
                mainPluaFilePattern = mainPluaFilePattern
                                      .Replace("ProjectName", par.PAC_Name);
                fileWriter.WriteLine(mainPluaFilePattern);

                fileWriter.Flush();
                fileWriter.Close();
            }
        }
Ejemplo n.º 13
0
        /// <summary>
        /// Сохранить файл для profibus в main.profibus.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SaveProfibusFile(ParametersForSave par)
        {
            string fileName = par.path + @"\" + mainProfibusFileName;

            if (!File.Exists(fileName))
            {
                //Создаем пустое описание конфигурации PROFIBUS.
                var fileWriter = new StreamWriter(fileName,
                                                  false, Encoding.GetEncoding(1251));
                fileWriter.WriteLine("--version  = 1");
                fileWriter.WriteLine(new string('-', numberOfDashes));
                fileWriter.WriteLine("system = system or { }");
                fileWriter.WriteLine("system.init_profibus = function()");
                fileWriter.WriteLine("end");

                fileWriter.Flush();
                fileWriter.Close();
            }
        }
Ejemplo n.º 14
0
        /// <summary>
        /// Сохранить программное описание проекта в prg.lua
        /// </summary>
        /// <param name="par">Параметры</param>
        private static void SavePrgFile(ParametersForSave par)
        {
            string fileName   = par.path + @"\" + mainPRGFileName;
            var    fileWriter = new StreamWriter(fileName,
                                                 false, EncodingDetector.MainFilesEncoding);

            fileWriter.WriteLine("--version  = {0}", mainPRGFileVersion);
            fileWriter.WriteLine("--PAC_name = \'{0}\'", par.PAC_Name);
            fileWriter.WriteLine(new string('-', numberOfDashes));
            fileWriter.WriteLine(new string('-', numberOfDashes));
            string requireModules = Properties.Resources.ResourceManager
                                    .GetString("prgLuaRequireModules");

            fileWriter.WriteLine(requireModules);
            fileWriter.WriteLine("-- Основные объекты проекта (объекты, " +
                                 "описанные в Eplan).");

            fileWriter.WriteLine(PrgLuaSaver.Save("\t"));

            fileWriter.Flush();
            fileWriter.Close();
        }