using HeuristicLab.Common; using HeuristicLab.Core; using HeuristicLab.Optimization; using HeuristicLab.Parameters; using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; namespace HeuristicLab.Problems.MetaOptimization { [StorableClass] public class AlgorithmProblemItem : ParameterizedNamedItem { #region Parameter Properties public IValueParameter AlgorithmParameter { get { return (ValueParameter)Parameters["Algorithm"]; } } public IValueParameter ProblemParameter { get { return (ValueParameter)Parameters["Problem"]; } } #endregion #region Constructors and Cloning [StorableConstructor] protected AlgorithmProblemItem(bool deserializing) : base(deserializing) { } public AlgorithmProblemItem() { this.Parameters.Add(new ValueParameter("Algorithm")); this.Parameters.Add(new ValueParameter("Problem")); } protected AlgorithmProblemItem(AlgorithmProblemItem original, Cloner cloner) : base(original, cloner) { } public override IDeepCloneable Clone(Cloner cloner) { return new AlgorithmProblemItem(this, cloner); } #endregion } }