Find function relations use clang

I want use clang to find all the function definitions and call relation between functions in source code of “C” language.
Right now I can use PrintFunctionNames example to get all the function names. Which libs(FunctionDecl? Functionphototype?) should I use to get function parameters and return type?
Should I use ASTVistor class to traverse each function body to get all the function calls or there are other good solutions? Any hint is appreciated Thanks.
Hao Jiang