Simplify the names of API & source file
refine the implement to be c version