Quantcast

Match cpp and h file

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Match cpp and h file

Fabian Cenedese
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


------------------------------------------------------------------------------
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Match cpp and h file

Dimitri van Heesch-2

> On 30 Sep 2016, at 16:50 , Fabian Cenedese <[hidden email]> 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


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Match cpp and h file

Fabian Cenedese

>> 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


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Doxygen-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/doxygen-users
Loading...