Radium Engine  1.5.20
Loading...
Searching...
No Matches
CLIBaseApplication.hpp
1#pragma once
2#include <Headless/CLI/CLI.hpp>
3#include <Headless/RaHeadless.hpp>
4
5namespace Ra {
6namespace Headless {
18class HEADLESS_API CLIBaseApplication
19{
20
21 protected:
26
27 public:
29 CLIBaseApplication() = default;
31 virtual ~CLIBaseApplication() = default;
32
36 template <typename... Args>
37 CLI::Option* addOption( Args&&... args );
38
42 template <typename... Args>
43 CLI::Option* addFlag( Args&&... args );
44
58 virtual int init( int argc, const char* argv[] );
59};
60
61template <typename... Args>
62CLI::Option* CLIBaseApplication::addOption( Args&&... args ) {
63 return m_cmdLineParser.add_option( args... );
64}
65
66template <typename... Args>
67CLI::Option* CLIBaseApplication::addFlag( Args&&... args ) {
68 return m_cmdLineParser.add_flag( args... );
69}
70
71} // namespace Headless
72} // namespace Ra
virtual ~CLIBaseApplication()=default
Base destructor.
CLI::Option * addFlag(Args &&... args)
CLI::Option * addOption(Args &&... args)
CLIBaseApplication()=default
Base constructor.
hepler function to manage enum as underlying types in VariableSet
Definition Cage.cpp:3