Configuration File for the Belief State System
Many aspects of the belief state system can be configured from a central config.cfg
configuration file (following the libconfig syntax). The file does not have to be placed in the ROS package directory of the belief state, but could potentially reside in three places:
- The directory from which you run the beliefstate binary (
./
) - The
~/.beliefstate/
directory (in your home directory) - The beliefstate package's directory
When placed in one of these directories, its name must be config.cfg
. Additionally, the file path (and name) for the configuration file can be manually specified when running the beliefstate binary:
$ rosrun beliefstate beliefstate --config <path-to-config-file>/<filename>
The predefined directories are tried in the order shown above, but a manually specified configuration file takes precedence over the others.
Configuration Options
The following main sections with their respective options can be specified in the configuration file:
persistent-data-storage
– General settings for persistent data storagebase-data-directory
(string): todo (pays respect to the directory resolution tokens)use-mongodb
(bool): Enable the use of a MongoDB database servermongodb
– Details about how to connect to MongoDB database servershost
(string): Hostname or IP of the MongoDB instance to useport
(integer): Port of the MongoDB instance to usedatabase
(string): MongoDB database name to select
experiment-data
– Settings for naming conventions and storage places for individual experiment dataexperiment-name-mask
(string): todosymlink-name
(string): todo
plugins
– Settings specifying which plugins to load and how to parameterize themload-development-plugins
(bool): Load or ignore development pluginssearch-paths
(list): Search paths for finding plugin binaries (pays respect to the directory resolution tokens)load
(list): Comma-separated list of bare plugin-names to load when starting the systemcolors
(list): Comma-separated list of color-coding strings for plugin outputsindividual-configurations
(list): Consists of individual (custom) configurations for plugins. These are groups of configuration settings, each of them holding at least aplugin
field, plus additional custom fields:plugin
(string): Bare plugin name this settings-group is valid for- field (type): field can be any field name except for
plugin
. The field values can be of type, with type being either a string, a bool, an integer, or a new group, allowing for nested configuration trees for the plugins. When setting a string value, this value pays respect to the directory resolution tokens.
miscellaneous
– Misc settings (mostly cosmetic, controlling output verbosity)display-unhandled-events
(bool): Display a warning or ignore it every time an unhandled internal event gets droppeddisplay-unhandled-service-events
(bool): Display a warning or ignore it every time an unhandled internal service event gets dropped