diff --git a/Makefile.am b/Makefile.am index 6edde42d..7cdd80df 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,5 +46,6 @@ apidox: echo "HTML_STYLESHEET = doc/common/doxygen.css" >> taglib.doxyfile ; \ echo "FILE_PATTERNS = *.h" >> taglib.doxyfile ; \ echo "PREDEFINED = DO_NOT_DOCUMENT" >> taglib.doxyfile ; \ + echo "PREDEFINED = DOXYGEN" >> taglib.doxyfile ; \ echo "EXTRACT_ALL = YES" >> taglib.doxyfile ; \ doxygen taglib.doxyfile diff --git a/ogg/vorbis/vorbisfile.h b/ogg/vorbis/vorbisfile.h index 8cbcb449..cc1e9f9c 100644 --- a/ogg/vorbis/vorbisfile.h +++ b/ogg/vorbis/vorbisfile.h @@ -29,6 +29,17 @@ namespace TagLib { +/* + * This is just to make this appear to be in the Ogg namespace in the + * documentation. The typedef below will make this work with the current code. + * In the next BIC version of TagLib this will be really moved into the Ogg + * namespace. + */ + +#ifdef DOXYGEN + namespace Ogg { +#endif + //! A namespace containing classes for Vorbis metadata namespace Vorbis { @@ -84,6 +95,19 @@ namespace TagLib { FilePrivate *d; }; } + +/* + * To keep compatibility with the current version put Vorbis in the Ogg namespace + * only in the docs and provide a typedef to make it work. In the next BIC + * version this will be removed and it will only exist in the Ogg namespace. + */ + +#ifdef DOXYGEN + } +#else + namespace Ogg { namespace Vorbis { typedef TagLib::Vorbis::File File; } } +#endif + } #endif diff --git a/ogg/vorbis/vorbisproperties.h b/ogg/vorbis/vorbisproperties.h index 9ada34b8..01dffed9 100644 --- a/ogg/vorbis/vorbisproperties.h +++ b/ogg/vorbis/vorbisproperties.h @@ -26,6 +26,17 @@ namespace TagLib { +/* + * This is just to make this appear to be in the Ogg namespace in the + * documentation. The typedef below will make this work with the current code. + * In the next BIC version of TagLib this will be really moved into the Ogg + * namespace. + */ + +#ifdef DOXYGEN + namespace Ogg { +#endif + namespace Vorbis { class File; @@ -91,6 +102,19 @@ namespace TagLib { PropertiesPrivate *d; }; } + +/* + * To keep compatibility with the current version put Vorbis in the Ogg namespace + * only in the docs and provide a typedef to make it work. In the next BIC + * version this will be removed and it will only exist in the Ogg namespace. + */ + +#ifdef DOXYGEN + } +#else + namespace Ogg { namespace Vorbis { typedef TagLib::AudioProperties AudioProperties; } } +#endif + } #endif