PandA-2024.02
Public Member Functions | Private Member Functions
SpiderParameter Class Reference

Superclass include. More...

#include <SpiderParameter.hpp>

Inheritance diagram for SpiderParameter:
Inheritance graph
[legend]
Collaboration diagram for SpiderParameter:
Collaboration graph
[legend]

Public Member Functions

 SpiderParameter (const std::string &program_name, int argc, char **const argv)
 Constructor. More...
 
 ~SpiderParameter () override=default
 Destructor. More...
 
int Exec () override
 Execute parameter parsing. More...
 
- Public Member Functions inherited from Parameter
 Parameter (const std::string &program_name, int argc, char **const argv, int debug_level=0)
 Constructor. More...
 
 Parameter (const Parameter &other)
 Copy Constructor. More...
 
virtual ~Parameter ()
 Destructor. More...
 
void load_xml_configuration_file (const std::string &filename)
 Loads an XML configuration file. More...
 
void write_xml_configuration_file (const std::string &filename)
 Write an XML configuration file with the parameters actually stored. More...
 
template<typename G >
void getOption (const std::string &name, G &variable) const
 Returns the value of an option. More...
 
template<typename G >
void getOption (const char *name, G &variable) const
 Returns the value of an option. More...
 
template<typename G >
getOption (const std::string &name) const
 Returns the value of an option. More...
 
template<typename G >
getOption (const char *name) const
 Returns the value of an option. More...
 
template<typename G >
getOption (const enum enum_option name) const
 Returns the value of an option. More...
 
template<typename G >
void setOption (const std::string &name, const G value)
 Sets the value of an option. More...
 
template<typename G >
void setOption (const char *name, const G value)
 Sets the value of an option. More...
 
template<typename G >
void setOption (const enum enum_option name, const G value)
 Sets the value of an option. More...
 
bool isOption (const std::string &name) const
 Tests if an option has been stored. More...
 
bool isOption (const char *name) const
 Tests if an option has been stored. More...
 
bool isOption (const enum enum_option name) const
 Tests if an option has been stored. More...
 
bool removeOption (const enum enum_option name)
 Remove an option. More...
 
bool removeOption (const char *name)
 Remove an option. More...
 
bool removeOption (const std::string &name)
 Remove an option. More...
 
int get_class_debug_level (const std::string &class_name, int debug_level=-1) const
 Return the debug level for a specific class. More...
 
int GetFunctionDebugLevel (const std::string &class_name, const std::string &function_name) const
 Return the debug_level of a function. More...
 
void print (std::ostream &os) const
 
void add_debug_class (const std::string &class_name)
 Add a class to be debugged. More...
 
void PrintUsage (std::ostream &os) const
 Print the usage of this tool = PrintHeader() + PrintHelp() More...
 
std::string PrintVersion () const
 This function prints the version of the tool. More...
 
virtual void PrintFullHeader (std::ostream &os) const
 This function prints the header of the tool = PrintProgramName() + PrintVersion() More...
 
void PrintBugReport (std::ostream &os) const
 Print the bug report request. More...
 
Parameters_FileFormat GetFileFormat (const std::filesystem::path &file, bool check_cml_root_node=false) const
 Return the file format given the file name or the extension. More...
 
template<typename G >
GetParameter (const std::string &name) const
 Returns the value of a parameter. More...
 
bool IsParameter (const std::string &name) const
 Return if a parameter has been set. More...
 
const std::vector< std::string > CGetArgv () const
 Return argv. More...
 
template<>
CustomSet< std::string > getOption (const enum enum_option name) const
 
template<>
std::list< std::string > getOption (const enum enum_option name) const
 
template<>
std::vector< std::string > getOption (const enum enum_option name) const
 
template<>
Parameters_FileFormat getOption (const enum enum_option name) const
 

Private Member Functions

void CheckParameters () override
 Check the compatibility among the different parameters and compute implicated parameters. More...
 
void PrintHelp (std::ostream &os) const override
 Print the usage of this tool. More...
 
void PrintProgramName (std::ostream &os) const override
 Print the name of the program to be included in the header. More...
 
void SetDefaults () override
 Sets the default values for the spider tool. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Parameter
void load_xml_configuration_file_rec (const xml_element *node)
 Loads an XML configuration file (recursive method) More...
 
