docs/html/commandLine_8h_source.html
| | Jetson Inference
DNN Vision Library |
commandLine.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20 * DEALINGS IN THE SOFTWARE.
21 */
22
23 #ifndef __COMMAND_LINE_H_
24 #define __COMMAND_LINE_H_
25
26
27 #include <stdlib.h>
28 #include <stdint.h>
29
30
35 class commandLine
36 {
37 public:
41commandLine( const int argc, char** argv, const char* extraFlag=NULL );
42
46commandLine( const int argc, char** argv, const char** extraArgs );
47
60bool GetFlag( const char* argName, bool allowOtherDelimiters=true ) const;
61
73float GetFloat( const char* argName, float defaultValue=0.0f, bool allowOtherDelimiters=true ) const;
74
86int GetInt( const char* argName, int defaultValue=0, bool allowOtherDelimiters=true ) const;
87
99 uint32_t GetUnsignedInt( const char* argName, uint32_t defaultValue=0, bool allowOtherDelimiters=true ) const;
100
113const char* GetString( const char* argName, const char* defaultValue=NULL, bool allowOtherDelimiters=true ) const;
114
125const char* GetPosition( unsigned int position, const char* defaultValue=NULL ) const;
126
131unsigned int GetPositionArgs() const;
132
136void AddArg( const char* arg );
137
141void AddArgs( const char** args );
142
146void AddFlag( const char* flag );
147
151void Print() const;
152
157
162 };
163
164
169 #define ARG_POSITION(x) x
170
171
172 #endif
173
void AddArgs(const char **args)
Add arguments to the command line.
const char * GetPosition(unsigned int position, const char *defaultValue=NULL) const
Get positional string argument.
bool GetFlag(const char *argName, bool allowOtherDelimiters=true) const
Checks to see whether the specified flag was included on the command line.
void AddFlag(const char *flag)
Add a flag to the command line.
uint32_t GetUnsignedInt(const char *argName, uint32_t defaultValue=0, bool allowOtherDelimiters=true) const
Get unsigned integer argument.
unsigned int GetPositionArgs() const
Get the number of positional arguments in the command line.
int GetInt(const char *argName, int defaultValue=0, bool allowOtherDelimiters=true) const
Get integer argument.
float GetFloat(const char *argName, float defaultValue=0.0f, bool allowOtherDelimiters=true) const
Get float argument.
void AddArg(const char *arg)
Add an argument to the command line.
commandLine(const int argc, char **argv, const char *extraFlag=NULL)
Constructor, takes the command line from main()
char ** argv
The argument strings that the object was created with from main()
Definition: commandLine.h:161
int argc
The argument count that the object was created with from main()
Definition: commandLine.h:156
const char * GetString(const char *argName, const char *defaultValue=NULL, bool allowOtherDelimiters=true) const
Get string argument.
void Print() const
Print out the command line for reference.
Command line parser for extracting flags, values, and strings.
Definition: commandLine.h:35