public void LoadBlocks(MyNode holder, bool recursive, string path) { MyMemoryBlockSerializer serializer = new MyMemoryBlockSerializer(); MemoryAction action = delegate(MyAbstractMemoryBlock memoryBlock) { if (memoryBlock.Persistable) { serializer.LoadBlock(memoryBlock, path); } }; IterateBlocks(holder, true, action); }
// TODO: remove? private IDictionary <string, MyAbstractMemoryBlock> CollectMemoryBlocks() { var memBlocks = new Dictionary <string, MyAbstractMemoryBlock>(); foreach (var memoryBlockList in m_memoryBlocks.Values) { foreach (MyAbstractMemoryBlock memoryBlock in memoryBlockList) { string memBlockName = MyMemoryBlockSerializer.GetUniqueName(memoryBlock); if (!memBlocks.ContainsKey(memBlockName)) { memBlocks.Add(memBlockName, memoryBlock); } } } return(memBlocks); }
private void SaveBlocks(IEnumerable<MyWorkingNode> nodeList) { MyMemoryBlockSerializer serializer = new MyMemoryBlockSerializer(); var isFirst = true; foreach (MyWorkingNode node in nodeList) { if (SaveAllNodesData || node.SaveOnStop) { foreach (MyAbstractMemoryBlock mb in MyMemoryManager.Instance.GetBlocks(node)) { if (mb.Persistable) { if (isFirst) MyLog.INFO.WriteLine("Saving state to: " + MyMemoryBlockSerializer.GetTempStorage(m_project)); isFirst = false; serializer.SaveBlock(mb); } } } } }
private void LoadBlocks(IEnumerable<MyWorkingNode> nodeList) { MyMemoryBlockSerializer serializer = new MyMemoryBlockSerializer(); var isFirst = true; foreach (MyWorkingNode node in nodeList) { if (LoadAllNodesData || node.LoadOnStart) { foreach (MyAbstractMemoryBlock mb in MyMemoryManager.Instance.GetBlocks(node)) { if (mb.Persistable) { if (isFirst) MyLog.INFO.WriteLine("Loading state from: " + MyMemoryBlockSerializer.GetTempStorage(m_project)); isFirst = false; serializer.LoadBlock(mb, GlobalDataFolder); } } } } }
private void SaveBlocks(List<MyWorkingNode> nodeList) { MyMemoryBlockSerializer serializer = new MyMemoryBlockSerializer(); for (int j = 0; j < nodeList.Count; j++) { MyWorkingNode node = nodeList[j]; if (SaveAllNodesData || node.SaveOnStop) { foreach (MyAbstractMemoryBlock mb in MyMemoryManager.Instance.GetBlocks(node)) { if (mb.Persistable) { serializer.SaveBlock(mb); } } } } }
private void LoadBlocks(List<MyWorkingNode> nodeList) { MyMemoryBlockSerializer serializer = new MyMemoryBlockSerializer(); for (int j = 0; j < nodeList.Count; j++) { MyWorkingNode node = nodeList[j]; if (LoadAllNodesData || node.LoadOnStart) { foreach (MyAbstractMemoryBlock mb in MyMemoryManager.Instance.GetBlocks(node)) { if (mb.Persistable) { serializer.LoadBlock(mb, GlobalDataFolder); } } } } }