| 663 | } |
| 664 | |
| 665 | std::string ArgsManager::GetHelpMessage() const |
| 666 | { |
| 667 | const bool show_debug = GetBoolArg("-help-debug", false); |
| 668 | |
| 669 | std::string usage = ""; |
| 670 | LOCK(cs_args); |
| 671 | for (const auto& arg_map : m_available_args) { |
| 672 | switch(arg_map.first) { |
| 673 | case OptionsCategory::OPTIONS: |
| 674 | usage += HelpMessageGroup("Options:"); |
| 675 | break; |
| 676 | case OptionsCategory::CONNECTION: |
| 677 | usage += HelpMessageGroup("Connection options:"); |
| 678 | break; |
| 679 | case OptionsCategory::ZMQ: |
| 680 | usage += HelpMessageGroup("ZeroMQ notification options:"); |
| 681 | break; |
| 682 | case OptionsCategory::DEBUG_TEST: |
| 683 | usage += HelpMessageGroup("Debugging/Testing options:"); |
| 684 | break; |
| 685 | case OptionsCategory::NODE_RELAY: |
| 686 | usage += HelpMessageGroup("Node relay options:"); |
| 687 | break; |
| 688 | case OptionsCategory::BLOCK_CREATION: |
| 689 | usage += HelpMessageGroup("Block creation options:"); |
| 690 | break; |
| 691 | case OptionsCategory::RPC: |
| 692 | usage += HelpMessageGroup("RPC server options:"); |
| 693 | break; |
| 694 | case OptionsCategory::WALLET: |
| 695 | usage += HelpMessageGroup("Wallet options:"); |
| 696 | break; |
| 697 | case OptionsCategory::WALLET_DEBUG_TEST: |
| 698 | if (show_debug) usage += HelpMessageGroup("Wallet debugging/testing options:"); |
| 699 | break; |
| 700 | case OptionsCategory::CHAINPARAMS: |
| 701 | usage += HelpMessageGroup("Chain selection options:"); |
| 702 | break; |
| 703 | case OptionsCategory::GUI: |
| 704 | usage += HelpMessageGroup("UI Options:"); |
| 705 | break; |
| 706 | case OptionsCategory::ELEMENTS: |
| 707 | usage += HelpMessageGroup("Elements Options:"); |
| 708 | break; |
| 709 | case OptionsCategory::COMMANDS: |
| 710 | usage += HelpMessageGroup("Commands:"); |
| 711 | break; |
| 712 | case OptionsCategory::REGISTER_COMMANDS: |
| 713 | usage += HelpMessageGroup("Register Commands:"); |
| 714 | break; |
| 715 | default: |
| 716 | break; |
| 717 | } |
| 718 | |
| 719 | // When we get to the hidden options, stop |
| 720 | if (arg_map.first == OptionsCategory::HIDDEN) break; |
| 721 | |
| 722 | for (const auto& arg : arg_map.second) { |