using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using HeuristicLab.Core; namespace HeuristicLab.Manufacture { public abstract class ParameterBaseConverter : BaseConverter { public override Component ExtractData(IItem value) { IParameter param = value.Cast(); Component comp = ExtractData(param); //comp.Path = value.Cast().ActualValue?.ItemName; /*comp.Path = value.Cast().Name + "." + comp.Path; if(comp.ParameterizedItems != null) { foreach (var item in comp.ParameterizedItems) { item.Path = value.Cast().Name + "." + item.Path; } }*/ return comp; } public abstract Component ExtractData(IParameter value); public override void InjectData(IItem item, Component data) => InjectData(item.Cast(), data); public abstract void InjectData(IParameter parameter, Component data); } }