Find function relations use clang

I am new to 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 examples or hints are
appreciated Thanks.
Hao Jiang