Visual Servoing Platform
version 3.1.0
vpParseArgv.h
1
/****************************************************************************
2
*
3
* Declarations for Tk-related things that are visible
4
* outside of the Tk module itself.
5
*
6
* Copyright 1989-1992 Regents of the University of California.
7
* Permission to use, copy, modify, and distribute this
8
* software and its documentation for any purpose and without
9
* fee is hereby granted, provided that the above copyright
10
* notice appear in all copies. The University of California
11
* makes no representations about the suitability of this
12
* software for any purpose. It is provided "as is" without
13
* express or implied warranty.
14
*
15
* This file has been modified to be used only for argv parsing without
16
* reference to tk, tcl or X11. Base on tk.h from tk2.3
17
*
18
* Description:
19
* Command line argument parsing.
20
*
21
* Authors:
22
* Fabien Spindler (modification of the original version)
23
*
24
*****************************************************************************/
25
31
#ifndef vpParseArgv_h
32
#define vpParseArgv_h
33
34
#include <visp3/core/vpConfig.h>
35
#include <visp3/core/vpException.h>
36
148
class
VISP_EXPORT
vpParseArgv
149
{
150
public
:
154
typedef
enum
{
155
ARGV_CONSTANT
,
156
ARGV_CONSTANT_INT,
158
ARGV_CONSTANT_BOOL,
160
ARGV_INT
,
161
ARGV_LONG
,
162
ARGV_STRING
,
163
ARGV_REST
,
164
ARGV_FLOAT
,
165
ARGV_DOUBLE
,
166
ARGV_FUNC
,
167
ARGV_GENFUNC
,
168
ARGV_HELP
,
169
ARGV_END
170
}
vpArgvType
;
171
175
typedef
enum
{
176
ARGV_NO_DEFAULTS = 0x1,
177
ARGV_NO_LEFTOVERS = 0x2,
179
ARGV_NO_ABBREV = 0x4,
182
ARGV_DONT_SKIP_FIRST_ARG = 0x8,
183
ARGV_NO_PRINT = 0x10
184
}
vpArgvFlags
;
185
186
#ifndef DOXYGEN_SHOULD_SKIP_THIS
187
191
typedef
struct
{
192
const
char
*key;
194
vpArgvType type;
195
const
char
*src;
197
const
char
*dst;
199
const
char
*help;
200
} vpArgvInfo;
201
#endif
/* DOXYGEN_SHOULD_SKIP_THIS */
202
203
public
:
204
static
vpArgvInfo defaultTable[2];
205
static
bool
parse(
int
*argcPtr,
const
char
**argv, vpArgvInfo *argTable,
int
flags);
206
static
int
parse(
int
argc,
const
char
**argv,
const
char
*validOpts,
const
char
**param);
207
208
private
:
209
static
void
printUsage(vpArgvInfo *argTable,
int
flags);
210
};
211
212
#endif
vpParseArgv::ARGV_DOUBLE
Definition:
vpParseArgv.h:165
vpParseArgv::ARGV_STRING
Definition:
vpParseArgv.h:162
vpParseArgv::ARGV_HELP
Definition:
vpParseArgv.h:168
vpParseArgv::ARGV_REST
Definition:
vpParseArgv.h:163
vpParseArgv::ARGV_FUNC
Definition:
vpParseArgv.h:166
vpParseArgv::ARGV_LONG
Definition:
vpParseArgv.h:161
vpParseArgv::ARGV_CONSTANT
Definition:
vpParseArgv.h:155
vpParseArgv::ARGV_GENFUNC
Definition:
vpParseArgv.h:167
vpParseArgv::ARGV_FLOAT
Definition:
vpParseArgv.h:164
vpParseArgv::vpArgvFlags
vpArgvFlags
Definition:
vpParseArgv.h:175
vpParseArgv::vpArgvType
vpArgvType
Definition:
vpParseArgv.h:154
vpParseArgv
Command line argument parsing.
Definition:
vpParseArgv.h:148
vpParseArgv::ARGV_INT
Definition:
vpParseArgv.h:160
visp
modules
io
include
visp3
io
vpParseArgv.h
Generated by
1.8.13