ROSS
tw-opts.h File Reference
#include <stdio.h>

Go to the source code of this file.

Data Structures

struct  tw_optdef

Macros

#define TWOPT_GROUP(h)
#define TWOPT_ULONG(n, v, h)
#define TWOPT_ULONGLONG(n, v, h)
#define TWOPT_UINT(n, v, h)
#define TWOPT_STIME(n, v, h)
#define TWOPT_DOUBLE(n, v, h)
#define TWOPT_CHAR(n, v, h)
#define TWOPT_ARGSFILE(n, v, h)
#define TWOPT_FLAG(n, v, h)
#define TWOPT_END()

Enumerations

enum  tw_opttype {
  TWOPTTYPE_GROUP = 1 , TWOPTTYPE_ULONG , TWOPTTYPE_ULONGLONG , TWOPTTYPE_UINT ,
  TWOPTTYPE_STIME , TWOPTTYPE_DOUBLE , TWOPTTYPE_CHAR , TWOPTTYPE_FLAG ,
  TWOPTTYPE_ARGSFILE , TWOPTTYPE_SHOWHELP
}

Functions

void tw_opt_parse (int *argc, char ***argv)
void tw_opt_add (const tw_optdef *options)
void tw_opt_print (void)
void tw_opt_settings (FILE *f)

Macro Definition Documentation

◆ TWOPT_ARGSFILE

#define TWOPT_ARGSFILE ( n,
v,
h )
Value:
{ TWOPTTYPE_ARGSFILE, (n), (h), &(v) }
@ TWOPTTYPE_ARGSFILE
Definition tw-opts.h:16

Definition at line 37 of file tw-opts.h.

◆ TWOPT_CHAR

#define TWOPT_CHAR ( n,
v,
h )
Value:
{ TWOPTTYPE_CHAR, (n), (h), &(v) }
@ TWOPTTYPE_CHAR
Definition tw-opts.h:14

Definition at line 36 of file tw-opts.h.

◆ TWOPT_DOUBLE

#define TWOPT_DOUBLE ( n,
v,
h )
Value:
{ TWOPTTYPE_DOUBLE, (n), (h), &(v) }
@ TWOPTTYPE_DOUBLE
Definition tw-opts.h:13

Definition at line 35 of file tw-opts.h.

◆ TWOPT_END

#define TWOPT_END ( )
Value:
{ (tw_opttype)0, NULL, NULL, NULL }
tw_opttype
Definition tw-opts.h:7

Definition at line 39 of file tw-opts.h.

◆ TWOPT_FLAG

#define TWOPT_FLAG ( n,
v,
h )
Value:
{ TWOPTTYPE_FLAG, (n), (h), &(v) }
@ TWOPTTYPE_FLAG
Definition tw-opts.h:15

Definition at line 38 of file tw-opts.h.

◆ TWOPT_GROUP

#define TWOPT_GROUP ( h)
Value:
{ TWOPTTYPE_GROUP, NULL, (h), NULL }
@ TWOPTTYPE_GROUP
Definition tw-opts.h:8

Definition at line 30 of file tw-opts.h.

◆ TWOPT_STIME

#define TWOPT_STIME ( n,
v,
h )
Value:
{ TWOPTTYPE_STIME, (n), (h), &(v) }
@ TWOPTTYPE_STIME
Definition tw-opts.h:12

Definition at line 34 of file tw-opts.h.

◆ TWOPT_UINT

#define TWOPT_UINT ( n,
v,
h )
Value:
{ TWOPTTYPE_UINT, (n), (h), &(v) }
@ TWOPTTYPE_UINT
Definition tw-opts.h:11

Definition at line 33 of file tw-opts.h.

◆ TWOPT_ULONG

#define TWOPT_ULONG ( n,
v,
h )
Value:
{ TWOPTTYPE_ULONG, (n), (h), &(v) }
@ TWOPTTYPE_ULONG
Definition tw-opts.h:9

Definition at line 31 of file tw-opts.h.

◆ TWOPT_ULONGLONG

#define TWOPT_ULONGLONG ( n,
v,
h )
Value:
{ TWOPTTYPE_ULONGLONG, (n), (h), &(v) }
@ TWOPTTYPE_ULONGLONG
Definition tw-opts.h:10

Definition at line 32 of file tw-opts.h.

Enumeration Type Documentation

◆ tw_opttype

enum tw_opttype
Enumerator
TWOPTTYPE_GROUP 
TWOPTTYPE_ULONG 

value must be an "unsigned long*"

TWOPTTYPE_ULONGLONG 

value must be an "unsigned long long*"

TWOPTTYPE_UINT 

value must be an "unsigned int*"

TWOPTTYPE_STIME 

value must be a "tw_stime*"

TWOPTTYPE_DOUBLE 

value must be a "double *"

TWOPTTYPE_CHAR 

value must be a "char *"

TWOPTTYPE_FLAG 

value must be an "unsigned int*"

TWOPTTYPE_ARGSFILE 

value must be a "char *"

TWOPTTYPE_SHOWHELP 

Definition at line 6 of file tw-opts.h.

Function Documentation

◆ tw_opt_add()

void tw_opt_add ( const tw_optdef * options)
extern

Add an opt group

Definition at line 23 of file tw-opts.c.

◆ tw_opt_parse()

void tw_opt_parse ( int * argc,
char *** argv )
extern

Remove options from the command line arguments.

Definition at line 552 of file tw-opts.c.

Referenced by apply_opt().

◆ tw_opt_print()

void tw_opt_print ( void )
extern

Pretty-print the option descriptions (for –help)

Definition at line 224 of file tw-opts.c.

◆ tw_opt_settings()

void tw_opt_settings ( FILE * f)
extern

Pretty-print the option descriptions and current values

Definition at line 147 of file tw-opts.c.