    

 ## On this page

  

 

 # File cli\_provider.h

 Last update: 22.04.2026 

![](https://img.shields.io/badge/language-C%2B%2B-blue "C++")

**Location**: `autonomy/cli/cli_provider/cli_provider.h`

## Classes

- [simulation\_framework::autonomy::cli::CliProvider](classsimulation__framework_1_1autonomy_1_1cli_1_1CliProvider.md#classsimulation__framework_1_1autonomy_1_1cli_1_1CliProvider)

## Namespaces

- [simulation\_framework](namespacesimulation__framework.md#namespacesimulation__framework)
- [autonomy](namespaceautonomy.md#namespaceautonomy)
- [simulation\_framework::autonomy](namespacesimulation__framework_1_1autonomy.md#namespacesimulation__framework_1_1autonomy)
- [cli](namespacecli.md#namespacecli)
- [simulation\_framework::autonomy::cli](namespacesimulation__framework_1_1autonomy_1_1cli.md#namespacesimulation__framework_1_1autonomy_1_1cli)

## Includes

- [autonomy/simulation/sim\_instance/i\_sim\_instance\_creator.h](i__sim__instance__creator_8h.md#i__sim__instance__creator_8h)
- [core/service/cli/cli.h](cli_8h.md#cli_8h)

## Source

```cpp


#ifndef SIMFWK_AUTONOMY_AUTONOMY_CLI_CLIPROVIDER_CLIPROVIDER_H
#define SIMFWK_AUTONOMY_AUTONOMY_CLI_CLIPROVIDER_CLIPROVIDER_H

#include "autonomy/simulation/sim_instance/i_sim_instance_creator.h"
#include "core/service/cli/cli.h"

namespace simulation_framework
{

namespace autonomy
{

namespace cli
{


class CliProvider final
{
  public:
    CliProvider(std::unique_ptr<ISimInstanceCreator> sim_instance_creator);

    ~CliProvider() = default;

    const std::unique_ptr<core::Cli>& GetCommandLineInterface();

    core::SimulationParameters GetCoreParameters() const;

    bool Parse(int argc, const char** argv);

  private:
    core::SimulationParameters core_parameters_{};
    std::unique_ptr<core::Cli> cli_;
    std::unique_ptr<ISimInstanceCreator> sim_instance_creator_;
};

}  // namespace cli
}  // namespace autonomy
}  // namespace simulation_framework

#endif  // SIMFWK_AUTONOMY_AUTONOMY_CLI_CLIPROVIDER_CLIPROVIDER_H

```