PLplot  5.15.0
plargs.c File Reference
#include "plplotP.h"
#include <ctype.h>
#include <errno.h>

Go to the source code of this file.

Classes

struct  PLOptionInfo
 
struct  DrvOptCmd
 

Macros

#define OPTMAX   1024
 
#define PL_MAX_OPT_TABLES   10
 

Typedefs

typedef struct DrvOptCmd DrvOptCmd
 

Functions

static int ParseOpt (int *, char ***, int *, char ***, PLOptionTable *)
 
static int ProcessOpt (char *, PLOptionTable *, int *, char ***, int *)
 
static int GetOptarg (char **, int *, char ***, int *)
 
static void Help (void)
 
static void Syntax (void)
 
static int opt_a (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_auto_path (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_bg (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_bufmax (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_cmap0 (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_cmap1 (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_db (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_debug (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_dev (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_dev_compression (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_dpi (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_drvopt (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_eofill (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_fam (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_fbeg (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_fflen (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_finc (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_freeaspect (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_fsiz (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_geo (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_h (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_hack (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_jx (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_jy (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_locale (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_mar (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_mfi (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_mfo (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_ncol0 (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_ncol1 (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_nopixmap (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_np (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_o (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_ori (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_plserver (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_plwindow (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_portrait (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_px (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_py (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_server_name (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_tk_file (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_v (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_verbose (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_width (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
static int opt_wplt (PLCHAR_VECTOR, PLCHAR_VECTOR, void *)
 
PLINT c_plsetopt (PLCHAR_VECTOR opt, PLCHAR_VECTOR opt_arg)
 
PLINT plMergeOpts (PLOptionTable *options, PLCHAR_VECTOR name, PLCHAR_VECTOR *notes)
 
void plClearOpts (void)
 
void plResetOpts (void)
 
PLINT c_plparseopts (int *p_argc, char **argv, PLINT mode)
 
void plSetUsage (PLCHAR_VECTOR program_string, PLCHAR_VECTOR usage_string)
 
void plOptUsage (void)
 
int plParseDrvOpts (DrvOpt *acc_opt)
 
void plHelpDrvOpts (DrvOpt *acc_opt)
 
void plP_FreeDrvOpts ()
 
static int opt_h (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_v (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_verbose (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_debug (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_hack (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_dev (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_o (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_mar (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_a (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_jx (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_jy (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_ori (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_freeaspect (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_portrait (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_width (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_bg (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_ncol0 (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_ncol1 (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_wplt (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_drvopt (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_fam (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_fsiz (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_fbeg (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_finc (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_fflen (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_np (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_nopixmap (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_db (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_bufmax (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_server_name (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_plserver (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_plwindow (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_auto_path (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_px (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_py (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_geo (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_tk_file (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_dpi (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_dev_compression (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_cmap0 (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_cmap1 (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_locale (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_eofill (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR PL_UNUSED(opt_arg), void *PL_UNUSED(client_data))
 
static int opt_mfo (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 
static int opt_mfi (PLCHAR_VECTOR PL_UNUSED(opt), PLCHAR_VECTOR opt_arg, void *PL_UNUSED(client_data))
 

Variables

static PLCHAR_VECTOR program = NULL
 
static PLCHAR_VECTOR usage = NULL
 
static int mode_full
 
static int mode_quiet
 
static int mode_nodelete
 
static int mode_showall
 
static int mode_noprogram
 
static int mode_nodash
 
static int mode_skip
 
static char opttmp [OPTMAX]
 
static PLOptionTable ploption_table []
 
static PLCHAR_VECTOR plplot_notes []
 
PLOptionInfo ploption_info_default
 
PLOptionInfo ploption_info [PL_MAX_OPT_TABLES]
 
static DrvOptCmd drv_opt = { NULL, NULL, NULL }
 
static int tables = 1
 

Detailed Description

This file contains routines to extract & process command flags. The command flags recognized by PLplot are stored in the "ploption_table" structure, along with strings giving the syntax, long help message, and option handler.

The command line parser – plparseopts() – removes all recognized flags (decreasing argc accordingly), so that invalid input may be readily detected. It can also be used to process user command line flags. The user can merge an option table of type PLOptionTable into the internal option table info structure using plMergeOpts(). Or, the user can specify that ONLY the external table(s) be parsed by calling plClearOpts() before plMergeOpts().

The default action taken by plparseopts() is as follows:

  • Returns with an error if an unrecognized option or badly formed option-value pair are encountered.
  • Returns immediately (return code 0) when the first non-option command line argument is found.
  • Returns with the return code of the option handler, if one was called.
  • Deletes command line arguments from argv list as they are found, and decrements argc accordingly.
  • Does not show "invisible" options in usage or help messages.
  • Assumes the program name is contained in argv[0].

These behaviors may be controlled through the "mode" argument, which can have the following bits set:

PL_PARSE_FULL – Full parsing of command line and all error messages enabled, including program exit when an error occurs. Anything on the command line that isn't recognized as a valid option or option argument is flagged as an error.

PL_PARSE_QUIET – Turns off all output except in the case of errors.

PL_PARSE_NODELETE – Turns off deletion of processed arguments.

PL_PARSE_SHOWALL – Show invisible options

PL_PARSE_NOPROGRAM – Specified if argv[0] is NOT a pointer to the program name.

PL_PARSE_NODASH – Set if leading dash is NOT required.

PL_PARSE_SKIP – Set to quietly skip over any unrecognized args.

Note: if you want to have both your option and a PLplot option of the same name processed (e.g. the -v option in plrender), do the following:

  1. Tag your option with PL_OPT_NODELETE
  2. Give it an option handler that uses a return code of 1.
  3. Merge your option table in. By merging your table, your option will be processed before the PLplot one. The PL_OPT_NODELETE ensures that the option string is not deleted from the argv list, and the return code of 1 ensures that the parser continues looking for it.

See plrender.c for examples of actual usage.

Definition in file plargs.c.

Macro Definition Documentation

◆ OPTMAX

#define OPTMAX   1024

Definition at line 191 of file plargs.c.

◆ PL_MAX_OPT_TABLES

#define PL_MAX_OPT_TABLES   10

Definition at line 725 of file plargs.c.

Typedef Documentation

◆ DrvOptCmd

typedef struct DrvOptCmd DrvOptCmd

Function Documentation

◆ c_plparseopts()

PLINT c_plparseopts ( int *  p_argc,
char **  argv,
PLINT  mode 
)

Process options list using current ploptions_info structure. An error in parsing the argument list causes a program exit if mode_full is set, otherwise the function returns with an error.

Parameters
p_argcpointer to a value that ONLY keeps track of number of arguments after processing.
argv?
mode?
Returns
0 if successful.

Definition at line 865 of file plargs.c.

◆ c_plsetopt()

PLINT c_plsetopt ( PLCHAR_VECTOR  opt,
PLCHAR_VECTOR  opt_arg 
)

Definition at line 749 of file plargs.c.

◆ GetOptarg()

static int GetOptarg ( char **  popt_arg,
int *  p_myargc,
char ***  p_argv,
int *  p_argc 
)
static

Retrieves an option argument. If an error occurs here it is a true syntax error.

Parameters
popt_arg?
p_myargc?
p_argv?
p_argcpointer to a value that ONLY keeps track of number of arguments after processing.
Returns
0 if successful.

Definition at line 1234 of file plargs.c.

◆ Help()

static void Help ( void  )
static

Print long help message.

Definition at line 1376 of file plargs.c.

◆ opt_a() [1/2]

static int opt_a ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_a() [2/2]

static int opt_a ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "a": Sets plot aspect ratio on page

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot aspect ratio.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1777 of file plargs.c.

◆ opt_auto_path() [1/2]

static int opt_auto_path ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_auto_path() [2/2]

static int opt_auto_path ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "auto_path": Sets additional directories to autoload

Parameters
PL_UNUSED(opt ) Not used.
opt_argAdditional directories to add the the load path (?).
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2616 of file plargs.c.

◆ opt_bg() [1/2]

static int opt_bg ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_bg() [2/2]

static int opt_bg ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "bg": Sets background color (rgb represented in hex on command line) and alpha (represented as floating point on the command line with underscore delimiter), e.g., -bg ff0000 (set background to red with an alpha value of MAX_PLFLT_ALPHA ==> opaque) -bg ff0000_0.1 (set background to red with an alpha value of 0.1)

Parameters
PL_UNUSED(opt ) Not used.
opt_argBackground RGB color in hex (in 3-digit of 6-digit format) followed by optional combination of "_" + floating-point alpha value.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1955 of file plargs.c.

◆ opt_bufmax() [1/2]

static int opt_bufmax ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_bufmax() [2/2]

static int opt_bufmax ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "bufmax": Sets size of data buffer for tk driver

Parameters
PL_UNUSED(opt ) Not used.
opt_argSize of the data buffer for the tk driver.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2528 of file plargs.c.

◆ opt_cmap0() [1/2]

static int opt_cmap0 ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_cmap0() [2/2]

static int opt_cmap0 ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Sets color table 0 based on a cmap0.pal file.

Parameters
PL_UNUSED(opt ) Not used.
opt_argName of color map 0 .pal file.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2883 of file plargs.c.

◆ opt_cmap1() [1/2]

static int opt_cmap1 ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_cmap1() [2/2]

static int opt_cmap1 ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Sets color table 1 based on a cmap1.pal file.

Parameters
PL_UNUSED(opt ) Not used.
opt_argName of a color map 1 .pal file.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2903 of file plargs.c.

◆ opt_db() [1/2]

static int opt_db ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_db() [2/2]

static int opt_db ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "db": Double buffer X output (update only done on eop or Expose)

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2507 of file plargs.c.

◆ opt_debug() [1/2]

static int opt_debug ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_debug() [2/2]

static int opt_debug ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "debug": Turn on debugging flag

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1671 of file plargs.c.

◆ opt_dev() [1/2]

static int opt_dev ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_dev() [2/2]

static int opt_dev ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "dev": Sets output device keyword

Parameters
PL_UNUSED(opt ) Not used.
opt_argThe name of the output device.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1714 of file plargs.c.

◆ opt_dev_compression() [1/2]

static int opt_dev_compression ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_dev_compression() [2/2]

static int opt_dev_compression ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Sets device compression

Parameters
PL_UNUSED(opt ) Not used.
opt_argDevice compression (?).
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2854 of file plargs.c.

◆ opt_dpi() [1/2]

static int opt_dpi ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_dpi() [2/2]

static int opt_dpi ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "dpi": Set dpi resolution for output device e.g., "-dpi 600x300", will set X dpi to 600 and Y dpi to 300 or e.g., "-dpi 1200" Will set both X and Y dpi to 1200 dpi

Parameters
PL_UNUSED(opt ) Not used.
opt_argDPI descriptor string.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2806 of file plargs.c.

◆ opt_drvopt() [1/2]

static int opt_drvopt ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_drvopt() [2/2]

static int opt_drvopt ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Get driver specific options in the form <option[=value]>[,option[=value]]* If "value" is not specified, it defaults to "1".

Parameters
PL_UNUSED(opt ) Not used.
opt_argThe driver specific option.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2221 of file plargs.c.

◆ opt_eofill() [1/2]

static int opt_eofill ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_eofill() [2/2]

static int opt_eofill ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

For the case where the boundary of the filled region is self-intersecting, use the even-odd fill rule rather than the default nonzero fill rule.

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2957 of file plargs.c.

◆ opt_fam() [1/2]

static int opt_fam ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_fam() [2/2]

static int opt_fam ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "fam": Enables family output files

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2311 of file plargs.c.

◆ opt_fbeg() [1/2]

static int opt_fbeg ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_fbeg() [2/2]

static int opt_fbeg ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "fbeg": Starts with the specified family member number.

Parameters
PL_UNUSED(opt ) Not used.
opt_argNumber of the first plot.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2399 of file plargs.c.

◆ opt_fflen() [1/2]

static int opt_fflen ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_fflen() [2/2]

static int opt_fflen ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "fflen": Specify minimum field length for family member number.

Parameters
PL_UNUSED(opt ) Not used.
opt_argSize of the family number field (e.g. "1", "01", "001" ?)
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2443 of file plargs.c.

◆ opt_finc() [1/2]

static int opt_finc ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_finc() [2/2]

static int opt_finc ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "finc": Specify increment between family members.

Parameters
PL_UNUSED(opt ) Not used.
opt_argAmount to increment the plot number between plots.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2421 of file plargs.c.

◆ opt_freeaspect() [1/2]

static int opt_freeaspect ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_freeaspect() [2/2]

static int opt_freeaspect ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "freeaspect": Allow aspect ratio to adjust to orientation swaps.

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1861 of file plargs.c.

◆ opt_fsiz() [1/2]

static int opt_fsiz ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_fsiz() [2/2]

static int opt_fsiz ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "fsiz": Sets size of a family member file (may be somewhat larger since eof must occur at a page break). Also turns on familying. Example usage:

-fsiz 5M    (5 MB)
-fsiz 300K  (300 KB)
-fsiz .3M   (same)
-fsiz .5G   (half a GB)

Note case of the trailing suffix doesn't matter. If no suffix, defaults to MB.

Parameters
PL_UNUSED(opt ) Not used.
opt_argFamily size setting.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2341 of file plargs.c.

◆ opt_geo() [1/2]

static int opt_geo ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_geo() [2/2]

static int opt_geo ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "geo": Set geometry for output window, i.e., "-geometry WIDTHxHEIGHT+XOFF+YOFF" where WIDTHxHEIGHT, +XOFF+YOFF, or both must be present, and +XOFF+YOFF stands for one of the four combinations +XOFF+YOFF, +XOFF-YOFF, -XOFF+YOFF, and -XOFF-YOFF. Some examples are the following: -geometry 400x300, -geometry -100+200, and -geometry 400x300-100+200.

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot geometry descriptor.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2683 of file plargs.c.

◆ opt_h() [1/2]

static int opt_h ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_h() [2/2]

static int opt_h ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "h": Issues help message

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 2.

Definition at line 1604 of file plargs.c.

◆ opt_hack() [1/2]

static int opt_hack ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_hack() [2/2]

static int opt_hack ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "hack": Enables driver-specific hack(s)

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1693 of file plargs.c.

◆ opt_jx() [1/2]

static int opt_jx ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_jx() [2/2]

static int opt_jx ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "jx": Sets relative justification in x

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot relative justification in x(?)
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1798 of file plargs.c.

◆ opt_jy() [1/2]

static int opt_jy ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_jy() [2/2]

static int opt_jy ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "jy": Sets relative justification in y

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot relative justification in y(?)
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1819 of file plargs.c.

◆ opt_locale() [1/2]

static int opt_locale ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_locale() [2/2]

static int opt_locale ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Make PLplot portable to all LC_NUMERIC locales.

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2923 of file plargs.c.

◆ opt_mar() [1/2]

static int opt_mar ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_mar() [2/2]

static int opt_mar ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "mar": Sets relative margin width

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot margin width.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1756 of file plargs.c.

◆ opt_mfi() [1/2]

static int opt_mfi ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_mfi() [2/2]

static int opt_mfi ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Sets the filename of the PLplot metafile that will be read.

Parameters
PL_UNUSED(opt ) Not used.
opt_argInput PLplot metafile.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 3004 of file plargs.c.

◆ opt_mfo() [1/2]

static int opt_mfo ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_mfo() [2/2]

static int opt_mfo ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Sets the filename of the PLplot metafile that will be written.

Parameters
PL_UNUSED(opt ) Not used.
opt_argOutput PLplot metafile.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2979 of file plargs.c.

◆ opt_ncol0() [1/2]

static int opt_ncol0 ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_ncol0() [2/2]

static int opt_ncol0 ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "ncol0": Sets number of colors to allocate in cmap 0 (upper bound).

Parameters
PL_UNUSED(opt ) Not used.
opt_argNumber of color map 0 colors.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2132 of file plargs.c.

◆ opt_ncol1() [1/2]

static int opt_ncol1 ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_ncol1() [2/2]

static int opt_ncol1 ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "ncol1": Sets number of colors to allocate in cmap 1 (upper bound).

Parameters
PL_UNUSED(opt ) Not used.
opt_argNumber of color map 1 colors.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2153 of file plargs.c.

◆ opt_nopixmap() [1/2]

static int opt_nopixmap ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_nopixmap() [2/2]

static int opt_nopixmap ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "nopixmap": Disables use of pixmaps in X drivers

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2486 of file plargs.c.

◆ opt_np() [1/2]

static int opt_np ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_np() [2/2]

static int opt_np ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "np": Disables pause between pages

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2465 of file plargs.c.

◆ opt_o() [1/2]

static int opt_o ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_o() [2/2]

static int opt_o ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "o": Sets output file name

Parameters
PL_UNUSED(opt ) Not used.
opt_argThe file family name.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1735 of file plargs.c.

◆ opt_ori() [1/2]

static int opt_ori ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_ori() [2/2]

static int opt_ori ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "ori": Sets orientation

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot orientation.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1840 of file plargs.c.

◆ opt_plserver() [1/2]

static int opt_plserver ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_plserver() [2/2]

static int opt_plserver ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "plserver": Sets name to use when invoking server (Tcl/TK driver only)

Parameters
PL_UNUSED(opt ) Not used.
opt_argName of Tcl/TK server (?).
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2570 of file plargs.c.

◆ opt_plwindow() [1/2]

static int opt_plwindow ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_plwindow() [2/2]

static int opt_plwindow ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "plwindow": Sets PLplot window name

Parameters
PL_UNUSED(opt ) Not used.
opt_argName of the window.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2591 of file plargs.c.

◆ opt_portrait() [1/2]

static int opt_portrait ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_portrait() [2/2]

static int opt_portrait ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "portrait": Set portrait mode. If plsc->portrait = 1, then the orientation for certain drivers is changed by 90 deg to portrait orientation from the default landscape orientation used by PLplot while the aspect ratio allowed to adjust using freeaspect. N.B. the driver list where this flag is honored is currently limited to psc, ps, and pstex. A 90 deg rotation is just not appropriate for certain other drivers. These drivers where portrait mode is ignored include display drivers (e.g., xwin, tk), drivers which are subequently going to be transformed to another form (e.g., meta), or drivers which are normally used for web publishing (e.g., png, jpeg). That said, the case is not entirely clear for all drivers so the list of drivers where portrait mode is honored may increase in the future. To add to the list simply copy the small bit of code from ps.c that has to do with pls->portrait to the appropriate driver file.

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1896 of file plargs.c.

◆ opt_px() [1/2]

static int opt_px ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_px() [2/2]

static int opt_px ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "px": Set packing in x

Parameters
PL_UNUSED(opt ) Not used.
opt_argX packing (?).
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2637 of file plargs.c.

◆ opt_py() [1/2]

static int opt_py ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_py() [2/2]

static int opt_py ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "py": Set packing in y

Parameters
PL_UNUSED(opt ) Not used.
opt_argY packing (?).
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2658 of file plargs.c.

◆ opt_server_name() [1/2]

static int opt_server_name ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_server_name() [2/2]

static int opt_server_name ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "server_name": Sets main window name of server (Tcl/TK driver only)

Parameters
PL_UNUSED(opt ) Not used.
opt_argThe name of the main window.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2549 of file plargs.c.

◆ opt_tk_file() [1/2]

static int opt_tk_file ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_tk_file() [2/2]

static int opt_tk_file ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

File name for plserver tk_file option

Parameters
PL_UNUSED(opt ) Not used.
opt_argTk file name.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2776 of file plargs.c.

◆ opt_v() [1/2]

static int opt_v ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_v() [2/2]

static int opt_v ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "v": Issues version message

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 2.

Definition at line 1627 of file plargs.c.

◆ opt_verbose() [1/2]

static int opt_verbose ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_verbose() [2/2]

static int opt_verbose ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR   PL_UNUSEDopt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "verbose": Turn on verbosity flag

Parameters
PL_UNUSED(opt ) Not used.
PL_UNUSED(opt_arg ) Not used.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1650 of file plargs.c.

◆ opt_width() [1/2]

static int opt_width ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_width() [2/2]

static int opt_width ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "width": Sets pen width

Parameters
PL_UNUSED(opt ) Not used.
opt_argPlot pen width.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 1917 of file plargs.c.

◆ opt_wplt() [1/2]

static int opt_wplt ( PLCHAR_VECTOR  ,
PLCHAR_VECTOR  ,
void *   
)
static

◆ opt_wplt() [2/2]

static int opt_wplt ( PLCHAR_VECTOR   PL_UNUSEDopt,
PLCHAR_VECTOR  opt_arg,
void *  PL_UNUSEDclient_data 
)
static

Performs appropriate action for option "wplt": Sets (zoom) window into plot (e.g. "0,0,0.5,0.5")

Parameters
PL_UNUSED(opt ) Not used.
opt_argZoom setting.
PL_UNUSED(client_data ) Not used.

returns 0.

Definition at line 2174 of file plargs.c.

◆ ParseOpt()

static int ParseOpt ( int *  p_myargc,
char ***  p_argv,
int *  p_argc,
char ***  p_argsave,
PLOptionTable option_table 
)
static

Parses & determines appropriate action for input flag.

Parameters
p_myargc?
p_argv?
p_argcpointer to a value that ONLY keeps track of number of arguments after processing.
p_argsave?
option_table?
Returns
?

Definition at line 1045 of file plargs.c.

◆ plClearOpts()

void plClearOpts ( void  )

Clear internal option table info structure.

Definition at line 830 of file plargs.c.

◆ plHelpDrvOpts()

void plHelpDrvOpts ( DrvOpt acc_opt)

Give driver specific help

Parameters
acc_opt?

Definition at line 1540 of file plargs.c.

◆ plMergeOpts()

PLINT plMergeOpts ( PLOptionTable options,
PLCHAR_VECTOR  name,
PLCHAR_VECTOR notes 
)

Merge user option table info structure with internal one.

Parameters
options?
name?
notes?

Definition at line 783 of file plargs.c.

◆ plOptUsage()

void plOptUsage ( void  )

Print usage & syntax message.

Definition at line 1304 of file plargs.c.

◆ plP_FreeDrvOpts()

void plP_FreeDrvOpts ( void  )

Tidy up and free memory associated with driver options

Definition at line 1560 of file plargs.c.

◆ plParseDrvOpts()

int plParseDrvOpts ( DrvOpt acc_opt)

Parse driver specific options

Parameters
acc_opt?
Returns
0 if successful.

Definition at line 1461 of file plargs.c.

◆ plResetOpts()

void plResetOpts ( void  )

Reset internal option table info structure.

Definition at line 843 of file plargs.c.

◆ plSetUsage()

void plSetUsage ( PLCHAR_VECTOR  program_string,
PLCHAR_VECTOR  usage_string 
)

Set the strings used in usage and syntax messages.

Parameters
program_stringThe program name.
usage_stringString describing how to use the program.

Definition at line 1287 of file plargs.c.

◆ ProcessOpt()

static int ProcessOpt ( char *  opt,
PLOptionTable tab,
int *  p_myargc,
char ***  p_argv,
int *  p_argc 
)
static

Process option (and argument if applicable).

Parameters
opt?
tab?
p_myargc?
p_argv?
p_argcpointer to a value that ONLY keeps track of number of arguments after processing.
Returns
0 if successful.

Definition at line 1105 of file plargs.c.

◆ Syntax()

static void Syntax ( void  )
static

Print short syntax message.

Definition at line 1325 of file plargs.c.

Variable Documentation

◆ drv_opt

DrvOptCmd drv_opt = { NULL, NULL, NULL }
static

Definition at line 744 of file plargs.c.

◆ mode_full

int mode_full
static

Definition at line 181 of file plargs.c.

◆ mode_nodash

int mode_nodash
static

Definition at line 186 of file plargs.c.

◆ mode_nodelete

int mode_nodelete
static

Definition at line 183 of file plargs.c.

◆ mode_noprogram

int mode_noprogram
static

Definition at line 185 of file plargs.c.

◆ mode_quiet

int mode_quiet
static

Definition at line 182 of file plargs.c.

◆ mode_showall

int mode_showall
static

Definition at line 184 of file plargs.c.

◆ mode_skip

int mode_skip
static

Definition at line 187 of file plargs.c.

◆ opttmp

char opttmp[OPTMAX]
static

Definition at line 192 of file plargs.c.

◆ ploption_info

Initial value:
= {
{
"PLplot options",
}
}
static PLCHAR_VECTOR plplot_notes[]
Definition: plargs.c:690
static PLOptionTable ploption_table[]
Definition: plargs.c:246

Definition at line 726 of file plargs.c.

◆ ploption_info_default

PLOptionInfo ploption_info_default
Initial value:
= {
"PLplot options",
}
static PLCHAR_VECTOR plplot_notes[]
Definition: plargs.c:690
static PLOptionTable ploption_table[]
Definition: plargs.c:246

Definition at line 719 of file plargs.c.

◆ ploption_table

PLOptionTable ploption_table[]
static

PLPLOT options data structure definition.

The table is defined as follows

typedef struct { PLCHAR_VECTOR opt; int (*handler) (PLCHAR_VECTOR, PLCHAR_VECTOR, void *); void *client_data; void *var; long mode; PLCHAR_VECTOR syntax; PLCHAR_VECTOR desc; } PLOptionTable;

where each entry has the following meaning:

opt option string handler pointer to function for processing the option and (optionally) its argument client_data pointer to data that gets passed to (*handler) var address of variable to set based on "mode" mode governs handling of option (see below) syntax short syntax description desc long syntax description

The syntax and or desc strings can be NULL if the option is never to be described. Usually this is only used for obsolete arguments; those we just wish to hide from normal use are better made invisible (which are made visible by either specifying -showall first or PL_PARSE_SHOWALL).

The mode bits are:

PL_OPT_ARG Option has an argument PL_OPT_NODELETE Don't delete after processing PL_OPT_INVISIBLE Make invisible (usually for debugging) PL_OPT_DISABLED Ignore this option

The following mode bits cause the option to be processed as specified:

PL_OPT_FUNC Call function handler (opt, opt_arg) PL_OPT_BOOL Set *var=1 PL_OPT_INT Set *var=atoi(opt_arg) PL_OPT_FLOAT Set *var=atof(opt_arg) PL_OPT_STRING Set *var=opt_arg

where opt points to the option string and opt_arg points to the argument string.

Definition at line 246 of file plargs.c.

◆ plplot_notes

PLCHAR_VECTOR plplot_notes[]
static
Initial value:
= {
"All parameters must be white-space delimited. Some options are driver",
"dependent. Please see the PLplot reference document for more detail.",
NULL
}

Definition at line 690 of file plargs.c.

◆ program

PLCHAR_VECTOR program = NULL
static

Definition at line 178 of file plargs.c.

◆ tables

int tables = 1
static

Definition at line 746 of file plargs.c.

◆ usage

PLCHAR_VECTOR usage = NULL
static

Definition at line 179 of file plargs.c.