Free cookie consent management tool by TermsFeed Policy Generator

source: branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problems.ProgramSynthesis/Push/Configuration/IEnabledExpressionsConfiguration.cs @ 15273

Last change on this file since 15273 was 15273, checked in by pkimmesw, 7 years ago

#2665 Started Plush Encoding, Added Zero Error Individual Count Analyzer

File size: 1.7 KB
Line 
1using System;
2using System.Collections.Generic;
3
4namespace HeuristicLab.Problems.ProgramSynthesis.Push.Configuration {
5  using HeuristicLab.Core;
6  using HeuristicLab.Problems.ProgramSynthesis.Push.Expressions;
7  using HeuristicLab.Problems.ProgramSynthesis.Push.Stack;
8
9  public class EnabledExpressionsChangedEventArgs : EventArgs {
10    public IEnumerable<string> AddedExpressions { get; private set; }
11    public IEnumerable<string> RemovedExpressions { get; private set; }
12
13    public EnabledExpressionsChangedEventArgs(IEnumerable<string> addedExpressions, IEnumerable<string> removedExpressions) {
14      AddedExpressions = addedExpressions;
15      RemovedExpressions = removedExpressions;
16    }
17  }
18
19  public interface IReadOnlyExpressionsConfiguration : INamedItem {
20    int InExpressionCount { get; }
21
22    IReadOnlyList<string> EnabledExpressions { get; }
23    IReadOnlyDictionary<StackTypes, int> ExpressionsPerStackCount { get; }
24  }
25
26  public interface IExpressionsConfiguration : IReadOnlyExpressionsConfiguration {
27    event EventHandler<EnabledExpressionsChangedEventArgs> EnabledExpressionsChanged;
28
29    void EnableStack(StackTypes types, bool enableDependencies = false);
30    void DisableStack(StackTypes type, bool enableDependencies = false);
31    void SetStack(StackTypes type, bool state, bool setDependencies = false);
32    void EnableExpressionOfStack(StackTypes types);
33    void DisableExpressionsOfStack(StackTypes types);
34    void EnableExpression(string name);
35    void DisableExpression(string name);
36    void SetExpression(string name, bool state);
37    void SetExpression<T>(bool state) where T : Expression;
38    void EnableExpression<T>() where T : Expression;
39    void DisableExpression<T>() where T : Expression;
40  }
41}
Note: See TracBrowser for help on using the repository browser.