Parse C++ header files using ply.lex to generate navigable class tree representing the class structure. CppHeaderParser.py has the advantage of being a pure python C++ header parser. Grap a copy of ply at http://www.dabeaz.com/ply/
WOW, pretty awsome package. But somehow typedefs inside classes are handled as lists and only their names are stored. So reconstructing thier types (like when resolving alias) does not work.
Cppheaderparser works fine.