PandA-2024.02
|
#include <NanoXploreWrapper.hpp>
Public Member Functions | |
NanoXploreWrapper (const ParameterConstRef &Param, const std::string &tool_exec, const generic_deviceRef &device, const std::string &output_dir, const std::string &default_output_dir) | |
Constructor. More... | |
~NanoXploreWrapper () override | |
Destructor. More... | |
void | generate_synthesis_script (const DesignParametersRef &dp, const std::string &file_name) override |
Creates the proper configuration script. More... | |
std::string | toString (const xml_script_node_tRef node, const DesignParametersRef dp) const override |
Returns the string-based representation of the XML element. More... | |
std::string | getStringValue (const xml_script_node_tRef node, const DesignParametersRef &dp) const override |
Returns the string-based representation of the XML element. More... | |
std::string | get_command_line (const DesignParametersRef &dp) const override=0 |
Returns the proper command line. More... | |
Public Member Functions inherited from SynthesisTool | |
SynthesisTool (const ParameterConstRef &Param, std::string tool_exec, const generic_deviceRef &device, const std::string &_flow_name, std::string default_output_dir) | |
Constructor. More... | |
virtual | ~SynthesisTool () |
Destructor. More... | |
virtual void | CheckExecution () |
Check if the tool can be really executed; i.e., it has been properly configured. More... | |
virtual void | EvaluateVariables (const DesignParametersRef dp) |
Evaluates the design variables. More... | |
std::string | get_output_directory () const |
Returns the path of the output directory. More... | |
std::string | generate_bare_script (const std::vector< xml_script_node_tRef > &nodes, const DesignParametersRef &dp) |
xml_set_variable_tRef | get_reserved_parameter (const std::string &name) |
Gets a reserved (tool) parameter by name. More... | |
void | replace_parameters (const DesignParametersRef &dp, std::string &script) const |
Replaces occurrences of parameters inside a script. More... | |
void | xload_scripts (const xml_element *child) |
Actual parsing of parameters and script nodes. More... | |
void | xload (const xml_element *node, const std::string &tool_config) |
Method parsing the configuration file directly from an XML node. More... | |
xml_nodeRef | xwrite () const |
Method writing the configuration file. More... | |
bool | has_scripts () const |
Checks if there is a configuration script loaded. More... | |
virtual std::string | get_tool_exec () const |
Returns the name of the tool executable. More... | |
Additional Inherited Members | |
Public Types inherited from SynthesisTool | |
using | type_t = enum { UNKNOWN=0, XST, NGDBUILD, MAP, PAR, TRCE, VIVADO_FLOW, QUARTUS_13_FLOW, QUARTUS_13_SETUP, QUARTUS_13_STA, QUARTUS_SETUP, QUARTUS_FLOW, QUARTUS_POW, QUARTUS_STA, LATTICE_FLOW, NXPYTHON_FLOW, BASH_FLOW } |
supported synthesis tools More... | |
Static Public Member Functions inherited from SynthesisTool | |
static SynthesisToolRef | create_synthesis_tool (type_t type, const ParameterConstRef &Param, const std::string &output_dir, const generic_deviceRef &device) |
Factory method. More... | |
Protected Member Functions inherited from SynthesisTool | |
void | create_output_directory (const std::string &sub_dir) |
Creates the directory to store the output files. More... | |
virtual void | init_reserved_vars () |
Initializes the reserved variables. More... | |
Protected Attributes inherited from SynthesisTool | |
const generic_deviceRef | device |
class containing information about the target device More... | |
const ParameterConstRef | Param |
class containing all the parameters More... | |
int | debug_level |
debug level of the class More... | |
unsigned int | output_level |
verbosity level of the class More... | |
ToolManagerRef | tool |
utility class to manage the executable More... | |
const std::string | tool_exec |
name of the tool executable More... | |
std::string | output_dir |
the output directory More... | |
std::string | script_name |
name of the script More... | |
std::map< unsigned int, std::string > | script_map |
map between the identifier of the script and the corresponding stream More... | |
std::vector< xml_parameter_tRef > | xml_tool_options |
std::vector< xml_script_node_tRef > | xml_script_nodes |
std::vector< xml_set_variable_tRef > | xml_reserved_vars |
Definition at line 51 of file NanoXploreWrapper.hpp.
NanoXploreWrapper::NanoXploreWrapper | ( | const ParameterConstRef & | Param, |
const std::string & | tool_exec, | ||
const generic_deviceRef & | device, | ||
const std::string & | output_dir, | ||
const std::string & | default_output_dir | ||
) |
Constructor.
Header include.
Param | is the set of parameters |
tool_exec | is the name of the executable |
output_dir | is the directory where to save all the results |
default_output_dir | is the default output directory |
Definition at line 56 of file NanoXploreWrapper.cpp.
References ~NanoXploreWrapper().
|
overridedefault |
|
overridevirtual |
Creates the proper configuration script.
replace some of the escape sequences
Implements SynthesisTool.
Definition at line 65 of file NanoXploreWrapper.cpp.
References DesignParameters::assign(), SynthesisTool::generate_bare_script(), getStringValue(), remove_escaped(), SynthesisTool::replace_parameters(), SynthesisTool::script_name, SynthesisTool::xml_reserved_vars, and SynthesisTool::xml_script_nodes.
|
overridepure virtual |
|
overridevirtual |
Returns the string-based representation of the XML element.
this point should never be reached
Implements SynthesisTool.
Definition at line 97 of file NanoXploreWrapper.cpp.
References xml_set_variable_t::multiValues, result, xml_set_variable_t::singleValue, STR, THROW_ERROR, and toString().
Referenced by generate_synthesis_script(), and toString().
|
overridevirtual |
Returns the string-based representation of the XML element.
this point should never be reached
Implements SynthesisTool.
Definition at line 143 of file NanoXploreWrapper.cpp.
References xml_ite_block_t::condition, xml_parameter_t::curlyBrackets, xml_ite_block_t::elseNodes, xml_script_node_t::evaluate_condition(), getStringValue(), xml_parameter_t::multiValues, xml_set_variable_t::name, xml_parameter_t::name, xml_command_t::name, xml_shell_t::name, xml_command_t::output, xml_shell_t::output, xml_command_t::parameters, xml_shell_t::parameters, result, xml_parameter_t::separator, sh, xml_parameter_t::singleValue, STR, xml_ite_block_t::thenNodes, THROW_ERROR, xml_set_entry_t::value, xml_command_t::value, and xml_shell_t::value.
Referenced by nxpython_flow_wrapper::get_command_line(), and getStringValue().