Configuring Plugins in Stackfiles

All plugins that are part of a simulation can provide configuration through stackfiles. This section will show you how you can find out which configuration is possible for each plugin.

Try the following command to see which plugins are available based on your provided conanfile, such as the example tests/conanfile_default.py:

$ cloe-launch exec tests/conanfile_default.py -- usage

[...]

---

Available simulators:
minimator [<SOME_PATH>/lib/cloe/simulator_minimator.so]
nop       [builtin://simulator/nop]

Available controllers:
basic              [<SOME_PATH>/lib/cloe/controller_basic.so]
gndtruth_extractor [<SOME_PATH>/lib/cloe/controller_gndtruth_extractor.so]
demo_printer       [<SOME_PATH>/lib/cloe/controller_demo_printer.so]
demo_stuck         [<SOME_PATH>/lib/cloe/controller_demo_stuck.so]
virtue             [<SOME_PATH>/lib/cloe/controller_virtue.so]
nop                [builtin://controller/nop]

Available components:
noisy_lane_sensor   [<SOME_PATH>/lib/cloe/component_noisy_lane_sensor.so]
noisy_object_sensor [<SOME_PATH>/lib/cloe/component_noisy_object_sensor.so]
speedometer         [<SOME_PATH>/lib/cloe/component_speedometer.so]

To see the configuration options of the controller basic, do:

cloe-launch exec tests/conanfile_default.py -- usage basic
Name: basic
Type: controller
Path: ~/.conan/data/cloe-plugin-basic/0.25.0/cloe/develop/package/722452d8f3bfc1eef1fc5de534638769b66120b8/lib/cloe/controller_basic.so
Usage: {
  "acc": "object :: ACC configuration",
  "aeb": "object :: AEB configuration",
  "driver_request": "string :: component providing driver request",
  "lka": "object :: LKA configuration"
}
Defaults: {
  "acc": {
    "derivative_factor_dist_control": 5.0,
    "derivative_factor_speed_control": 5.0,
    "ego_sensor": "cloe::default_ego_sensor",
    "integral_factor_dist_control": 0.0,
    "integral_factor_speed_control": 0.0,
    "latlong_actuator": "cloe::default_latlong_actuator",
    "limit_acceleration": 3.0,
    "limit_deceleration": 5.0,
    "proportional_factor_dist_control": 0.8,
    "proportional_factor_speed_control": 0.8,
    "world_sensor": "cloe::default_world_sensor"
  },
  "aeb": {
    "always_full_stop": false,
    "ego_sensor": "cloe::default_ego_sensor",
    "enabled": true,
    "latlong_actuator": "cloe::default_latlong_actuator",
    "limit_deceleration": 8.0,
    "world_sensor": "cloe::default_world_sensor"
  },
  "driver_request": "",
  "lka": {
    "adjustment_rad": 0.02,
    "enabled": false,
    "latlong_actuator": "cloe::default_latlong_actuator",
    "lerp_factor": 0.1,
    "tolerance": 0.1,
    "world_sensor": "cloe::default_world_sensor"
  }
}