50 cout <<
"* Bibliography *" << endl << endl;
54 cout <<
"=== Bibliography ===" << endl << endl;
65 if (!paramsDoc.empty())
66 for (BOOST_AUTO(it, paramsDoc.begin()); it != paramsDoc.end(); ++it)
68 cout <<
"`" << it->name <<
"` (default: `" << it->defaultValue <<
"`";
69 if (!it->minValue.empty())
70 cout <<
", min: `" << it->minValue <<
"`";
71 if (!it->maxValue.empty())
72 cout <<
", max: `" << it->maxValue <<
"`";
75 cout <<
" . " << it->doc << endl;
79 cout <<
" . no parameters" << endl;
86 cout <<
"=== " <<
name <<
" ===\n" << endl;
88 cout <<
"* " <<
name <<
" *\n" << endl;
89 for (BOOST_AUTO(it, registrar.begin()); it != registrar.end(); ++it)
92 cout <<
"==== " << it->first <<
" ====\n" << endl;
94 cout << it->first << endl;
98 dumpWiki(it->second->availableParameters());
100 cout << it->second->availableParameters();
107 #define DUMP_REGISTRAR_CONTENT(pm, name, bib) \
108 dumpRegistrar(pm, pm.REG(name), # name, bib);
133 nameList.push_back(
name);
134 for (BOOST_AUTO(it, registrar.begin()); it != registrar.end(); ++it)
137 nameList.push_back(it->first);
141 #define DUMP_REGISTRAR_SUMMARY(pm, name, nameList) \
142 dumpRegistrarSummary(pm, pm.REG(name), # name, nameList);
146 typedef vector<ModuleNameList> ModulesNames;
148 ModulesNames modulesNames;
149 modulesNames.resize(7);
160 ModulesNames strippedModulesNames;
161 strippedModulesNames.resize(modulesNames.size());
162 unsigned maxCount(0);
163 for (
size_t i(0); i < modulesNames.size(); ++i)
166 for (BOOST_AUTO(jt, modulesNames[i].begin()); jt != modulesNames[i].end(); ++jt)
168 const string&
name(*jt);
169 if (jt == modulesNames[i].begin())
171 strippedModulesNames[i].push_back(
name);
176 string strippedName(
name.substr(0,
name.length() - (modulesNames[i][0].length())));
177 if ((strippedName !=
"Null") && (strippedName !=
"Identity"))
179 strippedModulesNames[i].push_back(strippedName);
184 maxCount = max(count, maxCount);
188 cout <<
"\\begin{tabularx}{\\textwidth}{";
189 for (
size_t i(0); i<strippedModulesNames.size(); ++i)
191 cout <<
"}\n\\toprule\n";
192 for (
unsigned row(0); row < maxCount; ++row)
194 for (BOOST_AUTO(it, strippedModulesNames.begin()); it != strippedModulesNames.end(); ++it)
196 if (row < it->size())
198 const string&
name((*it)[row]);
201 if (it+1 != strippedModulesNames.end())
205 cout <<
"\\\\\n\\midrule\n";
210 cout <<
"\\bottomrule\n\\end{tabularx}\n";
213 int main(
int argc,
char *argv[])
219 const string cmd(argv[1]);
220 if (cmd ==
"--latexsummary")
225 else if (cmd ==
"--roswiki")
230 else if (cmd ==
"--bibtex")
237 cerr <<
"Invalid command " << cmd << endl;