NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
doca_argp.h File Reference
#include <stdarg.h>
#include <doca_compat.h>
#include <doca_error.h>
#include <doca_log.h>
Include dependency graph for doca_argp.h:

Go to the source code of this file.

Typedefs

typedef doca_error_t(* doca_argp_param_cb_t) (void *, void *)
 Flag callback function type. More...
 
typedef doca_error_t(* doca_argp_cmd_cb_t) (void *)
 Cmd callback function type. More...
 
typedef doca_error_t(* doca_argp_dpdk_cb_t) (int argc, char **argv)
 DPDK flags callback function type. More...
 
typedef doca_error_t(* doca_argp_validation_cb_t) (void *)
 Program validation callback function type. More...
 
typedef doca_error_t(* doca_argp_logger_cb_t) (enum doca_log_level level, const char *format, va_list args)
 (Operational) Logger callback function type More...
 

Enumerations

enum  doca_argp_type {
  DOCA_ARGP_TYPE_UNKNOWN = 0 , DOCA_ARGP_TYPE_STRING , DOCA_ARGP_TYPE_INT , DOCA_ARGP_TYPE_BOOLEAN ,
  DOCA_ARGP_TYPE_JSON_OBJ
}
 Flag input type. More...
 

Functions

DOCA_EXPERIMENTAL void doca_argp_usage (void)
 Print usage instructions. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_init (const char *program_name, void *program_config)
 Initialize the parser interface. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_register_param (struct doca_argp_param *input_param)
 Register a program flag. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_register_cmd (struct doca_argp_cmd *input_cmd)
 Register a program command. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_register_version_callback (doca_argp_param_cb_t callback)
 Register an alternative version callback. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_register_validation_callback (doca_argp_validation_cb_t callback)
 Register program validation callback function. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_register_logger_callback (doca_argp_logger_cb_t callback)
 Register a logger callback to be used for user-facing events. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_disable_logger_callback (void)
 Disable a previously registered logger callback, reverting back to default stderr backend. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_start (int argc, char **argv)
 Parse incoming arguments (cmd line/json). More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_destroy (void)
 ARG Parser destroy. More...
 
DOCA_EXPERIMENTAL void doca_argp_set_dpdk_program (doca_argp_dpdk_cb_t callback)
 Mark the program as based on DPDK API. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_param_create (struct doca_argp_param **param)
 Create new program param. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_short_name (struct doca_argp_param *param, const char *name)
 Set the short name of the program param. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_long_name (struct doca_argp_param *param, const char *name)
 Set the long name of the program param. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_arguments (struct doca_argp_param *param, const char *arguments)
 Set the description of the expected arguments of the program param, used during program usage. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_description (struct doca_argp_param *param, const char *description)
 Set the description of the program param, used during program usage. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_callback (struct doca_argp_param *param, doca_argp_param_cb_t callback)
 Set the callback function of the program param. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_type (struct doca_argp_param *param, enum doca_argp_type type)
 Set the type of the param arguments. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_mandatory (struct doca_argp_param *param)
 Mark the program param as mandatory. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_cli_only (struct doca_argp_param *param)
 Mark the program param as supported only in CLI mode and unavailable through a JSON file. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_multiplicity (struct doca_argp_param *param)
 Mark the program param as supporting multiple appearances. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_singular (struct doca_argp_param *param)
 Mark the program param as singular. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_inherited (struct doca_argp_param *param)
 Mark the program param as inherited through the command chain. More...
 
DOCA_EXPERIMENTAL void doca_argp_param_set_hidden (struct doca_argp_param *param)
 Mark the program param as hidden. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_param_destroy (struct doca_argp_param *param)
 Destroy a program param. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_cmd_create (struct doca_argp_cmd **cmd)
 Create new program command. More...
 
DOCA_EXPERIMENTAL void doca_argp_cmd_set_name (struct doca_argp_cmd *cmd, const char *name)
 Set the name of the program command. More...
 
DOCA_EXPERIMENTAL void doca_argp_cmd_set_description (struct doca_argp_cmd *cmd, const char *description)
 Set the description of the program command, used during the program usage. More...
 
DOCA_EXPERIMENTAL void doca_argp_cmd_set_callback (struct doca_argp_cmd *cmd, doca_argp_cmd_cb_t callback)
 Set the callback function of the program command. More...
 
DOCA_EXPERIMENTAL void doca_argp_cmd_set_hidden (struct doca_argp_cmd *cmd)
 Mark the program command as hidden. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_cmd_register_param (struct doca_argp_cmd *cmd, struct doca_argp_param *input_param)
 Register a program flag for the given program command. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_cmd_register_cmd (struct doca_argp_cmd *cmd, struct doca_argp_cmd *input_cmd)
 Register an inner program command for the given program command. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_cmd_destroy (struct doca_argp_cmd *cmd)
 Destroy a program command. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_get_log_level (int *log_level)
 Get the log level the user inserted it. More...
 
DOCA_EXPERIMENTAL doca_error_t doca_argp_get_sdk_log_level (int *log_level)
 Get the SDK log level as passed by the user. More...