Can't generate html documentation

Hi rooters,

I’m going crazy! The THtml seems very simple to use but somehow, I can’t make it work. I use Root 5.10 with RH9. I have my source files within several subdirectories of the same directory.

It runs but generates only links to root classes. My own classes appear nowhere! It goes through all the classes and ends with:

-skipped- 80 WindowAttributes_t
Error in : Unknown class ‘string::iterator’ !
-skipped- 4 timespec

What am I doing wrong?

Here is my macro:

makeHtmlDoc()
{
THtml html;
html.MakeAll();
}

and my .rootrc (in the same directory):

Root.Html.SourceDir: ./anl/
Root.Html.Root: root.cern.ch/root/html
Root.Html.OutputDir: testhtmldoc
Root.Html.Homepage: cyclotron.tamu.edu/
Root.Html.SearchEngine: root.cern.ch/root/Search.phtml
Root.Html.Search": google.comsearch?q=%s+site%3Aroot.cern.ch%2Froot%2Fhtml

Thanks in advance,

Thomas

Hi Thomas,

THtml needs to find your files by combining Root.Html.SourceDir: ./anl and their classes’ TClass::GetImplFileName(). If e.g. TMyClass::Class()->GetImplFileName() returns “myclass.cxx”, but myclass.cxx is in ./anl/src, then SourceDir should be set to ./anl. You can specify multiple Root.Html.SourceDir entries by separating them with “:”. All of that is for Unix-like paths - for windows use WinNT.*.Root.Html.SourceDir: ./anl;./more;./etc.

Cheers, Axel.

Thanks Axel,

It wasn t clear to me that the classes had to be loaded, I thought it only parsed the source code. I would suggest to say it explicitly in the doc (or insist more :wink: ).

I still have a problem though: some class descriptions don t appear, e.g.

class CycEventOutputModule : public CycOutputModule
{

public:

ClassDef(CycEventOutputModule, 0) // Cyclotron Event Output Module
};

works just fine. But

class CycEvent : public TObject
{

public:
ClassDef(CycEvent , 1) // Base class for all CycApp Events
};

does not. In the class index, the first one appears with its description but not the second one. Am I missing something?

I attach the headers of each class in case you need to look at something else.

Thanks in advance,

Thomas
http://www.tmaterna.com/
CycEventOutputModule.h (5.21 KB)
CycEvent.h (1.96 KB)

Hi,

Do I understand correctly that the short description “Base class for all CycApp Events” is missing in CycEvent’s entry in the ClassIndex, but the entry itself is there?

Can you point me to your ClassIndex.html? And can you send the output of CycEvent::Class()->GetTitle()?

Cheers, Axel.

Hi

CycEvent::Class()->GetTitle() is empty!

As to point you to the class index, it’s on our intranet and is not accessible from the outside but I am going to mirror the whole thing on my personal website at http://www.tmaterna.com/rootdoc/, if some page is missing, trying again a bit later, the upload is still in progress.

Cheers

Thomas
http://www.tmaterna.com/[/url]

Hi,

in your dictionary for CycEvent, there should be a lineG__tagtable_setup(G__get_linked_tagnum(&G__dictLN_CycEvent), sizeof(CycEvent), -1, 62720, "Base Class for all CycApp Events", G__setup_memvarCycEvent, G__setup_memfuncCycEvent);What does it look like for you? I tried creating the dictionary based on your attached CycEvent, and for me the comment is there…

Cheers, Axel.

My bad,

I think I have the explanation. It turns out that the library I was loading was compiled BEFORE I added the comment! I can’t re-compile it right now because somebody messed with the code and I have to investigate that first. But that’s another problem :wink:

I guess once I fix that, it should work. Thanks again for your time and sorry to bother you. The problem had nothing to do with ROOT.

Thomas