Man Linux: Main Page and Category List

NAME

       stParseArgs, stShortUsage - parse command line arguments

SYNOPSIS

       #include <config.h>
       #include <sttk.h>

       int stParseArgs (int argCount, char *argVector,
                        int   newArgCount,  char  *(*newArgVector[]),  OptDesc
       optionList[]);

       voidstShortUsage  (char  *programName,   OptDesc   optionList[],   char
       *extraText);

DESCRIPTION

       stParseArgs  parses the command line for options previously declared in
       an option desription list. The programs  argument  count  and  argument
       vector are passed as argCount and argVector, and the option description
       list as optionList to stParseArgs. This filters out all known (from the
       option  list)  options  and  their  arguments and returns the remaining
       tokens from the command line in newArgVector with newArgCount.  Options
       on  the  command  line must be preceded by a minus sign, otherwise they
       will not be recognized. The first entry in  the  argument  vector,  the
       program  name,  passes the function without any damage. stParseArgs may
       be invoked multiple times with different option lists.

       The option list is an array of  option  definitions  of  the  following
       form:
       typedef struct {
         char *OptName;
         int  OptKind;
         int  (*OptFunc)();
         int  *OptVar;
         char *OptStr;
       } StOptDesc;
       The  array  is  finished  by  an option definition containing only null
       entries. OptName is the name of  the  option  how  it  appears  on  the
       command  line,  without  the  leading minus sign. The OptKind is a flag
       field defining the option type and the kind of action to be  performed.
       Valid option types are

       PSWITCH
               The option is a switch and has no argument (default)

       PARG    The  option has an argument immediately following the option on
               the command line.

       POARG   The option has an optional argument.

       The action to be prformed on occurence of an option on the command line
       refers  either  to OptFunc, a function to be defined by the application
       or to OptVar, an application variable, associated with the option.  The
       different kinds of action to be performed are

       PCALL   Call the function OptFunc (default).

       PSET    Set the variable OptVar to 1 (TRUE).

       PCLEAR  Set the variable OptVar to 0 (FALSE)

       PTOGGLE
               Toggle  the value of the variable OptVar between 1 (TRUE) and 0
               (FALSE).

       PUSAGE  Call stShortUsage (see below).

       PFAIL   Call stShortUsage (see below) and terminate  program  execution
               with return code 1.

       The following example shows some typical option definitions
       StOptDesc bindOptions[] = {
         { "help",    PFAIL,        NULL,           NULL,         NULL },
         { "trace",   PSWITCH|PSET, NULL,           &atBindTrace, NULL },
         { "since",   PCALL|PARG,   handleBaseline, NULL,         NULL },
         { "version", PCALL,        printVersion,   NULL,         NULL },
         { NULL,      NULL,         NULL,           NULL,         NULL },
       };

       stShortUsage generates a short usage message from the given optionList.
       The message starts with the programName and lists  all  option  in  the
       option  list.  At the end, extraText is added, if given. The message is
       written to standard error.