Go to the documentation of this file.
34 #ifndef TTA_COST_DATABASE_HH
35 #define TTA_COST_DATABASE_HH
43 #include <boost/regex.hpp>
72 void buildBuses(
const std::string& busEstimatorPluginName);
73 void buildSockets(
const std::string& socketEstimatorPluginName);
90 boost::smatch
getValues(
const std::string& text,
const std::string& regex);
void buildSockets(const std::string &socketEstimatorPluginName)
std::vector< MatchType * > MatchTypeTable
Table of types of match.
const HDB::HDBManager & hdb_
HDB used for creating cost database.
SearchStrategy * searchStrategy_
Search strategy used for queries.
boost::smatch getValues(const std::string &text, const std::string ®ex)
Finds string matches using regular expressions.
void buildRegisterFiles(const std::string &rfEstimatorPluginName)
#define IGNORE_CLANG_WARNING(X)
std::vector< CostDBEntry * > EntryTable
Table of database entries.
CostDatabaseRegistry * registry_
Registry of CostDatabases.
void buildDefaultCostDatabase()
std::map< const EntryKeyProperty *, CostDBTypes::MatchTypeTable > MatchTypeMap
Search type for each entry type.
CostDatabase & operator=(const CostDatabase &)
Assignment not allowed.
bool busesBuilt_
Flag to note is buses built.
std::pair< const EntryKeyProperty *, CostDBTypes::MatchTypeTable > MatchTypeMapType
Value type for map of search types.
CostDBTypes::EntryTable search(const CostDBEntryKey &searchKey, const CostDBTypes::MatchTypeTable &match) const
CostDatabase(const HDB::HDBManager &hdb)
CostDatabase must be created with instance() method.
void buildFunctionUnits(const std::string &fuEstimatorPluginName)
bool registerFilesBuilt_
Flag to note is register files built.
EntryMap entries_
Database entries.
bool socketsBuilt_
Flag to note is sockets built.
bool functionUnitsBuilt_
Flag to note is function units built.
bool isRegisterFilesBuilt()
void setSearchStrategy(SearchStrategy *strategy)
void insertEntry(CostDBEntry *entry)
void buildBuses(const std::string &busEstimatorPluginName)
std::map< const EntryKeyProperty *, CostDBTypes::EntryTable > EntryMap
Map of database entries according to entry type.
static CostDatabase * instance_
Unique instance of the class.
bool isFunctionUnitsBuilt()
static CostDatabase & instance(const HDB::HDBManager &hdb)