| #ifndef PARSE_SWITCHBLOCKS_H |
| #define PARSE_SWITCHBLOCKS_H |
| |
| #include <vector> |
| #include "pugixml.hpp" |
| #include "pugixml_util.hpp" |
| #include "expr_eval.h" |
| |
| /**** Function Declarations ****/ |
| /* Loads permutation funcs specified under Node into t_switchblock_inf */ |
| void read_sb_switchfuncs(pugi::xml_node Node, t_switchblock_inf* sb, const pugiutil::loc_data& loc_data); |
| |
| /* Reads-in the wire connections specified for the switchblock in the xml arch file */ |
| void read_sb_wireconns(const t_arch_switch_inf* switches, int num_switches, pugi::xml_node Node, t_switchblock_inf* sb, const pugiutil::loc_data& loc_data); |
| |
| /* checks for correctness of switch block read-in from the XML architecture file */ |
| void check_switchblock(const t_switchblock_inf* sb, const t_arch* arch); |
| |
| /* returns integer result according to the specified formula and data */ |
| int get_sb_formula_raw_result(const char* formula, const t_formula_data& mydata); |
| |
| #endif /* PARSE_SWITCHBLOCKS_H */ |