45 #ifndef _LIBRARY_MANAGER_HPP 46 #define _LIBRARY_MANAGER_HPP 49 #include <boost/lexical_cast.hpp> 85 attribute(
const std::string& _value_type, std::string _content);
87 explicit attribute(
const std::vector<attributeRef>& _content);
100 return boost::lexical_cast<G>(
content);
108 static void xload(
const xml_element* EnodeC, std::vector<std::string>& ordered_attributes,
109 std::map<std::string, attributeRef>& attributes);
150 std::map<unsigned int, std::string>
info;
158 void set_default_attributes();
181 bool is_virtual()
const;
186 void set_dont_use(
const std::string& name);
191 void remove_dont_use(
const std::string& name);
198 size_t get_dont_use_num()
const;
200 void set_info(
unsigned int type,
const std::string& information);
202 bool is_info(
unsigned int type)
const;
210 std::string get_library_name()
const;
216 bool is_fu(
const std::string& name)
const;
220 void remove_fu(
const std::string& name);
222 size_t get_gate_count()
const;
std::string get_value_type_str() const
unsigned int get_value_type() const
const std::vector< attributeRef > & get_content_list() const
std::map< std::string, attributeRef > attributes
attributes of the library
const fu_map_type & get_library_fu() const
Return the list of the resources contained into the given library.
std::vector< attributeRef > content_list
bool is_std
flag to check if the library is standard (i.e., provided in input) or virtual
Definition of hash function for EdgeDescriptor.
std::string name
string identifier of the library
fu_map_type fu_map
data-structure to identify the units that are contained into the library
CONSTREF_FORWARD_DECL(Parameter)
RefCount type definition of the class containing all the parameters.
void xwrite(xml_element *xml_node, const std::string &name)
redefinition of set to manage ordered/unordered structures
enum { XML, } info_t
available information for the library
CustomOrderedSet< std::string > dont_use
Template definition of refcount.
std::map< std::string, technology_nodeRef > fu_map_type
typedef for the identification of the functional units contained into the library ...
REF_FORWARD_DECL(library_manager)
RefCount type definition of the library_manager class structure.
This class manages the specific library structure.
void add(int accelnum, int startidx, int endidx)
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
std::map< unsigned int, std::string > info
files that provide information about the library
std::string get_content_str() const
static void xload(const xml_element *EnodeC, std::vector< std::string > &ordered_attributes, std::map< std::string, attributeRef > &attributes)
attribute(const value_t _value_type, std::string _content)
std::vector< std::string > ordered_attributes
void update(int b[SIZE], int bucket[BUCKETSIZE], int a[SIZE], int exp)
Abstract pure class for the technology structure.
const ParameterConstRef Param
class containing all the parameters
enum { FLOAT64=0, BOOLEAN, INT32, STRING } value_t