[libcamera-devel,v2,06/30] cam: options: Slit OptionsParser::usage() in two functions
diff mbox series

Message ID 20210712215645.30478-7-laurent.pinchart@ideasonboard.com
State Superseded
Headers show
Series
  • Multi-camera support in the cam application
Related show

Commit Message

Laurent Pinchart July 12, 2021, 9:56 p.m. UTC
To prepare for code reuse, split the printing of options out of
OptionsParser::usage() to a separate function.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
---
 src/cam/options.cpp | 12 +++++++++---
 src/cam/options.h   |  2 ++
 2 files changed, 11 insertions(+), 3 deletions(-)

Patch
diff mbox series

diff --git a/src/cam/options.cpp b/src/cam/options.cpp
index 721a808ac859..350c8084f75f 100644
--- a/src/cam/options.cpp
+++ b/src/cam/options.cpp
@@ -902,8 +902,6 @@  OptionsParser::Options OptionsParser::parse(int argc, char **argv)
  */
 void OptionsParser::usage()
 {
-	std::cerr << "Options:" << std::endl;
-
 	unsigned int indent = 0;
 
 	for (const Option &option : options_) {
@@ -923,7 +921,15 @@  void OptionsParser::usage()
 
 	indent = (indent + 7) / 8 * 8;
 
-	for (const Option &option : options_) {
+	std::cerr << "Options:" << std::endl;
+
+	usageOptions(options_, indent);
+}
+
+void OptionsParser::usageOptions(const std::list<Option> &options,
+				 unsigned int indent)
+{
+	for (const Option &option : options) {
 		std::string argument;
 		if (option.hasShortOption())
 			argument = std::string("  -")
diff --git a/src/cam/options.h b/src/cam/options.h
index 0b8bb172d184..01a5d36a63fb 100644
--- a/src/cam/options.h
+++ b/src/cam/options.h
@@ -95,6 +95,8 @@  public:
 	void usage();
 
 private:
+	void usageOptions(const std::list<Option> &options, unsigned int indent);
+
 	std::list<Option> options_;
 	std::map<unsigned int, Option *> optionsMap_;
 };