ROUTINE
-------

INT_ ug_add_char_arg (char string[],
                      int *argc,
                      char ***argv)

DESCRIPTION
-----------

Add a type char argument.

INPUT ARGUMENTS
---------------

string            : Character string to add to argument list.

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_double_arg (double value,
                        int *argc,
                        char ***argv)

DESCRIPTION
-----------

Add a type double argument.

INPUT ARGUMENTS
---------------

value             : Value to add to argument list.

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_double_vector_arg (INT_ n,
                               DOUBLE_1D *vector,
                               int *argc,
                               char ***argv)

DESCRIPTION
-----------

Add a type double vector argument.

INPUT ARGUMENTS
---------------

n                 : Number of entries in vector argument.
vector            : Vector of values indexed 1,2...n

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_flag_arg (char flag[],
                      int *argc,
                      char ***argv)

DESCRIPTION
-----------

Add a flag argument. This routine is the same as ug_add_char_arg.

INPUT ARGUMENTS
---------------

string            : Character string to add to argument list.

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_int_arg (INT_ value,
                     int *argc,
                     char ***argv)

DESCRIPTION
-----------

Add a type int argument.

INPUT ARGUMENTS
---------------

value             : Value to add to argument list.

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_int_vector_arg (INT_ n,
                            INT_1D *vector,
                            int *argc,
                            char ***argv)

DESCRIPTION
-----------

Add a type int vector argument.

INPUT ARGUMENTS
---------------

n                 : Number of entries in vector argument.
vector            : Vector of values indexed 1,2...n

OUTPUT ARGUMENTS
----------------

argc              : Pointer to argument count.
argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.



ROUTINE
-------

INT_ ug_add_new_arg (char ***argv,
                     char *new_arg)

DESCRIPTION
-----------

Add a new argument to the argument vector.

INPUT ARGUMENTS
---------------

new_arg           : Character string with new argument to add to argument list.

OUTPUT ARGUMENTS
----------------

argv              : Pointer to pointer to argument vector.

RETURN VALUE
------------

0                 : Argument was added successfully.
>400              : An error occurred re-allocating argument vector.

