org.eclipse.viatra.dse.base

## Interface IDseStrategyContext

- All Known Implementing Classes:
    ThreadContext

      public interface IDseStrategyContext

  This interface is only to overview the required methods for exploration strategies. It is not used explicitly.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `backtrack()`
    `void` | `backtrackUntilLastCommonActivation(java.lang.Object[] trajectory)`
    `void` | `backtrackUntilRoot()`
    `Fitness` | `calculateFitness()`
    `boolean` | `checkGlobalConstraints()`
    `void` | `executeAcitvationId(java.lang.Object activationId)`
    `boolean` | `executeRandomActivationId()`
    `void` | `executeTrajectory(java.lang.Object[] activationIds)`
    `void` | `executeTrajectory(java.lang.Object[] activationIds, int fromIncludedIndex, int toExcludedIndex)`
    `int` | `executeTrajectoryByTrying(java.lang.Object[] activationIds)`
    `int` | `executeTrajectoryByTrying(java.lang.Object[] activationIds, int fromIncludedIndex, int toExcludedIndex)`
    `int` | `executeTrajectoryByTryingWithoutStateCoding(java.lang.Object[] activationIds)`
    `int` | `executeTrajectoryByTryingWithoutStateCoding(java.lang.Object[] activationIds, int fromIncludedIndex, int toExcludedIndex)`
    `void` | `executeTrajectoryWithMinimalBacktrack(java.lang.Object[] trajectory)`
    `void` | `executeTrajectoryWithMinimalBacktrack(java.lang.Object[] trajectory, int toExcludedIndex)`
    `void` | `executeTrajectoryWithMinimalBacktrackWithoutStateCoding(java.lang.Object[] trajectory)`
    `void` | `executeTrajectoryWithMinimalBacktrackWithoutStateCoding(java.lang.Object[] trajectory, int toExcludedIndex)`
    `int` | `executeTrajectoryWithoutStateCoding(java.lang.Object[] activationIds)`
    `int` | `executeTrajectoryWithoutStateCoding(java.lang.Object[] activationIds, int fromIncludedIndex, int toExcludedIndex)`
    `Activation<?>` | `getActivationById(java.lang.Object activationId)`
    `java.util.Collection<java.lang.Object>` | `getCurrentActivationIds()`
    `java.lang.Object` | `getCurrentStateId()`
    `int` | `getDepth()`
    `IDesignSpace` | `getDesignSpace()`
    `DesignSpaceManager` | `getDesignSpaceManager()`
    `org.eclipse.emf.edit.domain.EditingDomain` | `getEditingDomain()`
    `ExplorerThread` | `getExplorerThread()`
    `java.util.List<IGlobalConstraint>` | `getGlobalConstraints()`
    `GlobalContext` | `getGlobalContext()`
    `Fitness` | `getLastFitness()`
    `IObjective[][]` | `getLeveledObjectives()`
    `org.eclipse.emf.common.notify.Notifier` | `getModel()`
    `ObjectiveComparatorHelper` | `getObjectiveComparatorHelper()`
    `java.util.List<IObjective>` | `getObjectives()`
    `ViatraQueryEngine` | `getQueryEngine()`
    `BatchTransformationRule<?,?>` | `getRuleByActivation(Activation<?> activation)`
    `BatchTransformationRule<?,?>` | `getRuleByActivationId(java.lang.Object activationId)`
    `BatchTransformationRule<?,?>` | `getRuleByRuleSpecification(RuleSpecification<?> ruleSpecification)`
    `RuleEngine` | `getRuleEngine()`
    `java.util.Set<BatchTransformationRule<?,?>>` | `getRules()`
    `java.lang.Object` | `getSharedObject()`
    `SolutionStore` | `getSolutionStore()`
    `IStateCoder` | `getStateCoder()`
    `IStrategy` | `getStrategy()`
    `java.util.List<java.lang.Object>` | `getTrajectory()`
    `java.util.List<java.lang.Object>` | `getTrajectoryCopied()`
    `TrajectoryInfo` | `getTrajectoryInfo()`
    `java.lang.Object` | `getTransitionByActivation(Activation<?> activation)`
    `java.util.Collection<java.lang.Object>` | `getUntraversedActivationIds()`
    `void` | `init()`
    `boolean` | `isCurrentStateAlreadyTraversed()`
    `boolean` | `isCurrentStateInTrajectory()`
    `void` | `newSolution()`
    `void` | `setSharedObject(java.lang.Object sharedObject)`
    `void` | `startAllThreads(IStrategyFactory strategyFactory)`
    `boolean` | `tryExecuteAcitvationId(java.lang.Object activationId)`
    `ExplorerThread` | `tryStartNewThread(IStrategy strategy)`
    `ExplorerThread` | `tryStartNewThreadWithoutModelClone(IStrategy strategy)`