bool ManageDefaultOptions (int next_option, char *optarg_param, bool &exit_success)
 Manage default options (common to all tools) More...
 
void PrintGeneralOptionsUsage (std::ostream &os) const
 Print the usage of the general common options. More...
 
void PrintOutputOptionsUsage (std::ostream &os) const
 Print the usage of the output common options. More...
 
void SetCommonDefaults ()
 Sets the default values common to all tools. More...
 
- Protected Attributes inherited from Parameter
int argc
 The number of input paramters. More...
 
char **const argv
 The input parameters;. More...
 
OptionMap Options
 Map between the name of the option and the related string-form value. More...
 
CustomMap< std::string, std::string > panda_parameters
 Map between the name of a parameter and the related string-form value. More...
 
std::map< enum enum_option, std::string > enum_options
 Map between an enum option and the related string-form value. More...
 
std::map< enum enum_option, std::string > option_name
 Name of the enum options. More...
 
CustomUnorderedSet< std::string > debug_classes
 Classes to be debugged. More...
 
int debug_level
 debug level More...
 

Detailed Description

Superclass include.

STD include utility include

Definition at line 55 of file SpiderParameter.hpp.

Constructor & Destructor Documentation

◆ SpiderParameter()

SpiderParameter::SpiderParameter ( const std::string &  program_name,
int  argc,
char **const  argv 
)

Constructor.

Parameters
program_nameis the name of the executable
argcis the number of arguments
argvis the array of arguments passed to program.

Definition at line 148 of file SpiderParameter.cpp.

References SetDefaults().

Here is the call graph for this function:

◆ ~SpiderParameter()

SpiderParameter::~SpiderParameter ( )
overridedefault

Destructor.

Member Function Documentation

◆ CheckParameters()

void SpiderParameter::CheckParameters ( )
overrideprivatevirtual

Check the compatibility among the different parameters and compute implicated parameters.

Implements Parameter.

Definition at line 323 of file SpiderParameter.cpp.

References Parameter::CheckParameters(), Parameter::debug_level, DEBUG_LEVEL_VERY_PEDANTIC, FF_CSV, FF_TEX, FF_TGFF, FF_UNKNOWN, FF_VERILOG, FF_VHDL, FF_XML, FF_XML_EXPERIMENTAL_SETUP, FF_XML_SKIP_ROW, FF_XML_SYM_SIM, FF_XML_TEX_TABLE, FF_XML_WGT_GM, FF_XML_WGT_SYM, Parameter::GetFileFormat(), Parameter::getOption(), GetPath(), INDENT_DBG_MEX, Parameter::isOption(), Parameter::setOption(), STR, STR_CST_string_separator, and THROW_ERROR.

Referenced by Exec().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Exec()

int SpiderParameter::Exec ( )
overridevirtual

◆ PrintHelp()

void SpiderParameter::PrintHelp ( std::ostream &  os) const
overrideprivatevirtual

Print the usage of this tool.

Parameters
osis the stream where the message has to be printed

Implements Parameter.

Definition at line 72 of file SpiderParameter.cpp.

References Parameter::PrintGeneralOptionsUsage(), and Parameter::PrintOutputOptionsUsage().

Here is the call graph for this function:

◆ PrintProgramName()

void SpiderParameter::PrintProgramName ( std::ostream &  os) const
overrideprivatevirtual

Print the name of the program to be included in the header.

Parameters
osis the stream on which the program name has to be printed

Implements Parameter.

Definition at line 134 of file SpiderParameter.cpp.

◆ SetDefaults()

void SpiderParameter::SetDefaults ( )
overrideprivatevirtual

Sets the default values for the spider tool.

Debugging level

Output level

Implements Parameter.

Definition at line 294 of file SpiderParameter.cpp.

References DEBUG_LEVEL_MINIMUM, DEBUG_LEVEL_NONE, GetPath(), INFINITE_LONG_DOUBLE, NUM_CST_surviving_benchmarks, OUTPUT_LEVEL_MINIMUM, OUTPUT_LEVEL_NONE, and Parameter::setOption().

Referenced by SpiderParameter().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following files:

Generated on Mon Feb 12 2024 13:04:03 for PandA-2024.02 by doxygen 1.8.13