I am using THtml to generate documents of my classes.
Before ROOT v5.19/02, Begin_Html - End_Html tags have been working.
However, after updating to v5.19/04, HTML lines are directly shown in generated documents.
I tried v5.20/00 and SVN head version, but the problem is not fixed.
Generated documents on ROOT web pages do not have this problem, so maybe I am doing something wrong.
I attached a set of files to reproduce the problem.
Generated HTML document looks like following.
Location: (UNKNOWN PRODUCT) >> (UNKNOWN) >> MyData
Quick Links: ROOT Homepage Class Index Class Hierarchy
Search documentation...________
Search
Source: header file source file viewCVS header viewCVS source
Sections: class description function members data members class charts
class MyData: public TObject
Begin_Html <!--
-->
<ul>
<li> test
</ul>
<!--
--> End_Html
Function Members (Methods)
public:
MyData()
MyData(const MyData&)
.
.
.
I found that it works when I add “html.SetInputDir(gSystem->ExpandPathName(”$ROOTSYS/include:."));" “before html->MakeAll(kFALSE);”.
What I understand is,
If I don’t call “html.SetInputDir(gSystem->ExpandPathName(”$ROOTSYS/include:."));", a loop to add classes in THtml::CreateListOfClasses are continued for ROOT classes, because .h files are not found. When it happens, THtml::GetClass(“TDocHtmlDirective”) returns 0. It results that TDocParser::IsDirective always returns 0. Then no Begin_… work.
This is not the case for v5.19/02.
One disadvantage for me to call “html.SetInputDir(gSystem->ExpandPathName(”$ROOTSYS/include:."));" is that documents of all the ROOT classes are generated.
In generated documents for ROOT classes, links to source code pages are missing, if I don’t add source code directory by THtml::SetInputDir.
If possible, I want to know how to generate documents of only my classes.
It has been possible until v5.19/02.
as you probably have seen I have changed a few algorithms in THtml - and I believe you have found a bug in it. Thanks for the report! I will fix it today or tomorrow; I’ll let you know when it’s done.