- - ### Method Detail

    - #### init

          void init()

    - #### getModel

          org.eclipse.emf.common.notify.Notifier getModel()

    - #### getEditingDomain

          org.eclipse.emf.edit.domain.EditingDomain getEditingDomain()

    - #### getQueryEngine

          ViatraQueryEngine getQueryEngine()

    - #### getRuleEngine

          RuleEngine getRuleEngine()

    - #### getStrategy

          IStrategy getStrategy()

    - #### getExplorerThread

          ExplorerThread getExplorerThread()

    - #### getObjectives

          java.util.List<IObjective> getObjectives()

    - #### getLeveledObjectives

          IObjective[][] getLeveledObjectives()

    - #### getGlobalConstraints

          java.util.List<IGlobalConstraint> getGlobalConstraints()

    - #### getSolutionStore

          SolutionStore getSolutionStore()

    - #### newSolution

          void newSolution()

    - #### getObjectiveComparatorHelper

          ObjectiveComparatorHelper getObjectiveComparatorHelper()

    - #### getGlobalContext

          GlobalContext getGlobalContext()

    - #### getRules

          java.util.Set<BatchTransformationRule<?,?>> getRules()

    - #### getRuleByRuleSpecification

          BatchTransformationRule<?,?> getRuleByRuleSpecification(RuleSpecification<?> ruleSpecification)

    - #### tryStartNewThread

          ExplorerThread tryStartNewThread(IStrategy strategy)

    - #### tryStartNewThreadWithoutModelClone

          ExplorerThread tryStartNewThreadWithoutModelClone(IStrategy strategy)

    - #### startAllThreads

          void startAllThreads(IStrategyFactory strategyFactory)

    - #### getSharedObject

          java.lang.Object getSharedObject()

    - #### setSharedObject

          void setSharedObject(java.lang.Object sharedObject)

    - #### getDesignSpaceManager

          DesignSpaceManager getDesignSpaceManager()

    - #### getStateCoder

          IStateCoder getStateCoder()

    - #### getDesignSpace

          IDesignSpace getDesignSpace()

    - #### getTrajectoryInfo

          TrajectoryInfo getTrajectoryInfo()

    - #### getTrajectory

          java.util.List<java.lang.Object> getTrajectory()

    - #### getTrajectoryCopied

          java.util.List<java.lang.Object> getTrajectoryCopied()

    - #### getDepth

          int getDepth()

    - #### getCurrentStateId

          java.lang.Object getCurrentStateId()

    - #### getTransitionByActivation

          java.lang.Object getTransitionByActivation(Activation<?> activation)

    - #### getActivationById

          Activation<?> getActivationById(java.lang.Object activationId)

    - #### getRuleByActivation

          BatchTransformationRule<?,?> getRuleByActivation(Activation<?> activation)

    - #### getRuleByActivationId

          BatchTransformationRule<?,?> getRuleByActivationId(java.lang.Object activationId)

    - #### getCurrentActivationIds

          java.util.Collection<java.lang.Object> getCurrentActivationIds()

    - #### getUntraversedActivationIds

          java.util.Collection<java.lang.Object> getUntraversedActivationIds()

    - #### executeAcitvationId

          void executeAcitvationId(java.lang.Object activationId)

    - #### tryExecuteAcitvationId

          boolean tryExecuteAcitvationId(java.lang.Object activationId)

    - #### executeRandomActivationId

          boolean executeRandomActivationId()

    - #### executeTrajectory

          void executeTrajectory(java.lang.Object[] activationIds)

    - #### executeTrajectory

          void executeTrajectory(java.lang.Object[] activationIds,
                                 int fromIncludedIndex,
                                 int toExcludedIndex)

    - #### executeTrajectoryByTrying

          int executeTrajectoryByTrying(java.lang.Object[] activationIds)

    - #### executeTrajectoryByTrying

          int executeTrajectoryByTrying(java.lang.Object[] activationIds,
                                        int fromIncludedIndex,
                                        int toExcludedIndex)

    - #### executeTrajectoryWithoutStateCoding

          int executeTrajectoryWithoutStateCoding(java.lang.Object[] activationIds)

    - #### executeTrajectoryWithoutStateCoding

          int executeTrajectoryWithoutStateCoding(java.lang.Object[] activationIds,
                                                  int fromIncludedIndex,
                                                  int toExcludedIndex)

    - #### executeTrajectoryByTryingWithoutStateCoding

          int executeTrajectoryByTryingWithoutStateCoding(java.lang.Object[] activationIds)

    - #### executeTrajectoryByTryingWithoutStateCoding

          int executeTrajectoryByTryingWithoutStateCoding(java.lang.Object[] activationIds,
                                                          int fromIncludedIndex,
                                                          int toExcludedIndex)

    - #### executeTrajectoryWithMinimalBacktrack

          void executeTrajectoryWithMinimalBacktrack(java.lang.Object[] trajectory)

    - #### executeTrajectoryWithMinimalBacktrack

          void executeTrajectoryWithMinimalBacktrack(java.lang.Object[] trajectory,
                                                     int toExcludedIndex)

    - #### executeTrajectoryWithMinimalBacktrackWithoutStateCoding

          void executeTrajectoryWithMinimalBacktrackWithoutStateCoding(java.lang.Object[] trajectory)

    - #### executeTrajectoryWithMinimalBacktrackWithoutStateCoding

          void executeTrajectoryWithMinimalBacktrackWithoutStateCoding(java.lang.Object[] trajectory,
                                                                       int toExcludedIndex)

    - #### backtrack

          boolean backtrack()

    - #### backtrackUntilLastCommonActivation

          void backtrackUntilLastCommonActivation(java.lang.Object[] trajectory)

    - #### backtrackUntilRoot

          void backtrackUntilRoot()

    - #### calculateFitness

          Fitness calculateFitness()

    - #### getLastFitness

          Fitness getLastFitness()

    - #### checkGlobalConstraints

          boolean checkGlobalConstraints()

    - #### isCurrentStateAlreadyTraversed

          boolean isCurrentStateAlreadyTraversed()

    - #### isCurrentStateInTrajectory

          boolean isCurrentStateInTrajectory()