Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/15/09 02:18:42 (15 years ago)
Author:
swagner
Message:

Refactoring of the operator architecture (#95)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/Operator Architecture Refactoring/HeuristicLab.Core/3.3/Interfaces/IOperator.cs

    r2033 r2042  
    4949
    5050    /// <summary>
    51     /// Gets a list of all sub operators.
    52     /// </summary>
    53     IList<IOperator> SubOperators { get; }
    54     /// <summary>
    5551    /// Gets a collection of all variable (parameter) infos.
    5652    /// </summary>
    57     ICollection<IVariableInfo> VariableInfos { get; }
    58     /// <summary>
    59     /// Gets a collection of all variables of the current operator.
    60     /// </summary>
    61     ICollection<IVariable> Variables { get; }
    62 
    63     /// <summary>
    64     /// Adds the given sub operator to the current instance.
    65     /// </summary>
    66     /// <param name="op">The operator to add.</param>
    67     void AddSubOperator(IOperator op);
    68     /// <summary>
    69     /// Adds the given sub operator at a the specified <paramref name="index"/>.
    70     /// </summary>
    71     /// <param name="op">The operator to add.</param>
    72     /// <param name="index">The position where to add the operator.</param>
    73     void AddSubOperator(IOperator op, int index);
    74     /// <summary>
    75     /// Removes a sub operator at the specified <paramref name="index"/>.
    76     /// </summary>
    77     /// <param name="index">The position where to delete the operator.</param>
    78     void RemoveSubOperator(int index);
     53    ICollection<IParameter> Parameters { get; }
    7954
    8055    /// <summary>
     
    8358    /// <param name="formalName">The formal name of the variable info.</param>
    8459    /// <returns>The variable info with the specified formal name.</returns>
    85     IVariableInfo GetVariableInfo(string formalName);
     60    IParameter GetParameter(string name);
    8661    /// <summary>
    8762    /// Adds the specified variable info to the current instance.
    8863    /// </summary>
    8964    /// <param name="variableInfo">The variable info to add.</param>
    90     void AddVariableInfo(IVariableInfo variableInfo);
     65    void AddParameter(IParameter parameter);
    9166    /// <summary>
    9267    /// Removes the variable info with the given formal name.
    9368    /// </summary>
    9469    /// <param name="formalName">The formal name of the variable info to remove.</param>
    95     void RemoveVariableInfo(string formalName);
    96 
    97     /// <summary>
    98     /// Gets a variable with the given <paramref name="name"/>.
    99     /// </summary>
    100     /// <param name="name">The name of the variable.</param>
    101     /// <returns>The variable with the specified name.</returns>
    102     IVariable GetVariable(string name);
    103     /// <summary>
    104     /// Adds the specified <paramref name="variable"/> to the current instance.
    105     /// </summary>
    106     /// <param name="variable">The variable to add.</param>
    107     void AddVariable(IVariable variable);
    108     /// <summary>
    109     /// Deletes the variable with the specified <paramref name="name"/>.
    110     /// </summary>
    111     /// <param name="name">The name of the variable to delete.</param>
    112     void RemoveVariable(string name);
    113 
    114     /// <inheritdoc cref="GetVariableValue(string, HeuristicLab.Core.IScope, bool)"/>
    115     /// <typeparam name="T">The type of the value that is searched.</typeparam>       
    116     T GetVariableValue<T>(string formalName, IScope scope, bool recursiveLookup) where T : class, IItem;
    117     /// <inheritdoc cref="GetVariableValue(string, HeuristicLab.Core.IScope, bool, bool)"/>
    118     /// <typeparam name="T">The type of the value that is searched.</typeparam>
    119     T GetVariableValue<T>(string formalName, IScope scope, bool recursiveLookup, bool throwOnError) where T : class, IItem;
    120     /// <inheritdoc cref="GetVariableValue(System.String, IScope, bool, bool)"
    121     /// select="summary"/>
    122     /// <param name="formalName">The formal name of the variable info whose variable value is searched.</param>
    123     /// <param name="scope">The scope where to look for the variable.</param>
    124     /// <param name="recursiveLookup">Boolean value, whether also the parent scopes shall be searched if
    125     /// the variable is not found in the specified <paramref name="scope"/>.</param>
    126     /// <returns>The value of the searched variable or null if it is not found.</returns>
    127     IItem GetVariableValue(string formalName, IScope scope, bool recursiveLookup);
    128     /// <summary>
    129     /// Gets the value of the variable in the specified <paramref name="scope"/>
    130     /// whose variable(parameter) info has the specified <paramref name="formalName"/>.
    131     /// </summary>
    132     /// <param name="formalName">The formal name of the variable info whose variable value is searched.</param>
    133     /// <param name="scope">The scope where to look for the variable.</param>
    134     /// <param name="recursiveLookup">Boolean value, whether also the parent scopes shall be searched if
    135     /// the variable is not found in the specified <paramref name="scope"/>.</param>
    136     /// <param name="throwOnError">Boolean value, whether an exception shall be thrown, if the variable
    137     /// cannot be found or just <c>null</c> shall be returned.</param>
    138     /// <returns>The value of the searched variable (or null if the variable is not
    139     /// found and <paramref name="throwOnError"/> is set to false).</returns>
    140     IItem GetVariableValue(string formalName, IScope scope, bool recursiveLookup, bool throwOnError);
     70    void RemoveParameter(string name);
    14171
    14272    /// <summary>
     
    16090    event EventHandler BreakpointChanged;
    16191    /// <summary>
    162     /// Occurs when a sub operator has been added.
    163     /// </summary>
    164     event EventHandler<OperatorIndexEventArgs> SubOperatorAdded;
    165     /// <summary>
    166     /// Occurs when a sub operator has been deleted.
    167     /// </summary>
    168     event EventHandler<OperatorIndexEventArgs> SubOperatorRemoved;
    169     /// <summary>
    17092    /// Occurs when a variable info has been added.
    17193    /// </summary>
    172     event EventHandler<VariableInfoEventArgs> VariableInfoAdded;
     94    event EventHandler<ParameterEventArgs> ParameterAdded;
    17395    /// <summary>
    17496    /// Occurs when a variable info has been deleted.
    17597    /// </summary>
    176     event EventHandler<VariableInfoEventArgs> VariableInfoRemoved;
    177     /// <summary>
    178     /// Occurs when a variable has been added.
    179     /// </summary>
    180     event EventHandler<VariableEventArgs> VariableAdded;
    181     /// <summary>
    182     /// Occurs when a variable has been deleted.
    183     /// </summary>
    184     event EventHandler<VariableEventArgs> VariableRemoved;
     98    event EventHandler<ParameterEventArgs> ParameterRemoved;
    18599    /// <summary>
    186100    /// Occurs when the current instance is executed.
Note: See TracChangeset for help on using the changeset viewer.