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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.