org.eclipse.viatra.dse.designspace.api

## Class TrajectoryInfo

- java.lang.Object
- - org.eclipse.viatra.dse.designspace.api.TrajectoryInfo

- All Implemented Interfaces:
    java.lang.Cloneable

      public class TrajectoryInfo
      extends java.lang.Object
      implements java.lang.Cloneable

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `TrajectoryInfo(java.util.List<java.lang.Object> stateIds, java.util.List<java.lang.Object> trajectory, java.util.List<BatchTransformationRule<?,?>> rules, java.util.List<java.util.Map<java.lang.String,java.lang.Double>> measuredCosts)`
    `` | `TrajectoryInfo(java.lang.Object initialStateId)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addStep(java.lang.Object activationId, BatchTransformationRule<?,?> rule, java.lang.Object newStateId, java.util.Map<java.lang.String,java.lang.Double> measuredCosts)`
    `void` | `backtrack()`
    `boolean` | `canStepBack()`
    `TrajectoryInfo` | `clone()`
    `SolutionTrajectory` | `createSolutionTrajectory(IStateCoderFactory stateCoderFactory)`
    `java.lang.Object` | `getCurrentStateId()`
    `int` | `getDepth()`
    `java.lang.Object` | `getInitialStateId()`
    `java.lang.Object` | `getLastActivationId()`
    `java.util.List<java.util.Map<java.lang.String,java.lang.Double>>` | `getMeasuredCosts()`
    `java.util.List<BatchTransformationRule<?,?>>` | `getRules()`
    `java.util.List<java.lang.Object>` | `getStateTrajectory()`
    `java.util.List<java.lang.Object>` | `getTrajectory()`
    `boolean` | `modifyLastStateCode(java.lang.Object stateCode)` This method is only used by the `DesignSpaceManager`.
    `java.lang.String` | `toString()`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### TrajectoryInfo

          public TrajectoryInfo(java.lang.Object initialStateId)

    - #### TrajectoryInfo

          protected TrajectoryInfo(java.util.List<java.lang.Object> stateIds,
                                   java.util.List<java.lang.Object> trajectory,
                                   java.util.List<BatchTransformationRule<?,?>> rules,
                                   java.util.List<java.util.Map<java.lang.String,java.lang.Double>> measuredCosts)

  - ### Method Detail

    - #### addStep

          public void addStep(java.lang.Object activationId,
                              BatchTransformationRule<?,?> rule,
                              java.lang.Object newStateId,
                              java.util.Map<java.lang.String,java.lang.Double> measuredCosts)

    - #### backtrack

          public void backtrack()

    - #### getInitialStateId

          public java.lang.Object getInitialStateId()

    - #### getCurrentStateId

          public java.lang.Object getCurrentStateId()

    - #### getLastActivationId

          public java.lang.Object getLastActivationId()

    - #### getTrajectory

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

    - #### getStateTrajectory

          public java.util.List<java.lang.Object> getStateTrajectory()

    - #### getRules

          public java.util.List<BatchTransformationRule<?,?>> getRules()

    - #### getDepth

          public int getDepth()

    - #### getMeasuredCosts

          public java.util.List<java.util.Map<java.lang.String,java.lang.Double>> getMeasuredCosts()

    - #### createSolutionTrajectory

          public SolutionTrajectory createSolutionTrajectory(IStateCoderFactory stateCoderFactory)

    - #### canStepBack

          public boolean canStepBack()

    - #### clone

          public TrajectoryInfo clone()

      Overrides:
        `clone` in class `java.lang.Object`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### modifyLastStateCode

          public boolean modifyLastStateCode(java.lang.Object stateCode)

      This method is only used by the `DesignSpaceManager`.
      Parameters:
        `stateCode` -
      Returns:
        false if the initial state code is the last one, otherwise true.