1 #ifndef PARSERS_ARGVPARSER_HPP 2 #define PARSERS_ARGVPARSER_HPP 6 #include "../QuantumSystem.hpp" 68 int Parse(
int argc,
char *argv[])
74 const char *optstring = optstringKeys.c_str();
76 while ((option = getopt(argc, argv, optstring)) != -1)
81 quantumSystem.
dimensions.map[name] = std::atof(optarg);
88 quantumSystem.
parameters.map[name] = std::atof(optarg);
112 std::string filename = optarg;
120 std::cout <<
"option requires argument\n";
130 std::cout <<
"unknown option '" << char(optopt) <<
"'\n";
134 for (; optind < argc; ++optind)
135 std::cout <<
"argv[" << optind <<
"]='" << argv[optind] <<
"'\n";
static void Title(std::string title)
Display title and Line.
Definition: Basics.hpp:113
int Parse(int argc, char *argv[])
parsing argv
Definition: ArgvParser.hpp:68
Parameters parameters
Definition: QuantumSystem.hpp:15
static const char QuietKey
Definition: KeyBindings.hpp:83
static void Comment(std::string text)
Display commented line.
Definition: Basics.hpp:33
primitive argv class
Definition: ArgvParser.hpp:13
static void Help()
display all key bindings
Definition: KeyBindings.hpp:35
static void SetDimensions(Dimensions &dimensions)
Definition: VectorViewer.hpp:24
static const std::string name
Definition: KineticTerm.hpp:45
static std::string GetSelected()
Get the Selected object.
Definition: ModelSelector.hpp:104
ParametersConnections parametersConnections
Definition: QuantumSystem.hpp:17
ArgvParser()
construct a new Argv Parser object
Definition: ArgvParser.hpp:36
static const char FilenameKey
Definition: KeyBindings.hpp:84
static bool verbose
Definition: Basics.hpp:26
Dimensions dimensions
Definition: QuantumSystem.hpp:16
static void ShowVersion()
displays all libs version
Definition: Version.hpp:48
static const char VerboseKey
Definition: KeyBindings.hpp:81
static void Line(int n=40)
Display line of n char (default char '=')
Definition: Basics.hpp:124
static const std::map< char, std::string > mapParameters
Parameters name translation map.
Definition: KeyBindings.hpp:26
class containing all information about quantum system, which is needed for hamiltonian construction ...
Definition: QuantumSystem.hpp:12
bool help
show help (flag)
Definition: ArgvParser.hpp:20
static const std::string name
Definition: ProxTerm.hpp:43
bool quiet
quiet mode (flag)
Definition: ArgvParser.hpp:25
void Info()
verbose info
Definition: ArgvParser.hpp:45
static std::string GetOptstring()
Get the Optstring object optstring for ArgvParser.
Definition: KeyBindings.hpp:63
static const std::map< char, std::string > mapDimensions
Dimensions translation map.
Definition: KeyBindings.hpp:22
static const char HelpKey
Definition: KeyBindings.hpp:82
QuantumSystem quantumSystem
all information about QuantumSystem parsed from argv and/or JSON inputscript
Definition: ArgvParser.hpp:31
static void ShowMapCommonValue(T1 &map1, T2 &map2)
displaying common value of two maps
Definition: ShowMap.hpp:39