Exemple #1
0
        private void exportStateButton_Click(object sender, EventArgs e)
        {
            if (saveMemFileDialog.ShowDialog(this) == DialogResult.OK)
            {
                try
                {
                    string dataFolder = MyProject.MakeDataFolderFromFileName(saveMemFileDialog.FileName);

                    MyMemoryBlockSerializer.ExportTempStorage(Project, dataFolder);

                    MyNetworkState networkState = new MyNetworkState()
                    {
                        ProjectName          = Project.Name,
                        MemoryBlocksLocation = dataFolder,
                        SimulationStep       = SimulationHandler.SimulationStep
                    };

                    YAXSerializer serializer = new YAXSerializer(typeof(MyNetworkState),
                                                                 YAXExceptionHandlingPolicies.ThrowErrorsOnly,
                                                                 YAXExceptionTypes.Warning);

                    serializer.SerializeToFile(networkState, saveMemFileDialog.FileName);
                    MyLog.INFO.WriteLine("Saving state: " + saveMemFileDialog.FileName);
                }
                catch (Exception ex)
                {
                    MyLog.ERROR.WriteLine("Saving state failed: " + ex.Message);
                }
            }
        }
Exemple #2
0
        public void SaveState(string fileName, uint simulationStep)
        {
            try
            {
                string dataFolder = MyProject.MakeDataFolderFromFileName(fileName);

                MyNetworkState networkState = new MyNetworkState()
                {
                    ProjectName          = Owner.Name,
                    MemoryBlocksLocation = dataFolder,
                    SimulationStep       = simulationStep
                };

                YAXSerializer serializer = new YAXSerializer(typeof(MyNetworkState),
                                                             YAXExceptionHandlingPolicies.ThrowErrorsOnly,
                                                             YAXExceptionTypes.Warning);

                serializer.SerializeToFile(networkState, fileName);

                if (Directory.Exists(dataFolder))
                {
                    Directory.Delete(dataFolder, true);
                }

                Directory.CreateDirectory(dataFolder);
                MyMemoryManager.Instance.SaveBlocks(this, true, dataFolder);
            }
            catch (Exception e)
            {
                MyLog.ERROR.WriteLine("Saving state failed: " + e.Message);
            }
        }
Exemple #3
0
        private void setGlobalDataFolderToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (openMemFileDialog.ShowDialog(this) == DialogResult.OK)
            {
                string dataFolder = MyProject.MakeDataFolderFromFileName(openMemFileDialog.FileName);

                SimulationHandler.Simulation.GlobalDataFolder  = dataFolder;
                setGlobalDataFolderToolStripMenuItem.Text      = "Change global data folder: " + SimulationHandler.Simulation.GlobalDataFolder;
                clearGlobalDataFolderToolStripMenuItem.Visible = true;
            }
        }