# The trio of `add_scoped_*.yaml` files are a test yaml structure that uses
# each feature of the model directives system.  This file is the top-level of
# a three-file inclusion hierarchy of model directives.

directives:

# No namespace.
- add_directives:
    file: package://process_model_directives_test/add_scoped_sub.dmd.yaml
- add_frame:
    name: simple_model::top_added_frame
    X_PF:
      base_frame: simple_model::sub_added_frame
      translation: [5, 10, 15]
- add_frame:
    name: simple_model_test_frame
    X_PF:
      base_frame: simple_model::__model__

# Left.
- add_model_instance:
    # `model_namespace` requires a corresponding model instance so that frames
    # can be added to it.
    name: left
- add_directives:
    file: package://process_model_directives_test/add_scoped_sub.dmd.yaml
    model_namespace: left
- add_frame:
    name: left::simple_model::top_added_frame
    X_PF:
      base_frame: left::simple_model::sub_added_frame
      translation: [5, 10, 15]
# This frame is only for testing name scoping.
# TODO(aaronchongth): Add testing for posturing and welding.
- add_frame:
    name: left::simple_model_test_frame
    X_PF:
      base_frame: left::simple_model::__model__

# Right.
- add_model_instance:
    name: right
- add_directives:
    file: package://process_model_directives_test/add_scoped_sub.dmd.yaml
    model_namespace: right
- add_frame:
    name: right::simple_model::top_added_frame
    X_PF:
      base_frame: right::simple_model::sub_added_frame
      translation: [5, 10, 15]
# This frame is only for testing name scoping.
# TODO(aaronchongth): Add testing for posturing and welding.
- add_frame:
    name: right::simple_model_test_frame
    X_PF:
      base_frame: right::simple_model::__model__

# Mid (nested).
- add_model_instance:
    name: mid
- add_directives:
    file: package://process_model_directives_test/add_scoped_mid.dmd.yaml
    model_namespace: mid
- add_frame:
    name: mid::nested::simple_model::top_added_frame
    X_PF:
      base_frame: mid::nested::simple_model::sub_added_frame
      translation: [5, 10, 15]
