Module: mola-launcher
Application: mola-cli
mola-cli is the most-common entry point to the MOLA system for users.
Refer to demos for real examples to launch and run SLAM systems.
SYNOPSIS
USAGE:
mola-cli [OPTIONS] [config...]
POSITIONALS:
config TEXT ...
Input YAML config file(s) (*.yaml). If more than one file is given,
all of them are loaded and their `modules` sections are merged
together into a single running system.
OPTIONS:
-h, --help
Print this help message and exit.
-v, --verbosity TEXT
Verbosity level: ERROR|WARN|INFO|DEBUG (Default: INFO)
-p, --profiler
Enable time profiler by default in all modules (Default: NO)
--profiler-whole
Enable whole-history time profiler in all modules (Default: NO). **DO
NOT** use in production, only to benchmark short runs (unbounded
memory usage)
--rtti-list-all
Loads all MOLA modules, then list all classes registered via
mrpt::rtti, and exits.
--rtti-children-of TEXT
Loads all MOLA modules, then list all known classes that inherit from
the given one, and exits.
--list-modules
Loads all MOLA modules, then list them. It also shows the list of
paths in which the program looks for module dynamic libraries, then
exits.
--list-module-shared-dirs
Finds all MOLA module source/shared directories, then list them. Paths
can be added with the environment variable MOLA_MODULES_SHARED_PATH.
Notes:
Finer-control of the verbosity for individual modules is possible by using the verbosity variable in the YAML launch file, see: SLAM system YAML configuration file format.
Each YAML file keeps the same self-contained structure described in SLAM system YAML configuration file format (a top-level
modulesentry). When several files are given,mola-cliprocesses them in the order given on the command line, instantiating themodulesof each one into the same running system. Modulenames must be unique across all the given files.
Example: Launching a SLAM system with performance details at end:
mola-cli kitti_lidar_slam.yml -p
Example: Launching a SLAM system whose sensors, pipeline, and visualization are defined in separate, reusable files:
mola-cli sensors.yaml pipeline.yaml visualization.yaml
Example: To list all known ICP algorithms:
mola-cli --rtti-children-of mp2p_icp::ICP_Base
Listing children of class: mp2p_icp::ICP_Base
mp2p_icp::ICP_GaussNewton
mp2p_icp::ICP_Horn_MultiCloud
mp2p_icp::ICP_OLAE
Application: mola-dir
mola-dir is a CLI program that finds the shared directory
(see Module shared files paths) of a module.
It is most-commonly useful inside evaluation expression of MOLA definition files (SLAM system YAML configuration file format).
SYNOPSIS
USAGE:
mola-dir <module_name>
Note: To list all known shared directories of modules, use:
mola-cli --list-module-shared-dirs
Application: mola-yaml-parser
mola-yaml-parser is a CLI program that parses YAML files using MOLA-specific
extensions (see YAML pre-processing), and outputs the result to cout.
SYNOPSIS
USAGE:
mola-yaml-parser [OPTIONS] YAML_file
POSITIONALS:
YAML_file TEXT REQUIRED
Input YAML file (required) (*.yml)
OPTIONS:
-h, --help
Print this help message and exit.
--no-includes
Disables solving YAML `$include{}`s (Default: NO)
--no-cmd-runs
Disables solving YAML `$(cmd)`s (Default: NO)
--no-env-vars
Disables solving YAML `${xxx}`s (Default: NO)
Example:
mola-yaml-parser --no-env-vars demos/kitti_lidar_slam.yml
C++ library: mola-launcher
See mola_launcher_grp.