[GRASS5] Doxygen

Hi developers,

This is a followup on previous mail on doxygenizing the sources, dated 16-05-2004.

While working on "doxygen html output" for the sources I've encountered a problem. I've begun to extract the number of structs, unions and
functions. So far I've come up with 626 (nested) structs and unions in the main source tree (ie /$grass/src/) of 5.3.0 cvs. I'm still working on the functions. Another statistic would be that there are 5491 pages (== source files and probably more) with 'C code', as scripts are not included.
In 137 cases (20% of total) a struct or union (at least the name) is declared more than once, up till 20 times for some. After short reviewing I think that most are the same, in name and in programming aspects. Main reasons are no central declaration in a (lib) header file, copies of local header files. I'm not programmer enough yet to be able to assess the impact on changing this, if wanted/needed at all.

In an example, 'struct shape_tree_node' is declared in 5 files:

libes/vect32_64/shapelib-1.2.8/shapefil.h
mapdev/v.in.shape/shapefil.h
mapdev/v.out.shape/shapefil.h
sites/s.in.dbf/shapefil.h
sites/s.in.shape/cmd/shapefil.h

With doxygen I can link every mention of 'struct shape_tree_node' to a description page of this struct. I cannot however, point to every source file, ie only 'mapdev/vect32_64/shapelib-1.2.8/shapefile.h' could for instance be the only one mentioned.

This might not be a good example as most vector stuff is revised in 5.7.0, but I hope it explains, still 136 to go if not relevant anymore.

If anybody is interested I can send them my preliminary report on this, and will proceed with the functions, allthough I suspect there will be no problems with them.

In a couple of weeks I should be able to come up with a new script that will put "doxygen html output" in a directory stucture, which reflects the $grass/src structure, and provide a central index of structs, unions and functions in alphabetical order.

Well everybody keep up the good work, still a lot to be done.

Greetings Sjors