Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/19/17 14:42:41 (7 years ago)
Author:
mkommend
Message:

#2774: Allowed storing additional data in the scope of an individual.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Optimization/3.3/BasicProblems/Individuals/SingleEncodingIndividual.cs

    r14185 r14877  
    3232    }
    3333
    34     public override IItem this[string name] {
    35       get {
    36         if (Name != name) throw new ArgumentException(string.Format("{0} is not part of the individual.", name));
    37         return ExtractScopeValue(Name, Scope);
    38       }
    39       set {
    40         if (Name != name) throw new ArgumentException(string.Format("{0} is not part of the individual.", name));
    41         SetScopeValue(Name, Scope, value);
    42       }
     34    private SingleEncodingIndividual(SingleEncodingIndividual copy) : base(copy.Encoding, new Scope()) {
     35      copy.CopyToScope(Scope);
     36    }
     37    public override Individual Copy() {
     38      return new SingleEncodingIndividual(this);
    4339    }
    4440
     
    4844      return encoding;
    4945    }
    50 
    51     public override Individual CopyToScope(IScope scope) {
    52       SetScopeValue(Name, scope, (IItem)this[Name].Clone());
    53       return new SingleEncodingIndividual(Encoding, scope);
    54     }
    5546  }
    5647
Note: See TracChangeset for help on using the changeset viewer.