GENIEGenerator
Loading...
Searching...
No Matches
gtestCmdLnArg.cxx File Reference
#include <string>
#include <vector>
#include "Framework/Messenger/Messenger.h"
#include "Framework/Utils/CmdLnArgParser.h"
Include dependency graph for gtestCmdLnArg.cxx:

Go to the source code of this file.

Functions

int main (int argc, char **argv)

Function Documentation

◆ main()

int main ( int argc,
char ** argv )

Definition at line 30 of file gtestCmdLnArg.cxx.

31{
32 CmdLnArgParser parser(argc,argv);
33
34 LOG("test", pNOTICE)
35 << "Option -f exists? " << parser.OptionExists('f');
36 LOG("test", pNOTICE)
37 << "Option -s exists? " << parser.OptionExists('s');
38
39 if(parser.OptionExists('d')) {
40 LOG("test", pNOTICE)
41 << "Command line argument following -d : "
42 << parser.Arg('d');
43 LOG("test", pNOTICE)
44 << "Command line argument following -d (as double): "
45 << parser.ArgAsDouble('d');
46 }
47
48 if(parser.OptionExists('l')) {
49 LOG("test", pNOTICE)
50 << "Command line argument following -l : "
51 << parser.Arg('l');
52 LOG("test", pNOTICE)
53 << "Command line argument following -l (as long int): "
54 << parser.ArgAsLong('l');
55 }
56
57 if(parser.OptionExists('v')) {
58 LOG("test", pNOTICE)
59 << "Command line argument following -v : "
60 << parser.Arg('v');
61 vector<string> tokens = parser.ArgAsStringTokens('v',",");
62 vector<string>::const_iterator iter = tokens.begin();
63 for( ; iter != tokens.end(); ++iter) {
64 LOG("test", pNOTICE)
65 << "Token: " << *iter;
66 }
67 }
68
69 if(parser.OptionExists("with-long-command-line-option")) {
70 LOG("test", pNOTICE)
71 << "Command line argument following --with-long-command-line-option : "
72 << parser.Arg("with-long-command-line-option");
73 }
74
75 return 0;
76}
#define pNOTICE
Definition Messenger.h:61
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE,...
Definition Messenger.h:96
Command line argument parser.

References genie::CmdLnArgParser::Arg(), genie::CmdLnArgParser::ArgAsDouble(), genie::CmdLnArgParser::ArgAsLong(), genie::CmdLnArgParser::ArgAsStringTokens(), LOG, genie::CmdLnArgParser::OptionExists(), and pNOTICE.