Interface LoadingLimitsAdder<L extends LoadingLimits,A extends LoadingLimitsAdder<L,A>>

All Superinterfaces:
OperationalLimitsAdder<L,A>
All Known Subinterfaces:
ActivePowerLimitsAdder, ApparentPowerLimitsAdder, CurrentLimitsAdder
All Known Implementing Classes:
ActivePowerLimitsAdderImpl, ApparentPowerLimitsAdderImpl, CurrentLimitsAdderImpl

public interface LoadingLimitsAdder<L extends LoadingLimits,A extends LoadingLimitsAdder<L,A>> extends OperationalLimitsAdder<L,A>
Author:
Geoffroy Jamgotchian <geoffroy.jamgotchian at rte-france.com>
  • Method Details

    • setPermanentLimit

      A setPermanentLimit(double limit)
    • beginTemporaryLimit

    • getPermanentLimit

      double getPermanentLimit()

      Get the permanent limit to add.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Returns:
      the permanent limit
    • getTemporaryLimitValue

      double getTemporaryLimitValue(int acceptableDuration)

      Get the temporary limit value corresponding to the given acceptable duration.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Parameters:
      acceptableDuration - the acceptable duration
      Returns:
      the corresponding temporary limit value, or Double.NaN if none is defined.
    • getTemporaryLimitValue

      double getTemporaryLimitValue(String name)

      Get the temporary limit value corresponding to the given name.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Parameters:
      name - the temporary limit name
      Returns:
      the corresponding temporary limit value, or Double.NaN if none is defined.
    • getTemporaryLimitAcceptableDuration

      int getTemporaryLimitAcceptableDuration(String name)

      Get the temporary limit value corresponding to the given name.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Parameters:
      name - the temporary limit name
      Returns:
      the corresponding temporary limit value, or Integer.MAX_VALUE if none is defined.
    • getLowestTemporaryLimitValue

      double getLowestTemporaryLimitValue()

      Get the lowest value of the temporary limits to create.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Returns:
      the lowest temporary limit value, or Double.NaN if no temporary limits are defined.
    • hasTemporaryLimits

      boolean hasTemporaryLimits()

      Indicate if temporary limits to create are defined in the adder.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Returns:
      true if temporary limits to create are defined, false otherwise.
    • getTemporaryLimitNames

      Collection<String> getTemporaryLimitNames()

      Get the names of the temporary limits to create.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Returns:
      a collection containing the names of the defined temporary limits.
    • removeTemporaryLimit

      void removeTemporaryLimit(String name)

      Remove from the temporary limits to create the one(s) corresponding to the given name.

      This method doesn't throw any Exception if no corresponding temporary limits are found.

      This method is useful to fix permanent or temporary limits before calling OperationalLimitsAdder.add().

      Parameters:
      name - a temporary limit name
    • getOwnerId

      String getOwnerId()

      Get the id of the network element on which the LoadingLimits should be added.

      Returns:
      the id of the owner network element
    • fixLimits

      default A fixLimits()

      Fix the limits to create if needed, especially the permanent limit when it is not defined (equals Double.NaN).

      Returns:
      the adder
      See Also:
    • fixLimits

      default A fixLimits(double missingPermanentLimitPercentage)

      Fix the limits to create if needed, especially the permanent limit when it is not defined (equals Double.NaN).

      Parameters:
      missingPermanentLimitPercentage - the percentage to use to compute the permanentLimit if it is not defined.
      Returns:
      the adder
      See Also:
    • fixLimits

      default A fixLimits(double missingPermanentLimitPercentage, LoadingLimitsUtil.LimitFixLogger limitFixLogger)

      Fix the limits to create if needed, especially the permanent limit when it is not defined (equals Double.NaN).

      Parameters:
      missingPermanentLimitPercentage - the percentage to use to compute the permanentLimit if it is not defined.
      limitFixLogger - a logger allowing to report the changes applied when fixing the permanent limit.
      Returns:
      the adder
      See Also: