Wouldn't that be possible with doxygen?