public ApsimFile Clone() { ApsimFile newFile = new ApsimFile(); if (MyRootNode != null) { newFile.MyRootNode = MyRootNode.Clone(newFile, null); } if (MyFactorNode != null) { newFile.MyFactorNode = MyFactorNode.Clone(newFile, newFile.MyRootNode); } newFile.Dirty = Dirty; newFile.ReadOnly = ReadOnly; newFile.MyFileName = MyFileName; newFile.DisabledEventCount = DisabledEventCount; return(newFile); }