Thread: [Doxygen-users] Match cpp and h file
Brought to you by:
dimitri
From: Fabian C. <Cen...@in...> - 2016-09-30 15:03:22
|
Hi I'm having a problem I don't understand. In a project with several cpp and h files I have many classes that are fully documented. There's also a cpp file with just global functions and a corresponding h file. I have the full documentation for function parameters and return type in the h file, in the cpp file is only a description. Somehow doxygen (Win32 1.8.12) sees both parts but can't match the functions up. IBHelpers.cpp:65: warning: parameters of member GetIconIndex are not (all) documented IBHelpers.cpp:65: warning: return type of member GetIconIndex is not documented However in the generated documentation doxygen declares that the same function is in both files. GetIconIndex() : IBHelpers.h , IBHelpers.cpp Why does doxygen see the global function in the h and cpp file but can't combine the documentation for it? I don't have any problem doing the same thing for classes and methods. Thanks bye Fabi |
From: Dimitri v. H. <do...@gm...> - 2016-10-01 07:50:22
|
> On 30 Sep 2016, at 16:50 , Fabian Cenedese <Cen...@in...> wrote: > > Hi > > I'm having a problem I don't understand. In a project with several > cpp and h files I have many classes that are fully documented. > There's also a cpp file with just global functions and a corresponding > h file. I have the full documentation for function parameters and > return type in the h file, in the cpp file is only a description. Somehow > doxygen (Win32 1.8.12) sees both parts but can't match the functions > up. > > IBHelpers.cpp:65: warning: parameters of member GetIconIndex are not (all) documented > IBHelpers.cpp:65: warning: return type of member GetIconIndex is not documented > > However in the generated documentation doxygen declares that the > same function is in both files. > > GetIconIndex() : IBHelpers.h , IBHelpers.cpp > > Why does doxygen see the global function in the h and cpp file but > can't combine the documentation for it? I don't have any problem > doing the same thing for classes and methods. This typically means that doxygen doesn't find a match between the parameters of the declaration and definition. So it considers them to be different functions (which could also happen in case of function overloading). More details are needed to further analyse why this happens. Regards, Dimitri |
From: Fabian C. <Cen...@in...> - 2016-10-03 06:45:43
|
>> I'm having a problem I don't understand. In a project with several >> cpp and h files I have many classes that are fully documented. >> There's also a cpp file with just global functions and a corresponding >> h file. I have the full documentation for function parameters and >> return type in the h file, in the cpp file is only a description. Somehow >> doxygen (Win32 1.8.12) sees both parts but can't match the functions >> up. >> >> IBHelpers.cpp:65: warning: parameters of member GetIconIndex are not (all) documented >> IBHelpers.cpp:65: warning: return type of member GetIconIndex is not documented >> >> However in the generated documentation doxygen declares that the >> same function is in both files. >> >> GetIconIndex() : IBHelpers.h , IBHelpers.cpp >> >> Why does doxygen see the global function in the h and cpp file but >> can't combine the documentation for it? I don't have any problem >> doing the same thing for classes and methods. > >This typically means that doxygen doesn't find a match between the parameters >of the declaration and definition. So it considers them to be different functions >(which could also happen in case of function overloading). >More details are needed to further analyse why this happens. Thanks for the info. I copied the parameters from one file to the other but that didn't help. I should also mention that I get this warning for every function in these files, not just one. Here two examples: --- .h --- /*! \file ... */ /*! \brief Get the index of the notebook page icon. \param apBookCtrl: Parent to get image list from. \return Index of image list icon for parent. */ int GetIconIndex(const wxBookCtrlBase* apBookCtrl); /*! \brief Check if program is registered for automatic startup. \param pszAppName: Name of key to check in registry. \param pszAppPath: Path of application that should be in the key. \return True if application is correctly registered for startup. */ BOOL IsProgramRegisteredForStartup(PCWSTR pszAppName, PCWSTR pszAppPath); --- .cpp --- /*! \file ... */ /*! Get index of image list icon for the notebook control page. */ int GetIconIndex(const wxBookCtrlBase* apBookCtrl) /*! Check if program is registered for automatic startup. */ BOOL IsProgramRegisteredForStartup(PCWSTR pszAppName, PCWSTR pszAppPath) So I get the warning for wx-types as well as "standard" MSVC types. That's why I don't think it's something with the functions declaration/documentation but rather something either concerning the files as a whole or doxygen settings. I only got the warnings at all after setting SHOW_FILES to YES. I'd have imagined that doxygen would parse these files and print warnings even if the files are not quoted in the documentation. Thanks bye Fabi |