Plugins
html_generation.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013-2016: G-CSC, Goethe University Frankfurt
3  * Author: Martin Rupp
4  *
5  * This file is part of UG4.
6  *
7  * UG4 is free software: you can redistribute it and/or modify it under the
8  * terms of the GNU Lesser General Public License version 3 (as published by the
9  * Free Software Foundation) with the following additional attribution
10  * requirements (according to LGPL/GPL v3 §7):
11  *
12  * (1) The following notice must be displayed in the Appropriate Legal Notices
13  * of covered and combined works: "Based on UG4 (www.ug4.org/license)".
14  *
15  * (2) The following notice must be displayed at a prominent place in the
16  * terminal output of covered works: "Based on UG4 (www.ug4.org/license)".
17  *
18  * (3) The following bibliography is recommended for citation and must be
19  * preserved in all covered files:
20  * "Reiter, S., Vogel, A., Heppner, I., Rupp, M., and Wittum, G. A massively
21  * parallel geometric multigrid solver on hierarchically distributed grids.
22  * Computing and visualization in science 16, 4 (2013), 151-164"
23  * "Vogel, A., Reiter, S., Rupp, M., Nägel, A., and Wittum, G. UG4 -- a novel
24  * flexible software system for simulating pde based models on high performance
25  * computers. Computing and visualization in science 16, 4 (2013), 165-179"
26  *
27  * This program is distributed in the hope that it will be useful,
28  * but WITHOUT ANY WARRANTY; without even the implied warranty of
29  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30  * GNU Lesser General Public License for more details.
31  */
32 
33 #ifndef __UG__HTML_GENERATION_H__
34 #define __UG__HTML_GENERATION_H__
35 
36 #include <string>
37 #include "bridge/bridge.h"
38 #include "ugdocu_misc.h"
40 #include "registry/class_helper.h"
41 
42 namespace ug
43 {
44 namespace DocuGen
45 {
46 
49 
50 void WriteHeader(std::fstream &file, const std::string &title);
51 void WriteFooter(std::fstream &file);
52 void WriteUGDocuCSS(const char *dir);
53 std::string ConstructorInfoHTML(std::string classname, const bridge::ExportedConstructor &thefunc, std::string group);
54 std::string FunctionInfoHTML(const bridge::ExportedFunctionBase &thefunc, const bridge::IExportedClass *c = NULL, bool bConst = false);
55 std::string FunctionInfoHTML(const bridge::ExportedFunctionBase &thefunc, const char *group);
56 bool WriteClassUsageExact(const std::string &preamble, std::ostream &file, const char *classname, bool OutParameters);
57 void PrintClassFunctionsHMTL(std::ostream &file, const bridge::IExportedClass *c, bool bInherited);
58 
59 void WriteClassHierarchy(const char *dir, bridge::ClassHierarchy &hierarchy);
60 void WriteClassHTML(const char *dir, UGDocuClassDescription *d, bridge::ClassHierarchy &hierarchy);
61 void WriteClassIndex(const char *dir, std::vector<UGDocuClassDescription> &classesAndGroups, bool bGroup);
62 
63 //void WriteGlobalFunctions(const char *dir, const char *filename, bool sortFunction(const bridge::ExportedFunction *,const bridge::ExportedFunction *j));
64 
65 void WriteHTMLDocu(std::vector<UGDocuClassDescription> &classes, std::vector<UGDocuClassDescription> &classesAndGroups, const char *dir, bridge::ClassHierarchy &hierarchy);
66 
67 // end group apps_ugdocu
69 
70 } // namespace DocuGen
71 } // namespace ug
72 
73 #endif /* __UG__HTML_GENERATION_H__ */
Definition: ug_docu_class_description.h:50
vector< UGDocuClassDescription > classes
Definition: ugdocu.cpp:111
vector< UGDocuClassDescription > classesAndGroups
Definition: ugdocu.cpp:112
void WriteClassHierarchy(const char *dir, ClassHierarchy &hierarchy)
Definition: html_generation.cpp:371
void WriteHTMLDocu(std::vector< UGDocuClassDescription > &classes, std::vector< UGDocuClassDescription > &classesAndGroups, const char *dir, ClassHierarchy &hierarchy)
Definition: html_generation.cpp:730
string FunctionInfoHTML(const bridge::ExportedFunctionBase &thefunc, const IExportedClass *c, bool bConst)
Definition: html_generation.cpp:153
void WriteUGDocuCSS(const char *dir)
Definition: html_generation.cpp:358
void WriteClassIndex(const char *dir, std::vector< UGDocuClassDescription > &classesAndGroups, bool bGroup)
Definition: html_generation.cpp:525
void WriteClassHTML(const char *dir, UGDocuClassDescription *d, ClassHierarchy &hierarchy)
Definition: html_generation.cpp:388
bool WriteClassUsageExact(const string &preamble, ostream &file, const char *classname, bool OutParameters)
Definition: html_generation.cpp:241
void WriteFooter(fstream &file)
Definition: html_generation.cpp:116
void WriteHeader(fstream &file, const string &title)
Definition: html_generation.cpp:90
string ConstructorInfoHTML(string classname, const bridge::ExportedConstructor &thefunc, string group)
Definition: html_generation.cpp:123
void PrintClassFunctionsHMTL(ostream &file, const IExportedClass *c, bool bInherited)
Definition: html_generation.cpp:302