Changeset 1669
- Timestamp:
- 04/27/09 14:45:44 (16 years ago)
- Location:
- trunk/sources
- Files:
-
- 22 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Data/3.3/ArrayDataBase.cs
r1529 r1669 25 25 using System.Xml; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Persistence.Default.Decomposers.Storable; 27 28 28 29 namespace HeuristicLab.Data { … … 36 37 /// <remarks>Uses property <see cref="ObjectData.Data"/> of base class <see cref="ObjectData"/>. 37 38 /// No own data storage present.</remarks> 39 [Storable] 38 40 public new virtual Array Data { 39 41 get { return (Array)base.Data; } -
trunk/sources/HeuristicLab.Data/3.3/BoolArrayData.cs
r1529 r1669 63 63 return new BoolArrayDataView(this); 64 64 } 65 66 /// <summary>67 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.68 /// </summary>69 /// <remarks>The boolean elements of the array are saved as string in the node's inner text, each element separated by a semicolon.</remarks>70 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>71 /// <param name="document">The <see cref="XmlDocument"/> where to save the data.</param>72 /// <param name="persistedObjects">A dictionary of all already persisted objects.73 /// (Needed to avoid cycles.)</param>74 /// <returns>The saved <see cref="XmlNode"/>.</returns>75 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {76 XmlNode node = base.GetXmlNode(name, document, persistedObjects);77 node.InnerText = ToString();78 return node;79 }80 /// <summary>81 /// Loads the persisted boolean array from the specified <paramref name="node"/>.82 /// </summary>83 /// <remarks> The elements of the boolean array must be saved in the node's inner84 /// text as a string, each element separated by a semicolon85 /// (see <see cref="GetXmlNode"/>).</remarks>86 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>87 /// <param name="restoredObjects">A Dictionary of all already restored objects.88 /// (Needed to avoid cycles.)</param>89 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {90 base.Populate(node, restoredObjects);91 string[] tokens = node.InnerText.Split(';');92 bool[] data = new bool[tokens.Length];93 for (int i = 0; i < data.Length; i++)94 data[i] = bool.Parse(tokens[i]);95 Data = data;96 }97 65 } 98 66 } -
trunk/sources/HeuristicLab.Data/3.3/BoolData.cs
r1529 r1669 74 74 return clone; 75 75 } 76 /// <summary>77 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.78 /// </summary>79 /// <remarks>The boolean value is saved as string in the inner text of the node.</remarks>80 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>81 /// <param name="document">The <see cref="XmlDocument"/> where to save the data.</param>82 /// <param name="persistedObjects">The dictionary of all already persisted objects. (Needed to avoid cycles.)</param>83 /// <returns>The saved <see cref="XmlNode"/>.</returns>84 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {85 XmlNode node = base.GetXmlNode(name, document, persistedObjects);86 node.InnerText = ToString();87 return node;88 }89 /// <summary>90 /// Loads the persisted boolean value from the specified <paramref name="node"/>.91 /// </summary>92 /// <remarks> The boolean value must be saved as string in the node's inner text93 /// (see <see cref="GetXmlNode"/>).</remarks>94 /// <param name="node">The <see cref="XmlNode"/> where the boolean value is saved.</param>95 /// <param name="restoredObjects">The dictionary of all already restored objects.96 /// (Needed to avoid cycles.)</param>97 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {98 base.Populate(node, restoredObjects);99 Data = bool.Parse(node.InnerText);100 }101 76 } 102 77 } -
trunk/sources/HeuristicLab.Data/3.3/BoolMatrixData.cs
r1529 r1669 66 66 67 67 /// <summary> 68 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.69 /// </summary>70 /// <remarks>The dimensions of the matrix are saved as attributes (<c>Dimension1</c>,<c>Dimension2</c>).<br/>71 /// The elements of the matrix are saved as string in the node's inner text,72 /// each element separated by a semicolon, all line by line.</remarks>73 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>74 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>75 /// <param name="persistedObjects">The dictionary of all already persisted objects. (Needed to avoid cycles.)</param>76 /// <returns>The saved <see cref="XmlNode"/>.</returns>77 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {78 XmlNode node = base.GetXmlNode(name, document, persistedObjects);79 XmlAttribute dim1 = document.CreateAttribute("Dimension1");80 dim1.Value = Data.GetLength(0).ToString(CultureInfo.InvariantCulture.NumberFormat);81 node.Attributes.Append(dim1);82 XmlAttribute dim2 = document.CreateAttribute("Dimension2");83 dim2.Value = Data.GetLength(1).ToString(CultureInfo.InvariantCulture.NumberFormat);84 node.Attributes.Append(dim2);85 node.InnerText = ToString();86 return node;87 }88 /// <summary>89 /// Loads the persisted boolean matrix from the specified <paramref name="node"/>.90 /// </summary>91 /// <remarks>The dimensions of the matrix must be saved as Attributes (<c>Dimension1</c>, <c>Dimension2</c>). <br/>92 /// The elements of the matrix must be saved in the node's inner text as string,93 /// each element separated by a semicolon, line by line (see <see cref="GetXmlNode"/>).</remarks>94 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>95 /// <param name="restoredObjects">The dictionary of all already restored objects. (Needed to avoid cycles.)</param>96 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {97 base.Populate(node, restoredObjects);98 int dim1 = int.Parse(node.Attributes["Dimension1"].Value, CultureInfo.InvariantCulture.NumberFormat);99 int dim2 = int.Parse(node.Attributes["Dimension2"].Value, CultureInfo.InvariantCulture.NumberFormat);100 string[] tokens = node.InnerText.Split(';');101 bool[,] data = new bool[dim1, dim2];102 for (int i = 0; i < dim1; i++) {103 for (int j = 0; j < dim2; j++) {104 data[i, j] = bool.Parse(tokens[i * dim2 + j]);105 }106 }107 Data = data;108 }109 /// <summary>110 68 /// The string representation of the matrix. 111 69 /// </summary> -
trunk/sources/HeuristicLab.Data/3.3/ConstrainedDoubleData.cs
r1529 r1669 45 45 /// Initializes a new instance of <see cref="ConstrainedDoubleData"/> with default value <c>0.0</c>. 46 46 /// </summary> 47 public ConstrainedDoubleData() : this (0.0) { 47 public ConstrainedDoubleData() 48 : this(0.0) { 48 49 } 49 50 /// <summary> … … 52 53 /// </summary> 53 54 /// <param name="data">The double value to represent.</param> 54 public ConstrainedDoubleData(double data) : base() { 55 public ConstrainedDoubleData(double data) 56 : base() { 55 57 base.Data = new DoubleData(data); 56 58 } … … 84 86 } 85 87 86 /// <summary>87 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.88 /// </summary>89 /// <remarks>Uses the <see cref="ConstrainedItemBase.GetXmlNode"/> implementation of base class90 /// <see cref="ConstrainedObjectData"/>. The double value is saved as a <see cref="DoubleData"/>91 /// in a child node having the tag name <c>Value</c>.</remarks>92 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>93 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>94 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>95 /// <returns>The saved <see cref="XmlNode"/>.</returns>96 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {97 XmlNode node = base.GetXmlNode(name, document, persistedObjects);98 node.AppendChild(PersistenceManager.Persist("Value", (DoubleData) base.Data, document, persistedObjects));99 return node;100 }101 /// <summary>102 /// Loads the persisted double value from the specified <paramref name="node"/>.103 /// </summary>104 /// <remarks>The double value must be saved in the child node as a persisted <see cref="DoubleData"/>105 /// having the tag name <c>Value</c> (see <see cref="GetXmlNode"/>).</remarks>106 /// <param name="node">The <see cref="XmlNode"/> where the double is saved.</param>107 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>108 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {109 base.Populate(node, restoredObjects);110 base.Data = (DoubleData)PersistenceManager.Restore(node.SelectSingleNode("Value"), restoredObjects);111 }112 88 } 113 89 } -
trunk/sources/HeuristicLab.Data/3.3/ConstrainedIntData.cs
r1529 r1669 45 45 /// Initializes a new instance of <see cref="ConstrainedIntData"/> with default value <c>0</c>. 46 46 /// </summary> 47 public ConstrainedIntData() : this (0) { 47 public ConstrainedIntData() 48 : this(0) { 48 49 } 49 50 /// <summary> … … 52 53 /// </summary> 53 54 /// <param name="data">The integer value to represent.</param> 54 public ConstrainedIntData(int data) : base() { 55 public ConstrainedIntData(int data) 56 : base() { 55 57 base.Data = new IntData(data); 56 58 } … … 83 85 return clone; 84 86 } 85 86 /// <summary>87 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.88 /// </summary>89 /// <remarks>Uses the <see cref="ConstrainedItemBase.GetXmlNode"/> implementation of base class90 /// <see cref="ConstrainedObjectData"/>. The int value is saved as a <see cref="IntData"/>91 /// in a child node having the tag name <c>Value</c>.</remarks>92 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>93 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>94 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>95 /// <returns>The saved <see cref="XmlNode"/>.</returns>96 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {97 XmlNode node = base.GetXmlNode(name, document, persistedObjects);98 node.AppendChild(PersistenceManager.Persist("Value", ((IntData)base.Data), document, persistedObjects));99 return node;100 }101 /// <summary>102 /// Loads the persisted int value from the specified <paramref name="node"/>.103 /// </summary>104 /// <remarks>The int value must be saved in the child node as a persisted <see cref="IntData"/>105 /// having the tag name <c>Value</c> (see <see cref="GetXmlNode"/>).</remarks>106 /// <param name="node">The <see cref="XmlNode"/> where the int is saved.</param>107 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>108 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {109 base.Populate(node, restoredObjects);110 base.Data = (IntData)PersistenceManager.Restore(node.SelectSingleNode("Value"), restoredObjects);111 }112 87 } 113 88 } -
trunk/sources/HeuristicLab.Data/3.3/ConstrainedItemList.cs
r1529 r1669 26 26 using System.Xml; 27 27 using HeuristicLab.Core; 28 using HeuristicLab.Persistence.Default.Decomposers.Storable; 28 29 29 30 namespace HeuristicLab.Data { … … 33 34 /// </summary> 34 35 public class ConstrainedItemList : ConstrainedItemBase, IEnumerable, IEnumerable<IItem> { 36 37 [Storable] 35 38 private List<IItem> list; 39 40 [Storable] 36 41 private bool suspendConstraintCheck; 37 42 … … 59 64 return new ConstrainedItemListView(this); 60 65 } 61 62 #region Clone & Persistence63 66 /// <summary> 64 67 /// Clones the current instance. … … 81 84 82 85 /// <summary> 83 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.84 /// </summary>85 /// <remarks>The basic instance is saved through the call of86 /// <see cref="HeuristicLab.Core.ConstrainedItemBase.GetXmlNode"/> of base class87 /// <see cref="ConstrainedItemBase"/>. <br/>88 /// The list itself is saved as child node having the tag name <c>ListItems</c>89 /// and each element is saved as a child node of the <c>ListItems</c> node.90 /// The <c>suspendConstraintCheck</c> attribute is saved as an attribute of the list node91 /// having the tag name <c>SuspendConstraintCheck</c>.</remarks>92 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>93 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>94 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>95 /// <returns>The saved <see cref="XmlNode"/>.</returns>96 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {97 XmlNode node = base.GetXmlNode(name, document, persistedObjects);98 XmlNode listNode = document.CreateNode(XmlNodeType.Element, "ListItems", null);99 for (int i = 0; i < list.Count; i++)100 listNode.AppendChild(PersistenceManager.Persist(list[i], document, persistedObjects));101 XmlAttribute sccAttrib = document.CreateAttribute("SuspendConstraintCheck");102 sccAttrib.Value = suspendConstraintCheck.ToString();103 listNode.Attributes.Append(sccAttrib);104 node.AppendChild(listNode);105 return node;106 }107 108 /// <summary>109 /// Loads the persisted int value from the specified <paramref name="node"/>.110 /// </summary>111 /// <remarks>The elements of the list must be saved as child nodes of112 /// the node with the tag name <c>ListItems</c>, which itself is a child node of the current instance.<br/>113 /// The <c>suspendConstraintCheck</c> must be saved as attribute of the list node114 /// with the tag name <c>SuspendConstraintCheck</c> (see <see cref="GetXmlNode"/>).</remarks>115 /// <param name="node">The <see cref="XmlNode"/> where the int is saved.</param>116 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>117 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {118 base.Populate(node, restoredObjects);119 XmlNode listNode = node.SelectSingleNode("ListItems");120 list = new List<IItem>();121 for (int i = 0; i < listNode.ChildNodes.Count; i++)122 list.Add((IItem)PersistenceManager.Restore(listNode.ChildNodes[i], restoredObjects));123 suspendConstraintCheck = bool.Parse(listNode.Attributes["SuspendConstraintCheck"].Value);124 }125 #endregion126 127 /// <summary>128 86 /// The string representation of the current list instance. 129 87 /// </summary> -
trunk/sources/HeuristicLab.Data/3.3/ConstrainedObjectData.cs
r1529 r1669 25 25 using System.Xml; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Persistence.Default.Decomposers.Storable; 27 28 28 29 namespace HeuristicLab.Data { … … 31 32 /// </summary> 32 33 public class ConstrainedObjectData : ConstrainedItemBase, IObjectData { 34 35 [Storable] 33 36 private object myData; 34 37 /// <summary> -
trunk/sources/HeuristicLab.Data/3.3/DoubleArrayData.cs
r1529 r1669 64 64 return new DoubleArrayDataView(this); 65 65 } 66 67 /// <summary>68 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.69 /// </summary>70 /// <remarks>The double elements of the array are saved in the node's inner text as string,71 /// each element, whose format depends on the locale culture info, separated by a semicolon.</remarks>72 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>73 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>74 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>75 /// <returns>The saved <see cref="XmlNode"></see>.</returns>76 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {77 XmlNode node = base.GetXmlNode(name, document, persistedObjects);78 node.InnerText = ToString(CultureInfo.InvariantCulture.NumberFormat);79 return node;80 }81 66 82 /// <summary>83 /// Loads the persisted double array from the specified <paramref name="node"/>.84 /// </summary>85 /// <remarks>The double elemets of the array must be saved in the inner text of the node as string,86 /// each element separated by a semicolon and formatted according to the locale culture info and87 /// its number format (see <see cref="GetXmlNode"/>).</remarks>88 /// <exception cref="System.FormatException">Thrown when a saved element cannot be parsed as a double value.</exception>89 /// <param name="node">The <see cref="XmlNode"></see> where the instance is saved.</param>90 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>91 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {92 base.Populate(node, restoredObjects);93 string[] tokens = node.InnerText.Split(';');94 double[] data = new double[tokens.Length];95 for(int i = 0; i < data.Length; i++)96 if(double.TryParse(tokens[i], NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out data[i]) == false) {97 throw new FormatException("Can't parse " + tokens[i] + " as double value.");98 }99 Data = data;100 }101 102 67 /// <summary> 103 68 /// The string representation of the array, formatted according to the given <paramref name="format"/>. -
trunk/sources/HeuristicLab.Data/3.3/DoubleData.cs
r1529 r1669 76 76 return clone; 77 77 } 78 79 /// <summary>80 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.81 /// </summary>82 /// <remarks>The double value is saved in the node's inner text as string,83 /// its format depending on the local culture info and its number format.</remarks>84 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>85 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>86 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>87 /// <returns>The saved <see cref="XmlNode"/>.</returns>88 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {89 XmlNode node = base.GetXmlNode(name, document, persistedObjects);90 node.InnerText = Data.ToString("r", CultureInfo.InvariantCulture.NumberFormat);91 return node;92 }93 /// <summary>94 /// Loads the persisted double value from the specified <paramref name="node"/>.95 /// </summary>96 /// <remarks>The double value must be saved in the node's inner text as a string and97 /// formatted according to the locale culture info and98 /// its number format (see <see cref="GetXmlNode"/>).</remarks>99 /// <exception cref="System.FormatException">Thrown when the saved value cannot be parsed as a double value.</exception>100 /// <param name="node">The <see cref="XmlNode"/> where the double is saved.</param>101 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>102 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {103 base.Populate(node, restoredObjects);104 double data;105 if(double.TryParse(node.InnerText, NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out data) == true) {106 Data = data;107 } else {108 throw new FormatException("Can't parse " + node.InnerText + " as double value.");109 }110 }111 78 } 112 79 } -
trunk/sources/HeuristicLab.Data/3.3/DoubleMatrixData.cs
r1529 r1669 66 66 67 67 /// <summary> 68 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.69 /// </summary>70 /// <remarks>The dimensions of the matrix are saved as attributes (<c>Dimension1</c>,<c>Dimension2</c>),71 /// formatted according to the local culture info and its number format.<br/>72 /// The elements of the matrix are saved as string in the node's inner text,73 /// each element separated by a semicolon, all line by line, formatted according to the74 /// local number format.</remarks>75 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>76 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>77 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>78 /// <returns>The saved <see cref="XmlNode"/>.</returns>79 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {80 XmlNode node = base.GetXmlNode(name, document, persistedObjects);81 XmlAttribute dim1 = document.CreateAttribute("Dimension1");82 dim1.Value = Data.GetLength(0).ToString(CultureInfo.InvariantCulture.NumberFormat);83 node.Attributes.Append(dim1);84 XmlAttribute dim2 = document.CreateAttribute("Dimension2");85 dim2.Value = Data.GetLength(1).ToString(CultureInfo.InvariantCulture.NumberFormat);86 node.Attributes.Append(dim2);87 node.InnerText = ToString(CultureInfo.InvariantCulture.NumberFormat);88 return node;89 }90 /// <summary>91 /// Loads the persisted matrix from the specified <paramref name="node"/>.92 /// </summary>93 /// <remarks>The dimensions of the matrix must be saved as Attributes (<c>Dimension1</c>, <c>Dimension2</c>),94 /// formatted in the local number format. <br/>95 /// The elements of the matrix must be saved in the node's inner text as string,96 /// each element separated by a semicolon, line by line, formatted according to the local97 /// culture info and its number format (see <see cref="GetXmlNode"/>).</remarks>98 /// <exception cref="System.FormatException">Thrown when a saved element cannot be parsed as a double value.</exception>99 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>100 /// <param name="restoredObjects">The dictionary of all already restored objects. (Needed to avoid cycles.)</param>101 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {102 base.Populate(node, restoredObjects);103 int dim1 = int.Parse(node.Attributes["Dimension1"].Value, CultureInfo.InvariantCulture.NumberFormat);104 int dim2 = int.Parse(node.Attributes["Dimension2"].Value, CultureInfo.InvariantCulture.NumberFormat);105 string[] tokens = node.InnerText.Split(';');106 double[,] data = new double[dim1, dim2];107 for (int i = 0; i < dim1; i++) {108 for (int j = 0; j < dim2; j++) {109 if(double.TryParse(tokens[i * dim2 + j], NumberStyles.Float, CultureInfo.InvariantCulture.NumberFormat, out data[i, j])==false) {110 throw new FormatException("Can't parse " + tokens[i * dim2 + j] + " as double value.");111 }112 }113 }114 Data = data;115 }116 117 /// <summary>118 68 /// The string representation of the matrix. 119 69 /// </summary> -
trunk/sources/HeuristicLab.Data/3.3/HeuristicLab.Data-3.3.csproj
r1668 r1669 5 5 <ProductVersion>9.0.30729</ProductVersion> 6 6 <SchemaVersion>2.0</SchemaVersion> 7 <ProjectGuid>{ F473D9AF-3F09-4296-9F28-3C65118DAFFA}</ProjectGuid>7 <ProjectGuid>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</ProjectGuid> 8 8 <OutputType>Library</OutputType> 9 9 <AppDesignerFolder>Properties</AppDesignerFolder> 10 10 <RootNamespace>HeuristicLab.Data</RootNamespace> 11 <AssemblyName>HeuristicLab.Data-3. 2</AssemblyName>11 <AssemblyName>HeuristicLab.Data-3.3</AssemblyName> 12 12 <SignAssembly>true</SignAssembly> 13 13 <AssemblyOriginatorKeyFile>HeuristicLab.snk</AssemblyOriginatorKeyFile> … … 32 32 <UseApplicationTrust>false</UseApplicationTrust> 33 33 <BootstrapperEnabled>true</BootstrapperEnabled> 34 <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> 34 35 </PropertyGroup> 35 36 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> … … 51 52 <ErrorReport>prompt</ErrorReport> 52 53 <WarningLevel>4</WarningLevel> 53 <DocumentationFile>bin\Release\HeuristicLab.Data-3. 2.XML</DocumentationFile>54 <DocumentationFile>bin\Release\HeuristicLab.Data-3.3.xml</DocumentationFile> 54 55 <TreatWarningsAsErrors>false</TreatWarningsAsErrors> 55 56 </PropertyGroup> … … 90 91 <ItemGroup> 91 92 <Reference Include="System" /> 93 <Reference Include="System.Core"> 94 <RequiredTargetFramework>3.5</RequiredTargetFramework> 95 </Reference> 92 96 <Reference Include="System.Data" /> 93 97 <Reference Include="System.Drawing" /> … … 233 237 </ItemGroup> 234 238 <ItemGroup> 235 <ProjectReference Include="..\..\HeuristicLab.Core\3.2\HeuristicLab.Core-3.2.csproj"> 236 <Project>{F43B59AB-2B8C-4570-BC1E-15592086517C}</Project> 237 <Name>HeuristicLab.Core-3.2</Name> 239 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj"> 240 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project> 241 <Name>HeuristicLab.Core-3.3</Name> 242 </ProjectReference> 243 <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj"> 244 <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project> 245 <Name>HeuristicLab.Persistence-3.3</Name> 238 246 </ProjectReference> 239 247 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\HeuristicLab.PluginInfrastructure.csproj"> -
trunk/sources/HeuristicLab.Data/3.3/HeuristicLabDataPlugin.cs
r1529 r1669 29 29 /// Plugin class for HeuristicLab.Data plugin. 30 30 /// </summary> 31 [ClassInfo(Name = "HeuristicLab.Data-3. 2")]32 [PluginFile(Filename = "HeuristicLab.Data-3. 2.dll", Filetype = PluginFileType.Assembly)]33 [Dependency(Dependency = "HeuristicLab.Core-3. 2")]31 [ClassInfo(Name = "HeuristicLab.Data-3.3")] 32 [PluginFile(Filename = "HeuristicLab.Data-3.3.dll", Filetype = PluginFileType.Assembly)] 33 [Dependency(Dependency = "HeuristicLab.Core-3.3")] 34 34 public class HeuristicLabDataPlugin : PluginBase { 35 35 } -
trunk/sources/HeuristicLab.Data/3.3/IntArrayData.cs
r1529 r1669 66 66 67 67 /// <summary> 68 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.69 /// </summary>70 /// <remarks>The int elements of the array are saved in the node's inner text as string,71 /// each element, whose format depends on the locale culture info, separated by a semicolon.</remarks>72 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>73 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>74 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>75 /// <returns>The saved <see cref="XmlNode"></see>.</returns>76 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {77 XmlNode node = base.GetXmlNode(name, document, persistedObjects);78 node.InnerText = ToString(CultureInfo.InvariantCulture.NumberFormat);79 return node;80 }81 /// <summary>82 /// Loads the persisted int array from the specified <paramref name="node"/>.83 /// </summary>84 /// <remarks>The int elemets of the array must be saved in the inner text of the node as string,85 /// each element separated by a semicolon and formatted according to the locale culture info and86 /// its number format (see <see cref="GetXmlNode"/>).</remarks>87 /// <param name="node">The <see cref="XmlNode"></see> where the instance is saved.</param>88 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>89 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {90 base.Populate(node, restoredObjects);91 if (!node.InnerText.Equals("")) {92 string[] tokens = node.InnerText.Split(';');93 int[] data = new int[tokens.Length];94 for (int i = 0; i < data.Length; i++)95 data[i] = int.Parse(tokens[i], CultureInfo.InvariantCulture.NumberFormat);96 Data = data;97 }98 }99 100 /// <summary>101 68 /// The string representation of the array, formatted according to the given <paramref name="format"/>. 102 69 /// </summary> -
trunk/sources/HeuristicLab.Data/3.3/IntData.cs
r1529 r1669 76 76 return clone; 77 77 } 78 79 /// <summary>80 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.81 /// </summary>82 /// <remarks>The int value is saved as string in the node's inner text,83 /// formatted according to the local culture info and its number format.</remarks>84 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>85 /// <param name="document">The <see cref="XmlDocument"/> where to save the data.</param>86 /// <param name="persistedObjects">A dictionary of all already persisted objects.(Needed to avoid cycles.)</param>87 /// <returns>The saved <see cref="XmlNode"/>.</returns>88 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {89 XmlNode node = base.GetXmlNode(name, document, persistedObjects);90 node.InnerText = Data.ToString(CultureInfo.InvariantCulture.NumberFormat);91 return node;92 }93 /// <summary>94 /// Loads the persisted int value from the specified <paramref name="node"/>.95 /// </summary>96 /// <remarks>The int value must be saved in the node's inner text as a string and97 /// formatted according to the locale culture info and98 /// its number format (see <see cref="GetXmlNode"/>).</remarks>99 /// <param name="node">The <see cref="XmlNode"/> where the int is saved.</param>100 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>101 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {102 base.Populate(node, restoredObjects);103 Data = int.Parse(node.InnerText, CultureInfo.InvariantCulture.NumberFormat);104 }105 78 } 106 79 } -
trunk/sources/HeuristicLab.Data/3.3/IntMatrixData.cs
r1529 r1669 66 66 67 67 /// <summary> 68 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.69 /// </summary>70 /// <remarks>The dimensions of the matrix are saved as attributes (<c>Dimension1</c>,<c>Dimension2</c>),71 /// formatted according to the local culture info and its number format.<br/>72 /// The elements of the matrix are saved as string in the node's inner text,73 /// each element separated by a semicolon, all line by line, formatted according to74 /// the local number format.</remarks>75 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>76 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>77 /// <param name="persistedObjects">The dictionary of all already persisted objects.78 /// (Needed to avoid cycles.)</param>79 /// <returns>The saved <see cref="XmlNode"/>.</returns>80 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {81 XmlNode node = base.GetXmlNode(name, document, persistedObjects);82 XmlAttribute dim1 = document.CreateAttribute("Dimension1");83 dim1.Value = Data.GetLength(0).ToString(CultureInfo.InvariantCulture.NumberFormat);84 node.Attributes.Append(dim1);85 XmlAttribute dim2 = document.CreateAttribute("Dimension2");86 dim2.Value = Data.GetLength(1).ToString(CultureInfo.InvariantCulture.NumberFormat);87 node.Attributes.Append(dim2);88 node.InnerText = ToString(CultureInfo.InvariantCulture.NumberFormat);89 return node;90 }91 /// <summary>92 /// Loads the persisted int matrix from the specified <paramref name="node"/>.93 /// </summary>94 /// <remarks>The dimensions of the matrix must be saved as Attributes95 /// (<c>Dimension1</c>, <c>Dimension2</c>), formatted in the local number format. <br/>96 /// The elements of the matrix must be saved in the node's inner text as string,97 /// each element separated by a semicolon, line by line, formatted according to98 /// the local number format (see <see cref="GetXmlNode"/>).</remarks>99 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>100 /// <param name="restoredObjects">The dictionary of all already restored objects. (Needed to avoid cycles.)</param>101 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {102 base.Populate(node, restoredObjects);103 int dim1 = int.Parse(node.Attributes["Dimension1"].Value, CultureInfo.InvariantCulture.NumberFormat);104 int dim2 = int.Parse(node.Attributes["Dimension2"].Value, CultureInfo.InvariantCulture.NumberFormat);105 string[] tokens = node.InnerText.Split(';');106 int[,] data = new int[dim1, dim2];107 for (int i = 0; i < dim1; i++) {108 for (int j = 0; j < dim2; j++) {109 data[i, j] = int.Parse(tokens[i * dim2 + j], CultureInfo.InvariantCulture.NumberFormat);110 }111 }112 Data = data;113 }114 115 /// <summary>116 68 /// The string representation of the matrix. 117 69 /// </summary> -
trunk/sources/HeuristicLab.Data/3.3/ItemDictionary_T.cs
r1529 r1669 5 5 using System.Xml; 6 6 using HeuristicLab.Core; 7 using HeuristicLab.Persistence.Default.Decomposers.Storable; 7 8 8 9 namespace HeuristicLab.Data { … … 14 15 public class ItemDictionary<K,V> : ItemBase, IDictionary<K,V> 15 16 where K : IItem 16 where V : IItem{ 17 where V : IItem { 18 19 [Storable] 17 20 private Dictionary<K, V> dict; 18 21 … … 57 60 } 58 61 return clone; 59 }60 61 /// <summary>62 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.63 /// </summary>64 /// <remarks>Every key-value pair is saved as new child node with the tag name "KeyValuePair".<br/>65 /// In the child node the key is saved as a new child node with the tag name "Key".<br/>66 /// The value is also saved as new child node with the tag name "Val".67 /// </remarks>68 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>69 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>70 /// <param name="persistedObjects">A dictionary of all already persisted objects. (Needed to avoid cycles.)</param>71 /// <returns>The saved <see cref="XmlNode"/>.</returns>72 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid, IStorable> persistedObjects) {73 XmlNode node = base.GetXmlNode(name, document, persistedObjects);74 foreach (KeyValuePair<K, V> item in dict) {75 XmlNode keyNode = PersistenceManager.Persist("Key", item.Key, document, persistedObjects);76 XmlNode valueNode = PersistenceManager.Persist("Val", item.Value, document, persistedObjects);77 XmlNode pairNode = document.CreateNode(XmlNodeType.Element, "KeyValuePair", null);78 pairNode.AppendChild(keyNode);79 pairNode.AppendChild(valueNode);80 node.AppendChild(pairNode);81 }82 return node;83 }84 85 /// <summary>86 /// Loads the persisted matrix from the specified <paramref name="node"/>.87 /// </summary>88 /// <remarks>All key-value pairs must be saved as child nodes of the node. <br/>89 /// Every child node has to contain two child nodes itself, one for the key, having the tag name "Key",90 /// and one for the value, having the tag name "Val" (see <see cref="GetXmlNode"/>).</remarks>91 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>92 /// <param name="restoredObjects">The dictionary of all already restored objects. (Needed to avoid cycles.)</param>93 public override void Populate(XmlNode node, IDictionary<Guid, IStorable> restoredObjects) {94 base.Populate(node, restoredObjects);95 for (int i = 0; i < node.ChildNodes.Count; i++) {96 K key = (K) PersistenceManager.Restore(node.ChildNodes[i].SelectSingleNode("Key"), restoredObjects);97 V val = (V) PersistenceManager.Restore(node.ChildNodes[i].SelectSingleNode("Val"), restoredObjects);98 dict[key] = val;99 }100 62 } 101 63 -
trunk/sources/HeuristicLab.Data/3.3/ItemList_T.cs
r1529 r1669 26 26 using System.Xml; 27 27 using HeuristicLab.Core; 28 using HeuristicLab.Persistence.Default.Decomposers.Storable; 28 29 29 30 namespace HeuristicLab.Data { … … 33 34 /// <typeparam name="T">The type of the items in this list. <paramref name="T"/> must implement <see cref="IItem"/>.</typeparam> 34 35 public class ItemList<T> : ItemBase, IList<T> where T : IItem { 36 37 [Storable] 35 38 private List<T> list; 36 39 … … 73 76 for (int i = 0; i < list.Count; i++) 74 77 destination.list.Add((T) Auxiliary.Clone(list[i], clonedObjects)); 75 }76 77 /// <summary>78 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.79 /// </summary>80 /// <remarks>Each element in the list is saved as child node.</remarks>81 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>82 /// <param name="document">The <see cref="XmlDocument"/> where the data is saved.</param>83 /// <param name="persistedObjects">The dictionary of all already persisted objects.84 /// (Needed to avoid cycles.)</param>85 /// <returns>The saved <see cref="XmlNode"/>.</returns>86 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid, IStorable> persistedObjects) {87 XmlNode node = base.GetXmlNode(name, document, persistedObjects);88 for (int i = 0; i < list.Count; i++)89 node.AppendChild(PersistenceManager.Persist(list[i], document, persistedObjects));90 return node;91 }92 /// <summary>93 /// Loads the persisted item list from the specified <paramref name="node"/>.94 /// </summary>95 /// <remarks>The single elements of the list must be saved as child nodes (see <see cref="GetXmlNode"/>.</remarks>96 /// <param name="node">The <see cref="XmlNode"/> where the instance is saved.</param>97 /// <param name="restoredObjects">The dictionary of all already restored objects. (Needed to avoid cycles.)</param>98 public override void Populate(XmlNode node, IDictionary<Guid, IStorable> restoredObjects) {99 base.Populate(node, restoredObjects);100 for (int i = 0; i < node.ChildNodes.Count; i++)101 list.Add((T) PersistenceManager.Restore(node.ChildNodes[i], restoredObjects));102 78 } 103 79 -
trunk/sources/HeuristicLab.Data/3.3/ObjectData.cs
r1529 r1669 25 25 using System.Xml; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Persistence.Default.Decomposers.Storable; 27 28 28 29 namespace HeuristicLab.Data { … … 31 32 /// </summary> 32 33 public class ObjectData : ItemBase, IObjectData { 34 35 [Storable] 33 36 private object myData; 34 37 /// <summary> -
trunk/sources/HeuristicLab.Data/3.3/Properties/AssemblyInfo.frame
r581 r1669 54 54 // You can specify all the values or you can default the Revision and Build Numbers 55 55 // by using the '*' as shown below: 56 [assembly: AssemblyVersion("3. 2.0.$WCREV$")]57 [assembly: AssemblyFileVersion("3. 2.0.$WCREV$")]56 [assembly: AssemblyVersion("3.3.0.$WCREV$")] 57 [assembly: AssemblyFileVersion("3.3.0.$WCREV$")] 58 58 [assembly: AssemblyBuildDate("$WCNOW$")] -
trunk/sources/HeuristicLab.Data/3.3/StringData.cs
r1529 r1669 78 78 79 79 /// <summary> 80 /// Saves the current instance as <see cref="XmlNode"/> in the specified <paramref name="document"/>.81 /// </summary>82 /// <remarks>The string value is saved in the node's inner text.</remarks>83 /// <param name="name">The (tag)name of the <see cref="XmlNode"/>.</param>84 /// <param name="document">The <see cref="XmlDocument"/> where to save the data.</param>85 /// <param name="persistedObjects">A dictionary of all already persisted objects.(Needed to avoid cycles.)</param>86 /// <returns>The saved <see cref="XmlNode"/>.</returns>87 public override XmlNode GetXmlNode(string name, XmlDocument document, IDictionary<Guid,IStorable> persistedObjects) {88 XmlNode node = base.GetXmlNode(name, document, persistedObjects);89 node.InnerText = Data;90 return node;91 }92 /// <summary>93 /// Loads the persisted string value from the specified <paramref name="node"/>.94 /// </summary>95 /// <remarks>The string value must be saved in the node's inner text96 /// (see <see cref="GetXmlNode"/>).</remarks>97 /// <param name="node">The <see cref="XmlNode"/> where the string is saved.</param>98 /// <param name="restoredObjects">A dictionary of all already restored objects. (Needed to avoid cycles.)</param>99 public override void Populate(XmlNode node, IDictionary<Guid,IStorable> restoredObjects) {100 base.Populate(node, restoredObjects);101 Data = node.InnerText;102 }103 104 /// <summary>105 80 /// The string representation of the current instance. 106 81 /// </summary> -
trunk/sources/HeuristicLab.sln
r1663 r1669 168 168 EndProject 169 169 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Core-3.3", "HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj", "{C36BD924-A541-4A00-AFA8-41701378DDC5}" 170 EndProject 171 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Data-3.3", "HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj", "{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}" 170 172 EndProject 171 173 Global … … 2508 2510 {C36BD924-A541-4A00-AFA8-41701378DDC5}.Visualization Debug|x86.ActiveCfg = Debug|x86 2509 2511 {C36BD924-A541-4A00-AFA8-41701378DDC5}.Visualization Debug|x86.Build.0 = Debug|x86 2512 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|Any CPU.ActiveCfg = Debug|Any CPU 2513 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|Any CPU.Build.0 = Debug|Any CPU 2514 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|x64.ActiveCfg = Debug|x64 2515 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|x64.Build.0 = Debug|x64 2516 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|x86.ActiveCfg = Debug|x86 2517 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.CEDMA Debug|x86.Build.0 = Debug|x86 2518 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 2519 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|Any CPU.Build.0 = Debug|Any CPU 2520 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|x64.ActiveCfg = Debug|x64 2521 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|x64.Build.0 = Debug|x64 2522 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|x86.ActiveCfg = Debug|x86 2523 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Debug|x86.Build.0 = Debug|x86 2524 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|Any CPU.ActiveCfg = Debug|Any CPU 2525 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|Any CPU.Build.0 = Debug|Any CPU 2526 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|x64.ActiveCfg = Debug|x64 2527 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|x64.Build.0 = Debug|x64 2528 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|x86.ActiveCfg = Debug|x86 2529 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.GP Debug|x86.Build.0 = Debug|x86 2530 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|Any CPU.ActiveCfg = Release|Any CPU 2531 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|Any CPU.Build.0 = Release|Any CPU 2532 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|x64.ActiveCfg = Release|x64 2533 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|x64.Build.0 = Release|x64 2534 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|x86.ActiveCfg = Release|x86 2535 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Release|x86.Build.0 = Release|x86 2536 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|Any CPU.ActiveCfg = Debug|Any CPU 2537 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|Any CPU.Build.0 = Debug|Any CPU 2538 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|x64.ActiveCfg = Debug|x64 2539 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|x64.Build.0 = Debug|x64 2540 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|x86.ActiveCfg = Debug|x86 2541 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}.Visualization Debug|x86.Build.0 = Debug|x86 2510 2542 EndGlobalSection 2511 2543 GlobalSection(SolutionProperties) = preSolution -
trunk/sources/HeuristicLab/CopyAssemblies.cmd
r1663 r1669 27 27 copy "%SolutionDir%\HeuristicLab.Constraints\3.2\%Outdir%\HeuristicLab.Constraints-3.2.dll" .\plugins 28 28 copy "%SolutionDir%\HeuristicLab.Data\3.2\%Outdir%\HeuristicLab.Data-3.2.dll" .\plugins 29 copy "%SolutionDir%\HeuristicLab.Data\3.3\%Outdir%\HeuristicLab.Data-3.3.dll" .\plugins 29 30 copy "%SolutionDir%\HeuristicLab.DataAccess\3.2\%Outdir%\HeuristicLab.DataAccess-3.2.dll" .\plugins 30 31 copy "%SolutionDir%\HeuristicLab.DataAccess.ADOHelper\3.2\%Outdir%\HeuristicLab.DataAccess.ADOHelper-3.2.dll" .\plugins
Note: See TracChangeset
for help on using the changeset viewer.