Revision 51bd49119cfe02f55efb19474e4c1b66be5bae00 authored by Rene Brun on 09 April 2008, 16:23:28 UTC, committed by Rene Brun on 09 April 2008, 16:23:28 UTC
such that they can be used with the latest gfortran. There is an updated version of the "cfortran" package on the CERNLIB 2005 for gcc4/gfortran by Harald Vogt / DESY Zeuthen available (in the cernlib.2005.corr.tgz file) git-svn-id: http://root.cern.ch/svn/root/trunk@23096 27541ba8-7e3a-0410-8455-c3a389f83636
1 parent 3457dd8
htmlex.C
// This file demonstrates how THtml can document sources.
// BEGIN_HTML <!--
/* -->
<p>See the <a href=http://root.cern.ch/root/doc/RootDoc.html">Users Guide</a>
chapter <a href="ftp://root.cern.ch/root/doc/chapter28.pdf">Automatic HTML Documentation</a>,
and <a href="http://root.cern.ch/root/html/THtml.html">THtml's class documentation</a>.
There's also a version of this file in HTML, i.e. the output of THtmlDemo::Convert(),
at <a href="http://root.cern.ch/root/html/examples/htmlex.C.html">
http://root.cern.ch/root/html/examples/htmlex.C.html</a></p>
<p>To see this demo script in action start up ROOT and run
<pre> root [0] .x $(ROOTSYS)/tutorials/htmlex.C+</pre>
and check the output in ./htmldoc.</p>
<p>O, and of course we can put HTML code into comments, too:</p>
<img src="http://root.cern.ch/root/images/twiki-rootlogo.jpg"/>
<p>Actually, all of this documentation is already HTML!</p>
<!-- */
// --> END_HTML
#include "THtml.h"
class THtmlDemo: public TObject {
public:
THtmlDemo(): fHtml(0)
{
printf("This class is for demonstration purposes only!\n");
}
~THtmlDemo() { if (fHtml) delete fHtml; }
// inline methods can have their documentation in front
// of the declaration. DontDoMuch is so short - where
// else would one put it?
void DontDoMuch() {}
void Convert()
{
// Create a "beautified" version of this source file.
// It will be called htmldoc/htmlex.C.html.
GetHtml()->SetSourceDir("$(ROOTSYS)/tutorials");
GetHtml()->Convert("htmlex.C", "Example of THtml", "./htmldoc/", "./");
}
void ReferenceDoc()
{
// This function documents THtmlDemo.
// It will create THtmlDemo.html and src/THtmlDemo.cxx.html
// - the beautified version of the source file
GetHtml()->SetSourceDir("$(ROOTSYS)/tutorials");
GetHtml()->SetOutputDir("./htmldoc");
GetHtml()->MakeIndex("THtmlDemo"); // create ClassIndex.html and the javascript and CSS files
GetHtml()->MakeClass("THtmlDemo"); // update the class doc
}
void MakeDocForAllClasses(Bool_t evenForROOT = kFALSE)
{
// Creates the documentation pages for all classes that have
// been loaded, and that are accessible from "./".
// If evenForROOT is set, we'll try to document ROOT's classes,
// too - you will end up with a copy of ROOT's class reference.
// The documentation will end up in the subdirectory htmldoc/.
if (evenForROOT)
GetHtml()->SetSourceDir(".:$(ROOTSYS)");
else
GetHtml()->SetSourceDir(".");
GetHtml()->SetOutputDir("./htmldoc");
GetHtml()->MakeAll();
}
void RunAll() {
// Show off a bit - do everything we can.
MakeDocForAllClasses();
ReferenceDoc();
Convert();
}
protected:
THtml* GetHtml()
{
// Return out THtml object, and create it if it doesn't exist.
if (!fHtml) fHtml = new THtml();
return fHtml;
}
private:
Int_t fVeryUselessMember; // This is a very useless member.
THtml* fHtml; // our local THtml instance.
ClassDef(THtmlDemo, 0); // A demo of THtml.
};
void htmlex() {
THtmlDemo htmldemo;
htmldemo.RunAll();
}
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...