]> Creatis software - clitk.git/blobdiff - utilities/gengetopt/skels/option_arg.cc
Sync gengetopt cmake files with rtk
[clitk.git] / utilities / gengetopt / skels / option_arg.cc
diff --git a/utilities/gengetopt/skels/option_arg.cc b/utilities/gengetopt/skels/option_arg.cc
new file mode 100644 (file)
index 0000000..5b02e04
--- /dev/null
@@ -0,0 +1,183 @@
+/*
+ * File automatically generated by
+ * gengen 1.3 by Lorenzo Bettini 
+ * http://www.gnu.org/software/gengen
+ */
+
+#include "option_arg.h"
+
+void
+option_arg_gen_class::generate_option_arg(ostream &stream, unsigned int indent)
+{
+  string indent_str (indent, ' ');
+  indent = 0;
+
+  if (long_long_arg)
+    {
+      stream << "#ifdef HAVE_LONG_LONG";
+      stream << "\n";
+      stream << indent_str;
+      generate_string (type, stream, indent + indent_str.length ());
+      stream << " ";
+      generate_string (name, stream, indent + indent_str.length ());
+      stream << "_arg; /**< ";
+      stream << "@";
+      stream << "brief ";
+      generate_string (desc, stream, indent + indent_str.length ());
+      if (has_default)
+        {
+          stream << " (default=";
+          generate_string (default_value, stream, indent + indent_str.length ());
+          stream << ")";
+        }
+      stream << ".  */";
+      stream << "\n";
+      stream << indent_str;
+      stream << "#else";
+      stream << "\n";
+      stream << indent_str;
+      generate_string (longtype, stream, indent + indent_str.length ());
+      stream << " ";
+      generate_string (name, stream, indent + indent_str.length ());
+      stream << "_arg; /**< ";
+      stream << "@";
+      stream << "brief ";
+      generate_string (desc, stream, indent + indent_str.length ());
+      if (has_default)
+        {
+          stream << " (default=";
+          generate_string (default_value, stream, indent + indent_str.length ());
+          stream << ")";
+        }
+      stream << ".  */";
+      stream << "\n";
+      stream << indent_str;
+      stream << "#endif";
+      stream << "\n";
+      stream << indent_str;
+      generate_string (origtype, stream, indent + indent_str.length ());
+      stream << " ";
+      generate_string (name, stream, indent + indent_str.length ());
+      stream << "_orig;        /**< ";
+      stream << "@";
+      stream << "brief ";
+      generate_string (desc, stream, indent + indent_str.length ());
+      stream << " original value given at command line.  */";
+      stream << "\n";
+      stream << indent_str;
+    }
+  else
+    {
+      if (flag_arg)
+        {
+          generate_string (type, stream, indent + indent_str.length ());
+          stream << " ";
+          generate_string (name, stream, indent + indent_str.length ());
+          stream << "_flag;    /**< ";
+          stream << "@";
+          stream << "brief ";
+          generate_string (desc, stream, indent + indent_str.length ());
+          stream << " (default=";
+          if (default_on)
+            {
+              stream << "on";
+            }
+          else
+            {
+              stream << "off";
+            }
+          stream << ").  */";
+          stream << "\n";
+          stream << indent_str;
+        }
+      else
+        {
+          if (has_arg)
+            {
+              if (has_enum)
+                {
+                  stream << "enum enum_";
+                  generate_string (name, stream, indent + indent_str.length ());
+                  stream << " ";
+                  if (multiple)
+                    {
+                      stream << "*";
+                    }
+                  generate_string (name, stream, indent + indent_str.length ());
+                  stream << "_arg;     /**< ";
+                  stream << "@";
+                  stream << "brief ";
+                  generate_string (desc, stream, indent + indent_str.length ());
+                  if (has_default)
+                    {
+                      stream << " (default='";
+                      generate_string (default_value, stream, indent + indent_str.length ());
+                      stream << "')";
+                    }
+                  stream << ".  */";
+                  stream << "\n";
+                  stream << indent_str;
+                }
+              else
+                {
+                  generate_string (type, stream, indent + indent_str.length ());
+                  stream << " ";
+                  generate_string (name, stream, indent + indent_str.length ());
+                  stream << "_arg;     /**< ";
+                  stream << "@";
+                  stream << "brief ";
+                  generate_string (desc, stream, indent + indent_str.length ());
+                  if (has_default)
+                    {
+                      stream << " (default='";
+                      generate_string (default_value, stream, indent + indent_str.length ());
+                      stream << "')";
+                    }
+                  stream << ".  */";
+                  stream << "\n";
+                  stream << indent_str;
+                }
+              generate_string (origtype, stream, indent + indent_str.length ());
+              stream << " ";
+              generate_string (name, stream, indent + indent_str.length ());
+              stream << "_orig;        /**< ";
+              stream << "@";
+              stream << "brief ";
+              generate_string (desc, stream, indent + indent_str.length ());
+              stream << " original value given at command line.  */";
+              stream << "\n";
+              stream << indent_str;
+            }
+        }
+    }
+  if (multiple)
+    {
+      stream << "unsigned int ";
+      generate_string (name, stream, indent + indent_str.length ());
+      stream << "_min; /**< ";
+      stream << "@";
+      stream << "brief ";
+      generate_string (desc, stream, indent + indent_str.length ());
+      stream << "'s minimum occurreces */";
+      stream << "\n";
+      stream << indent_str;
+      stream << "unsigned int ";
+      generate_string (name, stream, indent + indent_str.length ());
+      stream << "_max; /**< ";
+      stream << "@";
+      stream << "brief ";
+      generate_string (desc, stream, indent + indent_str.length ());
+      stream << "'s maximum occurreces */";
+      stream << "\n";
+      stream << indent_str;
+    }
+  stream << "const char *";
+  generate_string (name, stream, indent + indent_str.length ());
+  stream << "_help; /**< ";
+  stream << "@";
+  stream << "brief ";
+  generate_string (desc, stream, indent + indent_str.length ());
+  stream << " help description.  */";
+  stream << "\n";
+  stream << indent_str;
+}