Macroized Functions
Duane Ellis <[email protected]>
| Newsgroups | gmane.text.doxygen.devel |
|---|---|
| Message-ID | <OF0639D376.94D67CD3-ON85257099.005B4E53-85257099.005C7299@franklin.com> |
We are using doxygen to document some C code for a bios.
Hundreds of functions are defined via macros. For example:
/** Set the platform RTC Clock to specified time (TZ=GMT)
* \param p_date - Pointer to the date
* \return TRUE success, FALSE error (platform lacks RTC)
*/
TRAPFUNC( BOOL, biosRtcSetGMT, ( RTC_DATE *p_data ) );
The problem is the "TRAPFUNC" macro. The "trapfunc" macro creates multiple
instances of the function name - addorned with attributes and does ohter
things.
(the same header file is compiled in multiple ways) {It simplifies many
many things
We really don't want to change that.}
I've tried:
#ifdef DOXYGEN
#define TRAPCALL( X, Y, Z ) X Y Z
#endif
but that does not help, doxygen does not expand #defines.
Doing #ifdef DOXYGEN blocks around hundreds of API function is *NOT* a
good idea.
Any suggestions?
-Duane.
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl