Added proper documentation for doxygen