23 string hd_msg = gemcOpt.
args[
"LOG_MSG"].args +
" Bank Map >> " ;
24 double OUT_VERBOSITY = gemcOpt.
args[
"OUT_VERBOSITY"].arg;
25 string database = gemcOpt.
args[
"BANK_DATABASE"].args;
26 string dbhost = gemcOpt.
args[
"DBHOST"].args;
28 string dbUser = gemcOpt.
args[
"DBUSER"].args;
29 string dbPswd = gemcOpt.
args[
"DBPSWD"].args;
32 map<string, MBank> banks;
34 QSqlDatabase db = QSqlDatabase::addDatabase(
"QMYSQL");
35 db.setHostName(dbhost.c_str());
36 db.setDatabaseName(database.c_str());
37 db.setUserName( dbUser.c_str() );
38 db.setPassword( dbPswd.c_str() );
43 cout << hd_msg <<
" Database not connected. Exiting." << endl;
48 for(map<string, MPHB_Factory>::iterator it=Map.begin(); it!=Map.end(); it++)
51 string dbtable = it->first;
53 string dbexecute =
"select name,id, type, activated, description from " + dbtable ;
54 q.exec(dbexecute.c_str());
59 mbank.
id.push_back(q.value(1).toInt());
60 mbank.
type.push_back(q.value(2).toInt());
61 mbank.
activated.push_back(q.value(3).toInt());
64 banks[dbtable] = mbank;
69 for(map<string, MBank>::iterator it=banks.begin(); it!=banks.end(); it++)
71 cout << hd_msg <<
" bank: <" << it->first <<
">" << endl;
72 for(
unsigned int i=0; i<it->second.name.size(); i++)
74 cout <<
" variable: " ;
76 cout << it->second.
name[i];
79 cout << it->second.id[i] ;
82 cout << (it->second.type[i] ?
"double |" :
"int |");
84 cout << (it->second.activated[i] ?
"present |" :
"not present |");
85 cout << it->second.description[i] << endl ;
91 db.removeDatabase(
"qt_sql_default_connection");
map< string, MBank > read_banks(gemc_opts gemcOpt, map< string, MPHB_Factory > Map)
Fills bank maps according to Hit Process Map.
string gemc_tostring(QString input)
vector< int > id
Output variable identifier.
vector< string > name
Variable name.
vector< string > description
Variable description.
vector< int > type
Type of variable: 0=int, 1=double.
map< string, opts > args
Options map.
vector< int > activated
Activated means this variable will be written to the output.
string TrimSpaces(string in)
Removes leading and trailing spaces.