Changeset 9790 for branches/Robocode.TrunkInt/HeuristicLab.Problems.Robocode/3.3/Symbols/Logical Expressions/BooleanTreeNode.cs
- Timestamp:
- 07/26/13 15:13:05 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/Robocode.TrunkInt/HeuristicLab.Problems.Robocode/3.3/Symbols/Logical Expressions/BooleanTreeNode.cs
r9565 r9790 1 using System; 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) 2002-2013 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 2 22 using HeuristicLab.Common; 3 23 using HeuristicLab.Core; … … 5 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 6 26 7 namespace HeuristicLab.Problems.Robocode 8 { 9 [StorableClass] 10 public class BooleanTreeNode : SymbolicExpressionTreeTerminalNode 11 { 12 private bool value; 13 [Storable] 14 public bool Value 15 { 16 get { return value; } 17 private set { this.value = value; } 18 } 27 namespace HeuristicLab.Problems.Robocode { 28 [StorableClass] 29 public class BooleanTreeNode : SymbolicExpressionTreeTerminalNode { 30 private bool value; 31 [Storable] 32 public bool Value { 33 get { return value; } 34 private set { this.value = value; } 35 } 19 36 20 [StorableConstructor] 21 private BooleanTreeNode(bool deserializing) : base(deserializing) { } 22 private BooleanTreeNode(BooleanTreeNode original, Cloner cloner) 23 : base(original, cloner) 24 { 25 this.value = original.value; 26 } 37 [StorableConstructor] 38 private BooleanTreeNode(bool deserializing) : base(deserializing) { } 39 private BooleanTreeNode(BooleanTreeNode original, Cloner cloner) 40 : base(original, cloner) { 41 this.value = original.value; 42 } 27 43 28 public BooleanTreeNode() 29 : base(new LogicalValue()) 30 { 31 } 44 public BooleanTreeNode() 45 : base(new LogicalValue()) { 46 } 32 47 33 public override IDeepCloneable Clone(Cloner cloner) 34 { 35 return new BooleanTreeNode(this, cloner); 36 } 48 public override IDeepCloneable Clone(Cloner cloner) { 49 return new BooleanTreeNode(this, cloner); 50 } 37 51 38 public override bool HasLocalParameters 39 { 40 get { return true; } 41 } 52 public override bool HasLocalParameters { 53 get { return true; } 54 } 42 55 43 public override void ResetLocalParameters(IRandom random) 44 { 45 value = (bool)(random.Next(0, 1) == 1); 46 } 56 public override void ResetLocalParameters(IRandom random) { 57 value = (bool)(random.Next(0, 1) == 1); 47 58 } 59 } 48 60 }
Note: See TracChangeset
for help on using the changeset viewer.