org.eclipse.viatra.cep.core.metamodels.derived

## Class DerivedFeatures

- java.lang.Object
- - org.eclipse.viatra.query.runtime.api.impl.BaseQueryGroup
  - - org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup
    - - org.eclipse.viatra.cep.core.metamodels.derived.DerivedFeatures

- All Implemented Interfaces:
    IQueryGroup

      public final class DerivedFeatures
      extends BaseGeneratedPatternGroup

  A pattern group formed of all public patterns defined in derivedFeatures.vql.

  Use the static instance as any `org.eclipse.viatra.query.runtime.api.IPatternGroup`, to conveniently prepare a VIATRA Query engine for matching all patterns originally defined in file derivedFeatures.vql, in order to achieve better performance than one-by-one on-demand matcher initialization.

  From package org.eclipse.viatra.cep.core.metamodels.derived, the group contains the definition of the following patterns:

  - initialState
  - finalStates
  - trapState
  - eventTokensInModel
  See Also:
    `IPatternGroup`

- - ### Field Summary

    - ### Fields inherited from class org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup

      `querySpecifications`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `EventTokensInModelQuerySpecification` | `getEventTokensInModel()`
    `EventTokensInModelMatcher` | `getEventTokensInModel(ViatraQueryEngine engine)`
    `FinalStatesQuerySpecification` | `getFinalStates()`
    `FinalStatesMatcher` | `getFinalStates(ViatraQueryEngine engine)`
    `InitialStateQuerySpecification` | `getInitialState()`
    `InitialStateMatcher` | `getInitialState(ViatraQueryEngine engine)`
    `TrapStateQuerySpecification` | `getTrapState()`
    `TrapStateMatcher` | `getTrapState(ViatraQueryEngine engine)`
    `static DerivedFeatures` | `instance()` Access the pattern group.

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup

      `getSpecifications`

    - ### Methods inherited from class org.eclipse.viatra.query.runtime.api.impl.BaseQueryGroup

      `prepare, prepare`

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

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

- - ### Method Detail

    - #### instance

          public static DerivedFeatures instance()
                                          throws ViatraQueryException

      Access the pattern group.
      Returns:
        the singleton instance of the group
      Throws:
        `ViatraQueryException` - if there was an error loading the generated code of pattern specifications

    - #### getInitialState

          public InitialStateQuerySpecification getInitialState()
                                                         throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getInitialState

          public InitialStateMatcher getInitialState(ViatraQueryEngine engine)
                                              throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getFinalStates

          public FinalStatesQuerySpecification getFinalStates()
                                                       throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getFinalStates

          public FinalStatesMatcher getFinalStates(ViatraQueryEngine engine)
                                            throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getTrapState

          public TrapStateQuerySpecification getTrapState()
                                                   throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getTrapState

          public TrapStateMatcher getTrapState(ViatraQueryEngine engine)
                                        throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getEventTokensInModel

          public EventTokensInModelQuerySpecification getEventTokensInModel()
                                                                     throws ViatraQueryException

      Throws:
        `ViatraQueryException`

    - #### getEventTokensInModel

          public EventTokensInModelMatcher getEventTokensInModel(ViatraQueryEngine engine)
                                                          throws ViatraQueryException

      Throws:
        `ViatraQueryException`